RPM包命名
RPM包的命名一般都会遵守统一的命名规则,例如:
httpd-2.2.15-15.el6.centos.1.i686.rpm
mysql-community-server-5.7.35-1.el7.x86_64.rpm
- httpd:软件包名。
- 2.2.15:软件版本。
- 15:软件发布的次数。
- el6:软件发行商。el6是由Red Hat公司发布的,适合在RHEL 6.x(Red Hat Enterprise Linux)和CentOS 6.x上使用。
- i686:适合的硬件平台。RPM包可以在不同的硬件平台上安装,选择适合不同CPU的软件版本,可以最大限度地发挥CPU性能,所以出现了所谓的i386(386以上的计算机都可以安装)、i586(586以上的计算机都可以安装)、i686(奔腾II以上的计算机都可以安装,目前所有的CPU都是奔腾II以上的,所以这个软件版本居多)、x86_64(64位CPU可以安装)和noarch(没有硬件限制)等文件名。
- rpm:RPM包的扩展名。Linux下的文件不是靠扩展名区分文件类型的,也就是说Linux中的扩展名没有任何含义。那为何要加呢?因为如果RPM包不用“.rpm”作为扩展名,那么系统可以正确识别,但是管理员很难识别这是一个什么样的软件。
注意:我们把httpd-2.2.15-15.el6.centos.1.i686.rpm叫作包全名,而把httpd叫作包名。因为有些命令后面一定跟的是包全名,如安装和升级;而有些命令后面一定跟的是包名,如查询和卸载。如果弄错,命令就会报错。
查询
[root@localhost ~]# rpm –q 包名
选项:
-q: 查询(query)
不管如何,安装前都先查看,看是否安装过了
安装
RPM包一般采用系统默认路径安装
[root@localhost ~]# rpm –ivh 包全名
#注意一定是包全名。如果是跟包全名的命令,则要注意路径,因为软件包在光盘当中
选项:
-i:安装(install)
-v:显示更详细的信息(verbose)
-h:打印#,显示安装进度(hash)
[root@localhost ~]# rpm –ivh a.rpm b.rpm c.rpm
#一次安装多个软件包
升级
[root@localhost ~]# rpm –Uvh 包全名
选项:
-U(大写) 升级安装。如果没有安装过,则系统直接安装。如果安装过的版本较低,则
升级到新版本(upgrade)
[root@localhost ~]# rpm –Fvh 包全名
选项:
-F(大写) 升级安装。如果没有安装过,则不会安装。必须安装有较低版本才能升级(freshen)
删除
[root@localhost ~]# rpm -e 包名
选项:
-e 卸载(erase)
查询补充
- 查询所有
[root@localhost ~]# rpm -qa
- 查询过滤
[root@localhost ~]# rpm -qa | grep httpd
- 查询软件包的文件列表
[root@localhost ~]# rpm –ql 包名
选项:
-l: 列出软件包中所有的文件列表和软件所安装的目录(list)