1 软件包管理器
1.1主要功能把一个软件的二进制程序,库文件,配置文件,帮助文件打包成一个文件还可以把打包好的这个文件,按照我们指定的位置将二进制程序展开到相关的路径上来
1.2 生成数据库,追踪记录所安装的每一个文件并且对实现软件包的安装,卸载,升级,查询,校验
2 rpm
2.1 rpm基本结构
rpm命令本身是个软件包,这个软件包提供了一些命令,然后rpm命令是来管理软件包的
2.2 rpm本身在管理的时候还需要提供追踪安装文件的功能,以便在以后实行卸载更重要的是还要提供查询的功能,查询包括根据软件包所安装的文件,或者是根据某个文件来查找这个文件是由哪个软件包安装所生成的,所以rpm本身有一个庞大的数据库/var/lib/rpm
2.3软件包的介绍
一个rpm包为了避免一个主包过大,一般都会做成一个或多个子包
主包(例如是:bind-9.7.1-1.i586.rpm)
子包:在主包下又加了一个子名字,版本号一样(例如:bind-libs-9.7.1-1.e15.i586.rpm、
bind-utiles-9.7.1-1.e15.i586.rpm)
2.3.1 rpm包名格式:
Name(名称)-version(版本号)-release(发行号).arch(平台架构)
bind-major(主版本号).minor(次版本号).release(修正号,-release.arch.rpm
主版本号:rpm包的功能有重大改进;次版本号:某个子功能发生重大变化;release发行号;修正了部分bug,调整了一点功能
2.4 rpm命令
2.4.1安装
rpm -h:以#显示安装进度,每个#表示2%
rpm -v:显示详细信息
rpm -vv:显示安装更详细的过程
通常是使用命令:rpm –ivh 命令来安装软件包
--nodeps:忽略依赖关系; 会导致软件安装好后无法运行
--replacepkgs;重新安装,替换原有安装;
--replacefiles替换文件
--oldpackage降级
--force:强行安装,可以实现重装或降级;
--test:测试软件包是否可以安装
2.4.2 查询
rpm -q 软件包命令(不是跟路径):只查询指定的包(不带后面的版本信息)
例如:一个软件包是:zsh-4.2.6-6.el5.i386.rpm
rpm –q zsh
rpm -qa 查询已安装的所有包
rpm -qa | gerp "^z" 查询z开头的软件包
rpm -qi 软件包名:查询指定软件包的说明信息
例如:rpm –q zsh
rpm -ql 软件包名:查询指定包安装后生成的文件列表
例如:rpm –ql zsh
rpm -qf /path/to/somefile:查询指定的文件是由哪个rpm包安装生成的
例如:rpm -qf /etc/passwd
rpm -qc 软件包名:查询指定包安装的配置文件
例如:rpm -qc zsh
rpm -qd 软件包名;查询指定包的帮助文件
例如:rpm -qd zsh
rpm -q --scripts 软件包名:查询指定包中包含的脚本
例如:rpm -q --scripts zsh
(1)如果某rpm 包尚未安装,我们需查询其说明信息,安装以后会生成的文件
rpm -qpi 尚未安装的软件包路径
rpm –qpl 显示安装后会生成哪些文件
2.4.3升级rpm -Uvh /Path/to/new_package_file 如果装有老版本的,则升级,否则,则安装
rpm -Fvh /Path/to/new_package_file 如果装有老版本就升级,否则,退出
降级:--oldpackage
rpm -ivh --oldpackage
rpm -Uvh --oldpackage 降级
2.4.4 卸载
rpm -e PACKAGE_NAME:卸载不允许其他包依赖
--nodeps 强制卸载
2.4.5校验
rpm -V PACKAGE_NAME: 校验软件包是否被非法改变过
rpm与yum的综合性介绍与示例演示
内容版权声明:除非注明,否则皆为本站原创文章。