Linux rpm命令管理(安装、升级和卸载)RPM包方法详解

  • 内容
  • 评论
  • 相关

通过前面章节对 rpm 命令的介绍,本节开始学习使用 rpm 命令安装、升级或卸载 RPM 包。

我们先安装 apache 程序。之所以安装 apache 程序,是因为我们后续安装源码包时也计划安装 apache 程序,这样就能初步认识到源码包和 RPM 包的区别。不过需要注意的是,同一个程序的RPM 包和源码包可以安装到一台服务器上,但是只能启动一个,因为它们需要占用同样的 80 端口。不过,如果真在生产服务器上,那么一定不会同时安装两个 apache 程序,容易把管理员搞糊涂,而且会占用更多的服务器磁盘空间。

RPM 包默认安装路径

源码包和 RPM 包安装的程序为什么可以在一台服务器上呢?主要是因为安装路径不同,所以不会覆盖安装。RPM 包一般采用系统默认路径安装,而源码包一般通过手工指定安装路径(一般安装到 /usr/local/ 中)安装。

RPM 包默认安装路径是可以通过命令査询的,一般安装在如表 1 所示的目录中。

表 1 RPM包默认安装路径
安装路径 含 义
/etc/ 配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/lib/ 程序所使用的函数库保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置

RPM 包难道就不能手工指定安装路径吗?当然是可以的,但是一旦手工指定安装路径,所有的安装文件就会安装到手工指定位置,而不会安装到系统默认位置。而系统的默认搜索位置并不会改变,依然会去默认位置之下搜索,当然系统就不能直接找到所需的文件,也就失去了作为系统默认安装路径的一些好处。所以我们一般不会指定 RPM 包的安装路径,而使用默认安装路径。

RPM包的安装

[root@localhost ~]# rpm -ivh 包全名
#注意一定是包全名。如果是跟包全名的命令,则要注意路径,因为软件包在光盘当中

选项:

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

例如,安装 apache 软件包,注意出现两个 100% 才是正确安装,第一个 100% 仅是在准备,第二个 100% 才是正确安装。如下所示:

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

如果打算同时安装多个软件包呢?可以用一条命令同时安装,将多个软件包用空格分开就可以了。

[root@localhost ~]# rpm -ivh a.rpm b.rpm c.rpm
#一次安装多个软件包

如果还有其他安装要求,比如想强制安装某个软件包而不管它是否有依赖性,就可以通过选项进行调整:

  • -nodeps:不检测依赖性安装。软件安装时会检测依赖性,确定所需的底层软件是否安装,如果没有安装则会报错。如果不管依赖性,想强制安装,则可以使用这个选项。注意:这样不检测依赖性安装的软件基本上是不能使用的,所以不建议这样做。
  • -replacefiles:替换文件安装。如果要安装软件包,但是包中的部分文件已经存在,那么在正常安装时会报"某个文件已经存在"的错误,从而导致软件无法安装。使用这个选项可以忽略这个报错而覆盖安装。
  • -replacepkgs:替换软件包安装。如果软件包已经安装,那么此选项可以把软件包重复安装一遍。
  • -force:强制安装。不管是否已经安装,都重新安装。也就是-replacefiles和-replacepkgs的综合。
  • -test:测试安装。不会实际安装,只是检测一下依赖性。
  • -prefix:指定安装路径。为安装软件指定安装路径,而不使用默认安装路径。注意:如果指定了安装路径,软件没有安装到系统默认路径中,那么系统会找不到这些安装的软件,需要进行手工配置才能被系统识别。所以,我们一遍采用默认路径安装RPM包。

apache 服务安装成功后,尝试启动。命令如下:

[root@localhost ~]# service 服务名 start|stop| restart|status

参数:

  • start:启动服务;
  • stop:停止服务;
  • restart:重启服务;
  • status: 査看服务状态;

例如:

[root@localhost ~]# service httpd start #启动apache服务

服务启动之后,就可以査看端口号 80 是否出现。命令如下:

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

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



图 2 Apache测试页

本文标题:Linux rpm命令管理(安装、升级和卸载)RPM包方法详解

本文地址:https://www.hosteonscn.com/3189.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注