标签:rpm命令
rpm包命名格式:
appname-VERSION-RELEASE.ARCH.rpm
VERSION:
major: 主版本号
minor: 次版本号
release: 修订号
比如bash-4.3.2-2.centos6.x86_64.rpm中
bash是包名,4.3.2是版本号;-2.centos6是修订号;x86_64是适用平台
rpm常用命令
安装:rpm -i PACKAGE_FILE
-h 以#来表示进度
-v 显示安装过程中的详细信息
-vv 为了更加详细可以跟更多v
-vvvv
通常我们组合来用比如 rpm -ivh PACKAGE_FILE
[root@localhost Packages]# rpm -ivh zsh-4.3.10-7.el6.x86_64.rpm
Preparing... ########################################### [100%]
package zsh-4.3.10-7.el6.x86_64 is already installed
[root@localhost Packages]#
--test:测试安装,可以看到包括依赖关系的一些报错信息。
程序包之间存在依赖关系:
由众多目的单一的小程序组成;结果程序包之间存在相关性;
X --> Y
X --> Y --> (M,N) --> ...
X <--> Y
[root@localhost Packages]# rpm -ivh php-5.3.3-38.el6.x86_64.rpm
error: Failed dependencies:
php-cli(x86-64) = 5.3.3-38.el6 is needed by php-5.3.3-38.el6.x86_64
php-common(x86-64) = 5.3.3-38.el6 is needed by php-5.3.3-38.el6.x86_64
[root@localhost Packages]#
上述可以看到,安装php-5.3.3-38.el6.x86_64.rpm 需要先安装php-cli(x86-64),php-common(x86-64)
忽略依赖关系:--nodeps(装上也不一定能用)
【重新安装 | 覆盖安装】:--replacepkgs
强制安装:--force
升级:
升级或安装 : rpm -U PACKAGE_FILE ...
升级 : rpm -F PACKAGE_FILE ...
C常用组合:-Uvh, -Fvh
注意:一定不要对内核执行升级;Linux允许多内核共存,所以,可以直接安装多个不同版本内核;
注意:如果程序包的配置文件安装后曾被修改,升级时,新版本的文件不会覆盖老版本的配置文件,而把新版本的配置文件重命名(加后缀.rpmnew)后保存;
卸载:
移除已经安装的程序包: rpm -e PACKAGE_NAME ...
注意:如果程序包的配置文件安装后曾被修改,卸载时,此文件通常不会被删除,而是被重命名(加后缀.rpmsave)后留存;
查询:
查询某包是否已经安装,以及检查安装的所有包;还可以查看某包的详细信息;
1、查询某包或某些包是否安装:rpm -q PACKAGE_NAME...
2、查询已经安装的所有包:rpm -qa
3、查询某文件是由哪个包安装生成:rpm -qf /PATH/TO/SOMEFILE
4、查询尚未安装的包文件的相关信息: rpm -qpi PACKAGE_FILE
5、查询某包的简要说明信息:rpm -qi PACKAGE_NAME
6、查询某包安装生成的文件列表:rpm -ql PACKAGE_NAME
7、查询某包安装完成后生成的所有配置文件:rpm -qc PACKAGE_NAME
8、查询某包安装完成后生成的所有帮助文件:rpm -qd PACKAGE_NAME
9、查看某包制作时随版本变化的changelog信息:rpm -q --changelog PACKAGE_NAME
校验:
查询包安装之后生成的文件是否发生了改变
常见用法:rpm -V PACKAGE_NAME
验正其光盘中程序包的来源及完整性:
rpm --import /path/to/RPM-GPG-KEY-FILE
例如:# rpm --import RPM-GPG-KEY-CentOS-6
验正:rpm {-K|--checksig} PACKAGE_FILE
--nosignature: 不检查来源合法性
--nodigest: 不检查完整性
rpm管理器数据库:/var/lib/rpm
标签:rpm命令
原文地址:http://zha0lei.blog.51cto.com/4728300/1631611