centos的软件管理工具RPM和yum


rpm

RPM 默认安装的路径:

\


RPM 安装 (install):

\

注:也可以通过网络安装:rpm -ivh http://website.name/path喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcGtnbmFtZS5ycG08L3N0cm9uZz4KPGJyPgoKPGJyPgoKobrHv9bGobuwstewo7o8YnI+Cgo8aW1nIHNyYz0="http://www.2cto.com/uploadfile/Collfiles/20141103/2014110309212771.png" alt="\">


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

\


RPM 查询 (query):

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

\



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

\
\

如: \

最前面的八个信息是:
 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. 若签章相同则予以安装,若找不到相关的签章信息时,则给予警告并且停止安装。

\



RPM反安装与重建数据库

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

而可以删除的,这不会出现任何信息: \


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


yum

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

\
\



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

\



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

会自动帮我们解决依赖性问题 \


yum 的配置文件:

其中的一个容器文件: \
\

 [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的容器: \

查看目前yum所使用的容器有哪些: \



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

所以需要清理一下: \


yum 的软件群组功能:

\


\


全系统自动升级:




参考相关资料:《鸟哥的私房菜》
转载请标明原文出处:http://blog.csdn.net/u012367513/article/details/40681551

相关内容