(五)Linux学习之——软件管理

本文介绍了CentOS系统中软件的管理机制RPM及其在线升级方式yum的工作原理。详细解析了RPM与SRPM文件的区别,以及如何利用rpm与rpmbuild命令进行软件的安装、验证和重新编译。此外,还概述了yum如何实现软件的搜索、安装、更新与删除等功能。
  1. 厂商现在他们的系统上编译好了我们用户所需要的软件,然后将这个编译好成可执行的文件直接发布给用户来安装,客户端取得这个软件后,只要通过特定的命令来安装,该软件文件就会按照内部的脚本来检测先关的前驱软件是否存在,若安装的环境符合要求,就会开始安装
  2. CentOS系统使用的软件管理机制为RPM机制,而用来作为在线升级的方式则为yum
  3. RPM全名是“RedHat Pakage Manager”,简称则为RPM。RPM是一种以数据库记录的方式来将你所需要的软件安装到Linux系统的一套管理机制
  4. SRPM是Source RPM的意思,也就是这个RPM文件里面含有的源代码
  5. RPM文件必须要在相同的Linux环境下才能够安装,而SRPM既然是源代码的格式,自然我们就可以通过修改SRPM内的参数设置文件,然后重新编译生成适合我们Linux环境的RPM文件
  6. CentOS先将发布的软件放置到YUM服务器内,然后分析这些软件的依赖属性问题,将软件记录信息写下来(header),然后再将这些信息分析后记录成软件相关性的清单列表,这些列表数据与软件所在的位置可以成为容器(repository)。当客户端有升级、安装的需求时,yum会向容器要求清单的更新,等到清单更新到本机/var/cache/yum里面后,等一下更新时就会用这个本机清单与本机的RPM数据库进行比较,这样就知道该下载什么软件。接下来yum会跑到容器服务器下载所需要的软件,然后再通过RPM机制开始安装软件
  7. rpm命令有查询功能,可以很轻易的知道某个系统有没有安装我们所需要的软件。rpm安装命令参数可以直接使用-ivh就好了
  8. rpm -qa可以列出所有的已经安装在本机Linux系统上的所有软件名称
  9. RPM提供了一个可以验证原本的文件系统的方法,其作用的方式是使用/var/lib/rpm下面的数据库内容来比较目前Linux系统的环境下的所有软件文件
  10. 验证给出的参数信息如下几个,SM5DLUGT,也就是说,如果一个文件的所有的信息都被改动过,就会显示以上信息,每个字符表示一种内容,比如S表示文件的容量大小
  11. 如果RPM数据库var/lib/rpm内的文件损坏,则可以使用–rebuilddb这个参数来重建一下数据库
  12. 新版的rpm已经将RPM与SRPM的命令分开了,SRPM使用的是rpmbuild这个命令,而不是rpm(忍不住吐槽一下,每次提到rpm就想到健身房教练单车课时喊的欢迎大家参加这一期的rpm^_^)
  13. 由于SRPM需要重新编译,所以我们至少需要有make与其相关的程序,及gcc、c、c++等其他的编译用的程序语言来进行编译
  14. 要在将/usr/src/redhat下面的数据编译或者是单纯打包为RPM或者SRPM时,就需要使用rpmbuild命令与相关选项的帮忙了,比如rpmbuild -ba rp-pppoe.spec表示编译并同时生成RPM与SRPM文件,rpmbuild -bb rp-pppoe.spec表示仅编译成RPM文件
  15. yum命令具有查询功能, 列出yum服务器上的提供的所有软件名称,直接yum list即可
  16. 安装与升级功能直接使用yum install 软件名称或者yum update 软件名称,yum remove 软件名称表示删除该软件
  17. yum是架构在rpm上面发展起来的,还是要了解一些rpm
  18. 删除已下载过的所有容器的相关数据(含软件本身列表)直接使用yum clean all
  19. yum具有软件组功能,yum grouplist可以列出目前容器与本机上面的可用与安装过的软件组
  20. 在管理上,rpm和tarbal,优先选择原厂的rpm功能
  21. RPM最大的问题就是软件依赖性问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值