码迷,mamicode.com
首页 > 其他好文 > 详细

centos的软件管理工具RPM和yum

时间:2014-11-02 09:32:42      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:yum   rpm   linux   centos   软件管理   

rpm

RPM 默认安装的路径:

bubuko.com,布布扣


RPM 安装 (install)

bubuko.com,布布扣

注:也可以通过网络安装:rpm -ivh http://website.name/path/pkgname.rpm


『强制』安装:
bubuko.com,布布扣


RPM 升级与更新 (upgrade/freshen):(后面也可以接上面的--nodeps/--force 等等的参数)

bubuko.com,布布扣


RPM 查询 (query)

注:RPM 在查询的时候,其实查询的地方是在 /var/lib/rpm/ 这个目录下的数据库档案

bubuko.com,布布扣



RPM 验证与数字签名 (Verify/signature):

bubuko.com,布布扣
bubuko.com,布布扣


如:
bubuko.com,布布扣

   最前面的八个信息是:
 S :(file Size differs) 档案的容量大小是否被改变
 M :(Mode differs) 档案的类型戒档案的属性 (rwx) 是否被改变?如是否可执行等参数已被改变
 5 :(MD5 sum differs) MD5 这一种挃纹码的内容已经丌同
 D :(Device major/minor number mis-match) 装置的主/次代码已经改变
 L :(readLink(2) path mis-match) Link 路径已被改变
 U :(User ownership differs) 档案的所属人已被改变
 G :(Group ownership differs) 档案的所属群组已被改变
 T :(mTime differs) 档案的建立时间已被改变

    第二排的意思是:
 c :配置文件 (config file)
 d :文件数据文件 (documentation)
 g :鬼档案~通常是该档案丌被某个软件所包吨,较少发生!(ghost file)
 l :许可证文件 (license file)
 r :自述文件 (read me)

数字签名 (digital signature):

    防止:验证只能验证软件内的信息与 /var/lib/rpm/ 里面的数据库信息而已,如果该软件档案所提供的数据本身就有问题,那你使用验证的手段也无法确定该软件的正确性。
    解决:
1. 首先你必须要先安装原厂释出的公钥档案;
2. 实际安装原厂的 RPM 软件时, rpm 指令会去读取 RPM 档案的签章信息,与本机系统内的签章信息比对,
3. 若签章相同则予以安装,若找不到相关的签章信息时,则给予警告并且停止安装。

bubuko.com,布布扣



RPM反安装与重建数据库

注:卸载一个软件需要考虑到依赖性问题,如:软件B依赖于A提供的函数库,但我要卸载A,会报错且不会卸载,因为卸载了,B就不能使用。不过可以加 --nodeps 来强制移除,只是依赖其函数库的软件都不能使用了(不建议强制卸载)。

bubuko.com,布布扣

而可以删除的,这不会出现任何信息:
bubuko.com,布布扣


因为某些动作,可能导致RPM 数据库 /var/lib/rpm/ 内的档案破损,则需要重建RPM数据库
bubuko.com,布布扣


yum

查询功能:yum [list|info|search|provides|whatprovides] 参数

bubuko.com,布布扣
bubuko.com,布布扣



安装/升级功能:yum [install|update] 软件:

bubuko.com,布布扣



移除功能:yum [remove] 软件:

会自动帮我们解决依赖性问题
bubuko.com,布布扣


yum 的配置文件:

其中的一个容器文件:
bubuko.com,布布扣

bubuko.com,布布扣

 [base]:代表容器的名字!中刮号一定要存在,里面的名称则可以随意取。但是不能有两个相同的容器名称, 否则 yum 会不晓得该到哪里去找容器相关软件列表档案。

 name:只是说明一下这个容器的意思而已,重要性不高!

 mirrorlist=:列出这个容器可以使用的映射站台,如果不想使用,可以批注到这行;

 baseurl=:这个最重要,因为后面接的就是容器的实际网址! mirrorlist 是由 yum 程序自行去捉映像站台, baseurl 则是指定固定的一个容器网址!

 enable=1:就是让这个容器被启劢。如果不想启劢可以使用 enable=0 喔!

 gpgcheck=1:还记得 RPM 的数字签名吗?这就是指定是否需要查阅 RPM 档案内的数字签名!

 gpgkey=:就是数字签名的公钥文件所在位置!使用默认值即可


如果有些软件,系统默认容器没有提供,可以使用软件提供的容器:在 /etc/yum.repos.d/ 底下新建一个档案, 该扩展名必须是 .repo 才行(一般使用安装RPM的方式安装容器,无需自己新建档案,更多请参考笔者另一篇博文《centos7通过yum安装mysql》)。

如mysql的容器:
bubuko.com,布布扣

查看目前yum所使用的容器有哪些:
bubuko.com,布布扣



yum 会先下载容器的清单到本机的 /var/cache/yum 里面去,如果我们在一个容器里面修改了网址,却没有修改容器名称(中括号里面的文字),可能就会造成本机的列表与yum 服务器的列表不同步,此时就会出现无法更新的问题了。

所以需要清理一下:
bubuko.com,布布扣


yum 的软件群组功能:

bubuko.com,布布扣


bubuko.com,布布扣


全系统自动升级:

bubuko.com,布布扣


    参考相关资料:《鸟哥的私房菜》


centos的软件管理工具RPM和yum

标签:yum   rpm   linux   centos   软件管理   

原文地址:http://blog.csdn.net/u012367513/article/details/40681551

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!