RPM 包的默认安装路径是可以通过命令查询的。
除此之外,RPM 包也支持手动指定安装路径,但此办法并不推举。
由于一旦手动指定安装路径,所有的安装文件汇合中安装到指定位置,且系统中用来查询安装路径的命令也无法利用(须要进行手工配置才能被系统识别),得不偿失落。
与 RPM 包不同,源码包的安装常日采取手动指定安装路径(习气安装到 /usr/local/ 中)的办法。
既然安装路径不同,同一 apache 程序的源码包和 RPM 包就可以安装到一台 Linux 做事器上(但同一韶光只能开启一个,由于它们须要占用同一个 80 端口)。
实际情形中,一台做事器险些不会同时包含两个 apache 程序,管理员不好管理,还会占用过多的做事器磁盘空间。

RPM 包的安装

安装 RPM 的命令格式为:

[root@localhost ~]# rpm -ivh 包全名

把稳一定是包全名。
涉及到包全名的命令,一定要把稳路径,可能软件包在光盘中,因此需提前做好设备的挂载事情。

rpm安装phpLinux RPM包安装卸载和进级rpm敕令详解 Ruby

此命令中各选项参数的含义为:

-i:安装(install);-v:显示更详细的信息(verbose);-h:打印 #,显示安装进度(hash);

例如,利用此命令安装 apache 软件包,如下所示:

[root@localhost ~]# rpm -ivh \/mnt/cdrom/Packages/httpd-2.2.15-15.el6.centos.1.i686.rpmPreparing...####################[100%]1:httpd####################[100%]

把稳,直到涌现两个 100% 才是真正的安装成功,第一个 100% 仅表示完成了安装准备事情。
此命令还可以一次性安装多个软件包,仅需将包全名用空格分开即可,如下所示:

[root@localhost ~]# rpm -ivh a.rpm b.rpm c.rpm

如果还有其他安装哀求(比如逼迫安装某软件而不管它是否有依赖性),可以通过以下选项进行调度:

-nodeps:不检测依赖性安装。
软件安装时会检测依赖性,确定所需的底层软件是否安装,如果没有安装则会报错。
如果不管依赖性,想逼迫安装,则可以利用这个选项。
把稳,这样不检测依赖性安装的软件基本上是不能利用的,以是不建议这样做。
-replacefiles:更换文件安装。
如果要安装软件包,但是包中的部分文件已经存在,那么在正常安装时会报"某个文件已经存在"的缺点,从而导致软件无法安装。
利用这个选项可以忽略这个报错而覆盖安装。
-replacepkgs:更换软件包安装。
如果软件包已经安装,那么此选项可以把软件包重复安装一遍。
-force:逼迫安装。
不管是否已经安装,都重新安装。
也便是 -replacefiles 和 -replacepkgs 的综合。
-test:测试安装。
不会实际安装,只是检测一下依赖性。
-prefix:指定安装路径。
为安装软件指定安装路径,而不该用默认安装路径。

apache 做事安装完成后,可以考试测验启动:

[root@localhost ~]# service 做事名 start|stop|restart|status

各参数含义:

start:启动做事;stop:停滞做事;restart:重启做事;status: 查看做事状态;

例如:

[root@localhost ~]# service httpd start #启动apache做事

做事启动后,可以查看端口号 80 是否涌现。
命令如下:

[root@localhost ~]# netstat -tlun | grep 80tcp 0 0 :::80::: LISTEN

也可以在浏览器中输入 Linux 做事器的 IP 地址,访问这个 apache 做事器。
目前在 apache 中没有建立任何网页,以是看到的只是测试页,如图 2 所示。

也可以在浏览器中输入 Linux 做事器的 IP 地址,访问这个 apache 做事器。
目前在 apache 中没有建立任何网页,以是看到的只是测试页,如图 2 所示。

图 2 apache测试页

RPM包的升级

利用如下命令即可实现 RPM 包的升级:

[root@localhost ~]# rpm -Uvh 包全名

-U(大写)选项的含义是:如果该软件没安装过则直接安装;若没安装则升级至最新版本。

[root@localhost ~]# rpm -Fvh 包全名

-F(大写)选项的含义是:如果该软件没有安装,则不会安装,必须安装有较低版本才能升级。

RPM包的卸载

RPM 软件包的卸载要考虑包之间的依赖性。
例如,我们先安装的 httpd 软件包,后安装 httpd 的功能模块 mod_ssl 包,那么在卸载时,就必须先卸载 mod_ssl,然后卸载 httpd,否则会报错。

软件包卸载和拆除大楼是一样的,本来先盖的 2 楼,后盖的 3 楼,那么拆楼时一定要先拆除 3 楼。

如果卸载 RPM 软件不考虑依赖性,实行卸载命令会包依赖性缺点,例如:

[root@localhost ~]# rpm -e httpderror: Failed dependencies:httpd-mmn = 20051115 is needed by (installed) mod_wsgi-3.2-1.el6.i686httpd-mmn = 20051115 is needed by (installed) php-5.3.3-3.el6_2.8.i686httpd-mmn = 20051115 is needed by (installed) mod_ssl-1:2.2.15-15.el6.centos.1.i686httpd-mmn = 20051115 is needed by (installed) mod_perl-2.0.4-10.el6.i686httpd = 2.2.15-15.el6.centos.1 is needed by (installed) httpd-manual-2.2.15-15.el6.centos.1 .noarchhttpd is needed by (installed) webalizer-2.21_02-3.3.el6.i686httpd is needed by (installed) mod_ssl-1:2.2.15-15.el6.centos.1.i686httpd=0:2.2.15-15.el6.centos.1 is needed by(installed)mod_ssl-1:2.2.15-15.el6.centos.1.i686

RPM 软件包的卸载很大略,利用如下命令即可:

[root@localhost ~]# rpm -e 包名

-e 选项表示卸载,也便是 erase 的首字母。
RPM 软件包的卸载命令支持利用“-nocteps”选项,即可以不检测依赖性直接卸载,但此办法不推举大家利用,由于此操作很可能导致其他软件也无法征程利用。

感谢开源软件为我们事情效率和生活质量带来的便利与代价,感谢为开源软件开拓和推广利用做出努力的人们,本文知识来源于网络,大仁条记网络整理,如果以为不错欢迎点赞、收藏、转发。

我是@大仁条记,欢迎大家学习互换,一起为更好的来日诰日好好努力。