文章目录
管理软件包
RPM软件包
Linux软件包管理概述
Linux软件包可分为两类:源码包、二进制包,不同的软件包有不同的提供方式,常用的方式有rpm包和tgz包两种。为此,常用应用软件的安装方式也有两种,一种为使用rpm工具安装,一种为编译安装。
rpm作为标准的软件包管理工具,具有便捷的安装方式,是安装软件的首选方式。
openLinux、SUSE、CentOS等不同的分发版本同样使用rpm来对软件包进行管理。
不同的平台使得软件包的打包格式及工具不尽相同,其中Debin和Ubuntu采用的是Deb包安装以及apt-get源安装的方式来对软件包进行管理, FreeBSD则采用的是Ports,.txz的打包格式以及make, pkg工具。
RPM软件包管理
RPM是一种用于互联网下载包的打包和自动安装工具,会生成具有.RPM扩展名的文件,可以用来管理应用程序的安装、卸载和维护。
RPM软件包命名格式:
name-version-release.arch.rpm
RPM软件包管理的优缺点
- RPM软件包管理优点:
简单便捷,兼容版本;
参数信息记录在数据库中,便于查询、升级或卸载软件时使用。 - RPM软件包管理缺点:
安装环境需与打包环境一致;
具有很强的依赖关系,卸载软件时需要对依赖性软件优先处理,否则会导致其他软件无法正常使用。
使用RPM命令管理软件(安装、查询、升级、卸载)
RPM命令常用参数
RPM常用于安装、删除、升级、刷新和查询的场景。
语法:rpm [OPTION...]。
其中的命令选项说明如下:
-i:指定安装的软件包
-h:使用“#(hash)”符显示rpm详细的安装过程及进度
-v:显示安装的详细过程
-U:升级指定的软件包
-q:查询系统是否已安装指定的软件包或查询指定rpm包内容信息
-a:查看系统已安装的所有软件包
-V:查询已安装的软件包的版本信息
-c:显示所有配置文件
-p:查询/校验一个软件包的文件
RPM命令-安装
语法:
rpm -i example.rpm
rpm -iv example.rpm
rpm -ivh example.rpm
其中的命令选项说明如下:
-i:安装一个包
iv:安装一个包并在安装过程中显示正在安装的文件信息
ivh:安装一个包并在安装过程中显示正在安装的文件信息和进度
RPM命令-卸载
语法:
rpm -e example.rpm
rpm -e -nodeps example.rpm
rpm -e -allmatches example.rpm
其中的命令选项说明如下:
rpm软件包卸载需要考虑包与包之间的依赖性;卸载时若不考虑包的依赖性,可以使用nodeps命令(不检测依赖性)进行强制卸载;若是该软件包存在多个版本,可以使用allmatches命令进行批量卸载。
RPM命令-升级
语法:
rpm -U example.rpm
rpm -Uvh example.rpm
rpm -F example.rpm
rpm -Fvh example.rpm
其中的命令选项说明如下:
-Uvh:代表存在旧包时,欲删除旧包安装新包时使用;
-Fvh:代表存在旧包时,在旧包的基础上进行升级。
RPM-查询
语法:
rpm -q example.rpm
rpm -qa
-q:查询软件包是否安装
-qa:查询所有安装的软件包
-qf:查询所有已安装过的软件包
-qp:查询未安装的软件包
-ql:查询已安装的软件包中的文件列表和完整目录
-qi:查询软件包的详细信息
-qc:查询已安装的软件包中的配置文件
-qd:查询已安装的软件包中的帮助文档