扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
yum相关知识
创新互联技术团队10余年来致力于为客户提供网站设计、成都网站制作、成都品牌网站建设、成都全网营销推广、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了上1000家网站,包括各类中小企业、企事单位、高校等机构单位。
一.什么是YUM?
我们知道,有时候用RPM安装软件包时,需要解决依赖关系。而解决依赖关系没有我们想象的那么简单,如果一个软件包的安装需要依赖许多其他的包,这时我们如果手动一个一个去寻找安装依赖的包,那是很麻烦的。Yum能够帮我们自动解决程序包的依赖关系,使我们能够从寻找安装依赖包的繁重任务中解脱出来。
二.YUM的主要配置文件
yum的主要配置文件分成两部分:
1. /etc/yum.conf
这是yum的主配置文件,文件的内容如下:
cachedir=/var/cache/yum #yum下载的RPM包的缓存目录
keepcache=0 #缓存是否保存,1保存,0不保存。
debuglevel=2 #调试级别(0-10)。
logfile=/var/log/yum.log #yum的日志文件所在的位置
exactarch=1 #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。
obsoletes=1 #是否允许更新陈旧的RPM包。
gpgcheck=1 #是否检查GPG(GNU Private Guard),一种密钥方式签名。
plugins=1 #是否允许使用插件,默认是0不允许。
installonly_limit=3 #允许保留多少个内核包。
exclude=selinux* #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。
2./etc/yum.repos.d/*.repo
这是各仓库的定义文件,我们一般配置的就是这里面的文件。在这个文件夹里面,我们可以创建以repo格式结尾的文件。以下是一个配置文件的内容:
书写格式:
[myBaseOne]:这是标识仓库用的,中括号的内容可以随意填写,但是不能与本机中其他仓库名同名。
name=” 字符串”:这是对这个仓库的详细说明,填上自己想说的内容
baseurl=url :这是指出软件包所在镜像的路径。url可以分为三种情况:
ftp服务:ftp://SERVER/PATH/TO/REPOSITORY
http服务:http://SERVER/PATH/TO/REPOSITORY
本地目录:file:///PATH/TO/REPOSTIROY (PATH前面有三个/,有一个/代表根目录)
这三个路径都必须指向repodata目录所在的父目录,repodata是软件包库的元数据放置处。我们可以挂载Centos镜像,查看其中的内容如下:
这里面就有repodata目录,所以我们在用本地镜像配置仓库路径时,只需写到挂载处即可(我的挂载处为/mnt/cdrom)
enabled={0|1} :这是指明配置的仓库是否有效,1代表有效
gpgcheck={1|0} :是否做包校验,1表示校验
gpgkey=url://path/to/keyfile :指明gpgkey的路径
三.YUM命令
yum命令可以分成以下几个部分:
1. 仓库管理:
yum repolist [all|enabled|disabled]
all:列出所有仓库
enabled:列出所有有效仓库
disabled:列出所有无效仓库
2. 缓存管理:
yum clean:清理缓存
yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
yum makecache: 缓存创建
3. 程序包查看:
yum list [all | glob_exp1] [glob_exp2] [...]
yum list {available|updates|installed|extras|obsoletes} [glob_exp1] [...]
yum grouplist [hidden] [groupwildcard] [...]
例:查看以ru开头的软件包
4. 程序包安装:
yum install package1 [package2] [...]
注:package只需要提供包名
例:安装ruby包
5. 卸载:
yum remove package1 [package2] [...]
例:卸载ruby包
6. 程序包升级:
yum update [package1] [package2] [...]
例:升级ruby包
7. 包组管理:
列出所有包组:grouplist
显示指定包组详情:groupinfo group1 [...]
安装:groupinstall group1 [group2] [...]
卸载:groupremove group1 [group2] [...]
升级:groupupdate group1 [group2] [...]
例:查看可用包组
例:安装包组
出错了,它把E-mail server当成两个包组了
四.在本地主机上用centos镜像做yum仓库
1.将镜像放入DVD驱动中,我的是虚拟机,直接加载镜像位置即可
2.放入虚拟机中的镜像在虚拟机中一般名为/dev/sr0,如图
3.创建挂载点:mkdir /mnt/cdrom
4.编辑yum配置文件:在编辑之前,需要把系统默认的/etc/yum.repos.d/CentOS-Base.repo删除或者让它不起作用(改后缀名即可)
然后使用 vim /etc/yum.repos.d/yourBase.repo编辑配置文件,名字可以自己取
在yourBase.repo填入以下内容:
5.挂载镜像:镜像只有挂载才能使用,输入以下命令
mount -o ro -t iso9660 /dev/sr0 /mnt/cdrom
因为我的已经挂载了,所以它会说已挂载
让我们使用 cd /mnt/cdrom 看看
6.测试:现在让我们来使用yum安装一个软件,比如ruby。使用yum install ruby 即可
按y或者n完成安装或取消,我这按y,出现以下结果
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流