功能描述
使用rpm命令可以在Linux系统中安装、删除、刷新、升级、查询RPM软件包。
命令语法
rpm[选项] [RPM软件包文件名称|RPM软件包名称]
选项含义
选项
含义
-i
安装软件包
-v
输出详细信息
-h
安装软件包时打印哈希标记
--replacepkge
无论软件包是否已被安装,都重新安装软件
--test
只对安装进行测试,并不实际安装
--nodeps
不验证软件包的依赖关系
--force
忽略软件包和文件的冲突
--percent
以百分比的形式输出安装的进度
--excludedocs
不安装软件包中的文档文件
--nocontexts
不要安装文件的安全上下文
--ignorearch
不验证软件包的体系结构
--ignoreos
不验证软件包的操作系统
--ignoresize
在安装之前不检查磁盘空间
--justdb
更新数据库,但是不要修改文件系统
--nofiledigest
不验证文件摘要
--noscripts
不执行软件包的脚步
--relacefiles
忽略软件包之间的文件冲突
--fileconflicts
检测软件包之间的文件冲突
-e
删除软件包
-U
升级软件包
-F
刷新软件包
--oldpackage
升级旧版本的软件包
-q
查询软件包
--initdb
初始化RPM数据库
--rebuilddb
从安装数据包头重建RPM数据库
例如:
安装bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel~]#cd /media/RHEL_6.4x86_64Disc1/Packages
进入Linux系统安装光盘软件包目录
[root@rhel Packages]#rpm -i bind-9.8.2-0.17.rcl.e16.x86_64.rpm
安装bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包,并显示安装过程中的详情信息和水平进度条
[root@rhel Packages]#rpm -ivh bind-9.8.2-0.17.rcl.e16.x86_64.rpm
只对安装进行测试, 并不实际安装bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel Packages]#rpm -ivh --test bind-9.8.2-0.17.rcl.e16.x86_64.rpm
安装以bind开头的软件包
[root@rhel Packages]#rpm -ivh bind*
在软件包bind-9.8.2-0.17.rcl.e16.x86_64.rpm已经安装的情况下旧安装该软件包
[root@rhel Packages]#rpm -ivh --replacepkgs bind-9.8.2-0.17.rcl.e16.x86_64.rpm
忽略软件包的依赖关系,强行安装bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel Packages]#rpm -ivh --nodeps bind-9.8.2-0.17.rcl.e16.x86_64.rpm
直接从软件包的HTTP网址安装软件包
[root@rhel~]#rpm -ivh
>http://ncu.dl.sourcefore.net/project/web/1.630/webmin-1.630-1.noarch.rpm
删除bind-chroot软件包
[root@rhel~]#rpm -e bind-chroot
强行删除bind软件包
[root@rhel~]#rpm -e --nodeps bind
升级bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel Packages]#rpm -Uvh bind-9.8.2-0.17.rcl.e16.x86_64.rpm
强行升级bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel Packages]#rpm -Uvh --oldpackage bind-9.8.2-0.17.rcl.e16.x86_64.rpm
刷新bind-9.8.2-0.17.rcl.e16.x86_64.rpm软件包
[root@rhel Packages]#rpm -Fvh bind-9.8.2-0.17.rcl.e16.x86_64.rpm
初始化RPM数据库
[root@rhel~]#rpm --initdb
从安装数据包头重建RPM数据库
[root@rhel~]#rpm --rebuilddb
查询bind和crontabs软件包是否已经安装
[root@rhel~]#rpm -q bind
//查询到bind软件包没有安装
[root@rhel~]#rpm -q crontabs
查询系统内所有已经安装的RPM软件包。
[root@rhel~]#rpm -qa
查询以cront开头的RPM软件包是否已经安装
[root@rhel~]#rpm -qa | grep cront
查询crontabs软件包的描述信息
[root@rhel~]#rpm -qi crontabs
查询crontabs软件包所包含的文件列表
[root@rhel~]#rpm -ql crontabs
查看crontabs软件包的修改记录
[root@rhel~]#rpm -q --changelog crontabs
查询crontabs软件包的依赖关系
[root@rhel~]#rpm -qR crontabs
查询/etc/crontab文件属于哪个软件包
[root@rhel~]#rpm -qf /etc/crontab
查询crontabs软件包的配置文件
[root@rhel~]#rpm -qc crontabs
列出crontabs软件包显性提供的内容
[root@rhel~]#rpm -q --provides crontabs
查询httpd软件包RPM脚本
[root@rhel~]#rpm -q --scripts httpd
根据时间列出cron开头的所有软件包
[root@rhel~]#rpm -qa --last cron*
验证pam软件包
[root@rhel~]#rpm -V pam