Linux RPM包统一命令规则(超详细)

RPM 包的命名一般都会遵守统一的命名规则,例如:

httpd-2.2.15-15.el6.centos.1.i686.rpm

其中的各项代表的含义如下:
  • httpd:软件包名。
  • 2.2.15:软件版本。
  • 15:软件发布的次数。
  • el6:软件发行商。el6 是由 Red Hat 公司发布的,适合在 RHEL 6.x (Red Hat Enterprise Unux) 和 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",那么管理员很难知道这是一个 RPM 包,当然也就无法正确安装了。换句话说,如果 RPM 包不用".rpm"作为扩展名,那么系统可以正确识别,但是管理员很难识别这是一个什么样的软件。

注意,我们把 httpd-2.2.15-15.el6.centos.1.i686.rpm 叫作包全名,而把 httpd 叫作包名。为什么要做出特殊说明呢?因为有些命令后面一定跟的是包全名,如安装和升级;而有些命令后面一定跟的是包名,如查询和卸载。如果弄错,命令就会报错。