从零开始学Linux之rpm命令

二进制包是 Linux 下默认的软件安装包,目前主要有两大二进制包管理系统:

(1)rpm 包管理系统:功能强大,安装、升级、査询和卸载非常简单方便

有两种命令安装rpm包:rpm命令是先下载软件,然后进行本地安装,yum命令是在线安装,会自动解决依赖关系。主要应用在 Fedora、CentOS、RedHat、等,包的后缀名为.rpm

(2)dpkg包管理系统:最早由Debian Linux社区开发,包的后缀名为.deb

这里我们先介绍rpm包管理系统中rpm命令的用法,rpm软件包格式如下

name-version-release.arch.rpm分别对应软件名称-版本-发行版号.处理器架构

如tree-1.5.3-2.e16.i686.rpm

tree是软件名称

版本号是1.5.3

发行版号是2.e16

i686是处理器架构

这里我用的系统是红帽6,所以处理器架构是i686,软件包可以去网上下载,一定要下载对应自己系统架构的对应软件包,这里推荐两个下载rpm包的网页

http://www.rpmfind.net

http://rpm.pbone.net

rpm -q 软件名称

查询是否已安装的指定的软件包, 如果已安装会显示版本号,如果没有安装会提示未安装,如查询tree软件包是否安装:

rpm -ivh xxx.rpm

-i 安装软件包
-v 显示附加信息
-h 安装时用#表示安装进度

ivh组合就是安装软件包并显示附加信息并可视化进度

例如安装tree软件包

再次查询发现已经安装成功,显示了版本号

rpm -Uvh xxx.rpm

更新软件包,先删掉旧包再升级

rpm -Fvh xxx.rpm

在旧包的基础上进行升级

rpm -ql 软件名称

列出软件包的文件列表和完整目录,例如列出tree软件包的文件列表,看该软件包安装时会写入哪些文件到系统中

从零开始学Linux之rpm命令_第1张图片

rpm -qi 软件名称

查询软件包的详细信息,例如查看tree软件包的详细信息

从零开始学Linux之rpm命令_第2张图片

rpm -qa

列出所有被安装的软件包

从零开始学Linux之rpm命令_第3张图片

可以用管道和grep进行筛选,不然会列出很多已安装的包不好找

rpm -qf 文件名

查询某个文件是属于那个rpm包的,例如查询/usr/share/doc/tree-1.5.3文件属于哪个软件包

rpm -e 软件名称

卸载软件包,如rpm -e tree卸载tree包,再次使用rpm -q查询,发现tree软件包已经未安装

rpm -qpi xxx.rpm

查询未安装的软件包的详细信息

从零开始学Linux之rpm命令_第4张图片

qi选项只能查询已安装的软件包的详细信息,如果查询未安装的软件包会提示未安装

rpm -qpl xxx.rpm

查询未安装软件包会向系统里面写入哪些文件,跟ql选项相对应

从零开始学Linux之rpm命令_第5张图片

rpm -qR 软件名称

查询指定包所依赖信息

从零开始学Linux之rpm命令_第6张图片

你可能感兴趣的:(linux,服务器)