软件包管理 5-----基本知识 yum,配置文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件包管理 5-----基本知识 yum,配置文件相关的知识,希望对你有一定的参考价值。

yum (没办法老是忘 ya mu)
yum是基于rpm用Python开发的前端程序
yum是基于c/s client /server 结构实现的 就是 有客户端 有服务器
我们把存放安装包的服务器叫 yum服务器 server
在yum服务器上有很多安装包rpm , 以及这些安装包的元数据meta data

客户端要运行yum时候,需要在客户端有一个配置文件,配置文件中写清楚yum服务器的地址,
然后要安装软件的时候敲 运行一个命令yum install
yum install 文件名 就可以了
运行yum install命令时 从配置文件中找到服务器的地址 (路径)然后就把消息发到yum服务器上,接着服务器检查服务器上是否有这个包1,在meta data 中找到这个包1以及这个包1所依赖的包2或包3。然后把消息返还到客户端,存放在一个文件夹里。这个文件夹叫yum的缓存(yum cache),缓存中放的是元数据meta data。然后客户端发现要安装包1,已经包2和包3,就发信息给服务器,接着服务器把这些包的数据传给客户端。然后安装,这些包是默认安装后删除的,也可以不删,但是但是但是元数据是不删除的
当然服务器可能不止一个,原则是下载最新的
因为有两份缓存,有可能出问题,当yum服务器的地址改了,配置文件中指向的地址也会改,但是缓存中的地址还是原来的地址,这就出问题了
解决方法就是清除缓存就可以了
所有yum出问题就是两个地方
1配置文件 语法出错
2缓存文件 出错

yum的配置文件 /etc/yum.conf
技术分享图片
看看第一行是什么
技术分享图片
其实就是CPU架构和版本号,用变量写是为了省事。
keepcache =0 下载安装后的包会删除 =1 就不会删除
debuglevel=2 这个是调试 不用管
logfile=/var/log/yun.log yum方式安装的日志
exactarch=1 架构 不用管
obsoletes=1 架构 不用管
gpgcheck=1 相当于rpm -K 检查包的完整性,yum是默认要检查的 1表示拒绝安装,=0就是忽略完整性 每通过也安装
plugins=1 插件启用
installonly_limit=5 并行安装 =5代表同时安装5个包(yum不支持一台机器同时运行多个晕程序)
bugtracker_url=http:// bug 提示
distroverpkg=centos-release 其他 不用管
关机是最后一句话
技术分享图片
把你的仓库信息放在这,以一个独立文件命名为.repo后缀的文件,
放在 /etc/yum.repos.d 下
我们cd到/etc/yum.repos.d下看看
技术分享图片
这些文件可能用不到,我把它们放到别的地方
技术分享图片
然后我们创建配置文件, 一定要以.repo后缀的
技术分享图片
当然文件叫什么都行,如果把光盘做成yum源就用base为名当然随个人喜好,
为了学习我命名为cdrom.repo
关键的来了
配置文件关键就三行
第一行[base] 我要把光盘做成yum源所以写base 写别的也行但是别有空格,如[centos base] 千万别有空格
第二行 仓库路径 ,仓库可以是远程服务器,也可以是本地光盘,我用的就是本地光盘,
我们看看光盘技术分享图片
里面有rpm包的Packages 重点是元数据在repodata里
技术分享图片
这些元数据都是压缩文件,就不打开了
以后要写yum的配置文件内的路径就是repodata的父目录
技术分享图片
在我的虚拟机里也就是/run/media/root/CentOS 7 x86_64
但是有空格不太好所以我建一个短的 /mnt/cdrom
把光盘挂载上就是repodata的父目录了
技术分享图片
回过头
第二行 仓库路径 格式 支持 http:// , https://, ftp://, file://(本机路径)
baseurl=file:///mnt/cdrom
第三行
gpgcheck=0 写这个是为了不检查包的完整性,系统默认是检查完整性的,没有导入过公钥 就会默认全是不完整的包,=0 代表忽略完整性
就这三行,简单方便
技术分享图片
因为我没有用cat 看看所以出错了我又重新把“:” 加上的 ,小心谨慎,不然就等着 删库 跑路吧
技术分享图片
然后我试了一下 因为我以前是忽略依赖性安装的httpd 所以要删了重装
技术分享图片
base从哪里来的 就是配置文件的第一行 也就是这些包都是来自base源
有个yes /d/N 的选项 y代表下载安装 d 下载不安装 N 不下载
我敲鼓y
技术分享图片
成功了 yum把依赖的包都按照了

以上是关于软件包管理 5-----基本知识 yum,配置文件的主要内容,如果未能解决你的问题,请参考以下文章

软件包管理RPM与YUM

No.21 Yum(Yellowdog Updater Modified)软件管理

软件包管理 2 -----基本知识 rpm yum

CentOS6.5 配置本地Yum源

Admin——配置网络yum软件包管理文本文件查找

linux