(1)rpm 包的管理
① 基本介绍
rpm 工具在 Linux 环境中扮演着软件包管理器的角色,它的主要职责是处理 .rpm 格式的软件包。rpm 能够让我们安装、卸载、升级、查询和验证软件包。
- 安装软件包:-i(install)。下载了一个 .rpm 文件,可以使用 rpm -i package.rpm 命令来安装它。rpm 会检查软件包的依赖关系并尝试安装它们。
- 卸载软件包:-e(erase)。如果不再需要某个软件包,可以使用 rpm -e package_name 卸载它。这样可以释放磁盘空间,并移除与该软件包相关的所有文件和配置。
- 升级软件包:-U(upgrade)。当有新版本的软件包可用时,rpm 可以用来更新现有的软件包。使用 rpm -U package.rpm 命令可以升级软件包。
- 查询软件包信息:使用 rpm -qi package_name 用于查询已安装的软件包的详细信息。包括版本号、发布日期、安装位置等。这里的 -q 是 query 的缩写,意味着查询系统中的软件包信息;而 -i 是 info 的缩写,意味着获取关于这个软件包的具体信息。而 rpm -qa 则查询所有已安装的软件包的信息。
- 验证软件包:-V(verify)用于验证软件包的完整性和一致性。使用 rpm -V package_name 命令可以检查已安装的软件包是否被修改或损坏。
- 解决依赖关系:rpm 能够识别软件包间的依赖关系,但当依赖关系复杂时,手动解决可能会很困难。因此,通常会使用更高级的包管理器如 yum、dnf 或 zypper,它们基于 rpm,但提供自动化的依赖解决和更复杂的事务性操作。
- 构建软件包:还可以使用 rpm 工具来创建自己的 .rpm 软件包,这在定制系统和分发自定义软件时非常有用。
② rpm 包的简单查询指令
查询已安装的 rpm 列表 rpm –qa | more
举例:看看当前系统,是否安装了 firefox (火狐浏览器)
指令:rpm -qa | grep firefox
③ rpm 包名基本格式
rpm 包名:firefox-60.2.2-1.el7.centos.x86_64
软件名称:firefox
版本号:60.2.2-1
适用操作系统:el7.centos.x86_64(表示 centos7.x 的 64 位系统)
④ rpm 包的其它查询指令
查询软件包是否安装:rpm -q 软件包名
例如:rpm -q firefox
rpm -qi 软件包名:查询某个软件包具体信息
案例: rpm -qi firefox
rpm -ql 软件包名:查询某个软件包安装过后包含的文件
比如: rpm -ql firefox
rpm -qf 文件全路径名:查询某个文件是属于哪个软件包的
rpm -qf /etc/passwd
rpm -qf /usr/share/man/man1/firefox.1.gz
⑤ rpm的卸载
rpm -e rpm包的名称
举例:删除 firefox 软件包
rpm -e firefox
注意:
如果其它软件包依赖于我们要卸载的软件包,卸载时则会产生错误信息。
举例:rpm -e foo(要删除 foo 这个 rpm 包)
Linux提示信息:removing these packages would break dependencies:foo is needed by bar-1.0-1
释义:要删除 foo 这个 rpm 包,会使得依赖于该软件包的程序bar可能无法正常运行。加上--nodeps,命令变成rpm -e --nodeps foo,可强制删除foo,但是不推荐使用。
⑥ 安装 rpm 包
rpm -ivh rpm包的全路径名称(前提:有一个rpm的安装文件,相当于Windows的setup.exe,没有这个安装文件,是安装不了需要的软件的)
i:install 安装
v:verbose 提示
h:hash 进度条
案例演示:卸载和安装 firefox 浏览器(前提:本地目录有rpm的安装包)
rpm -e firefox
rpm -ivh /安装包所在目录/firefox-xxx.rpm
(2)Yum
Yum 是一个 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。
查询 yum 服务器是否有需要安装的软件的安装包(以火狐浏览器为例)
yum list|grep firefox
yum install rpm的安装包名称