首页 > 运维 > linux运维 > 正文

Linux RPM包安装、卸载和升级

蓮花仙者
发布: 2025-07-18 10:30:02
原创
401人浏览过

让我们以安装 apache 程序为例进行说明。由于后续章节将介绍通过源码包安装 apache 程序的方式,读者将能够直接感受到源码包与 rpm 包之间的差异。

Linux RPM包安装、卸载和升级通常情况下,RPM 包会使用系统默认的安装路径,所有的安装文件会根据类别分散安装到表 1 中所示的目录。

Linux RPM包安装、卸载和升级RPM 包的默认安装路径可以通过命令查询。

Linux RPM包安装、卸载和升级除了默认路径,RPM 包也支持手动指定安装路径,但这种方式并不推荐。因为手动指定路径会导致所有安装文件集中在指定位置,并且系统中用于查询安装路径的命令将无法使用(需要手动配置才能被系统识别),得不偿失。

与 RPM 包不同,源码包的安装通常采用手动指定安装路径的方式(通常安装到 /usr/local/ 目录下)。由于安装路径不同,同一 apache 程序的源码包和 RPM 包可以同时安装在一台 Linux 服务器上(但同一时间只能启动一个,因为它们需要使用相同的 80 端口)。

在实际操作中,一台服务器几乎不会同时运行两个 apache 程序,因为这会给管理员带来管理上的困难,并占用大量的服务器磁盘空间。

安装 RPM 包的命令格式为:

请注意,必须使用包的完整名称。涉及到包完整名称的命令时,一定要注意路径,因为软件包可能位于光盘中,因此需要提前完成设备挂载工作。

此命令中的选项参数含义如下:

-i:安装(install); -v:显示更详细的信息(verbose); -h:打印 #,显示安装进度(hash); 例如,使用此命令安装 apache 软件包,如下所示:

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

请注意,直到出现两个 100% 才表示安装成功,第一个 100% 仅表示完成了安装准备工作。此命令还可以一次性安装多个软件包,只需将包的完整名称用空格分隔即可,如下所示:

Linux RPM包安装、卸载和升级如果有其他安装需求(例如强制安装某软件而不考虑其依赖性),可以通过以下选项进行调整:

-nodeps:不检测依赖性进行安装。软件安装时会检测依赖性,确定所需的基础软件是否已经安装,如果没有安装则会报错。如果不考虑依赖性,强制安装,则可以使用这个选项。注意,这样不检测依赖性的安装通常是不可用的,因此不建议这样做。 -replacefiles:替换文件进行安装。如果要安装的软件包中某些文件已经存在,在正常安装时会报"某个文件已经存在"的错误,导致软件无法安装。使用这个选项可以忽略这个错误并覆盖安装。 -replacepkgs:替换软件包进行安装。如果软件包已经安装,那么此选项可以将软件包重复安装一遍。 -force:强制安装。不管是否已经安装,都会重新安装。也就是 -replacefiles 和 -replacepkgs 的综合。 -test:测试安装。不会实际安装,只是检测依赖性。 -prefix:指定安装路径。为安装软件指定安装路径,而不使用默认安装路径。 apache 服务安装完成后,可以尝试启动:

各参数含义如下:

豆包爱学
豆包爱学

豆包旗下AI学习应用

豆包爱学 674
查看详情 豆包爱学

start:启动服务; stop:停止服务; restart:重启服务; status: 查看服务状态; 例如:

服务启动后,可以查看端口号 80 是否已经开放。命令如下:

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

Linux RPM包安装、卸载和升级要升级 RPM 包,可以使用以下命令:

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

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

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

如果在卸载 RPM 软件包时不考虑依赖性,执行卸载命令会导致依赖性错误,例如:

[root@localhost ~]# rpm -e httpd
error: Failed dependencies:
        httpd-mmn = 20051115 is needed by (installed) mod_wsgi-3.2-1.el6.i686
        httpd-mmn = 20051115 is needed by (installed) php-5.3.3-3.el6_2.8.i686
        httpd-mmn = 20051115 is needed by (installed) mod_ssl-1:2.2.15-15.el6.centos.1.i686
        httpd-mmn = 20051115 is needed by (installed) mod_perl-2.0.4-10.el6.i686
        httpd = 2.2.15-15.el6.centos.1 is needed by (installed) httpd-manual-2.2.15-15.el6.centos.1.noarch
        httpd is needed by (installed) webalizer-2.21_02-3.3.el6.i686
        httpd is needed by (installed) mod_ssl-1:2.2.15-15.el6.centos.1.i686
        httpd=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 软件包的卸载命令支持使用“-nodeps”选项,即可以不检测依赖性直接卸载,但这种方式不推荐使用,因为此操作很可能导致其他软件也无法正常使用。

以上就是Linux RPM包安装、卸载和升级的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号