yum源:
yum源安装软件A,A有依赖BCX,第一个yun源没有X依赖,第二个yum源有X依赖。收集齐后统一安装。如图:
配置一个yum服务器:
1.禁用防火墙(暂时不考虑):firewall-cmd --set-default-zone=trusted
2.不启用selinux:setenforce 0
3.安装vsftp:yum install vsftp -y
4.启动并开启开机启动:systemctl start vsftpd;systemctl enable vsftpd;
5.在共享目录/var/ftp中创建dvd目录。
6.把光盘挂载到dvd目录下:mount /dev/cdrom /var/ftp/dvd
7.统计包依赖关系:createrepo -v /var/ftp/ceph,会产生一个repodate目录(记录ceph目录下所有rpm的信息,递归的)。/var/ftp/dvd下默认也有一个repodata,记录的是dvd下面所有rpm的信息(本身就有的)。
在客户端上使用yum源:
1.配置客户端使用该源:在/etc/yum.repos.d/文件夹下,创建一个aa.repo文件。
[dvd]
name=dvd
baseurl=ftp://192.168.1.67/dvd #也可以使用本地文件夹:baseurl=file:///mnt
enabled=1 #1表示启用,0表示不启用。
gpgcheck=0 #是否启用数字签名验证
gpgkey= #数字签名验证情况下,使用哪个公钥验证。找个模板抄。
2.清除缓存:yum clean all
3.重新创建一个缓存:yum makecache
4.查看可用yum源:yum repolist
5.查看是否存在某个包:yum search vsftpd 或 yum list vsftpd(可查看是否安装过),他们的区别是,search是搜索包含vsftpd字符的包,而list是列出名为vsftpd的包,如果要使用匹配则为yum list vsftp\*
6.安装:yum install vsftpd -y
7.卸载:yum remove vsftpd -y
8.如果系统提醒注册,实际上是RedHat的广告插件,告诉我们红帽提供很好的yum源,但是是收费的。我们如果不想看到这个插件,可以卸载:yum list subscript*; yum remove subscript*;
9. 更新系统中所有的包:yum update -y
查看安装哪个包可以提供某个命令:
例如查看哪个包可以提供system-config-selinux:
yum whatprovides */system-config-selinux:意思是朝yum源广播,问谁能提供system-config-selinux命令的安装,"*/"是表示这个命令可以是在任何目录下。
安装软件包组(按功能安装软件包):
yum grouplist:查看有哪些软件包组。
yum grouplist virtual*:查看虚拟化功能是否安装。
yum groupinstall virtual* -y:安装虚拟化功能。
选择使用某个源:
yum list ceph --disablerepo=ceph:不使用ceph源,在其他源里搜索ceph包。
yum list ceph --disablerepo=* --enablerepo=ceph:禁用除了ceph以外的其他源。并在其中搜索ceph。
使用yum下载软件包:
yum install ceph -y --downloaddir=/xx:安装时默认是下载到缓存中,我们执行其下载到/xx中。
yum install ceph -y --downloaddir=/xx --downloadonly:只下载到/xx中,不安装。
注意:--downloaddir --downloadonly这两个选项,不能在使用本地目录做源的时候使用。
EPEL源:
rpm -ivh epel-release-7-10.noarch.rpm:安装epel源。即在/etc/yum.repos.d中生成一个epel.repo文件。
EPEL源是由fedora社区提供的,因为fedora社区是红帽赞助的,所以EPEL源相当于红帽的官方源。
几个常用国内源:
wget http://mirrors.aliyun.com/repo/Centos-7.repo:阿里源
wget http://mirrors.aliyun.com/repo/epel-7.repo:阿里源
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo:网易源