一、RPM
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及TurboLinux等Linux的分发版本都有采用,可以算是公认的行业标准了。
RPM主要功能在于对linux中以.rpm为后缀的软件包的安装、升级、卸载、校验及查询进行便捷管理。
1、安装软件包及常用选项
rpm {-i|--install} [install-options]PACKAGE_FILE ...
-v: 打印详细信息――通常常规进展消息将显示出来。还可以使用-vv,-vvv将显示更详细信息。
-h: 打印50散列标志的包打开存档。通常与-v一起使用
--replacepkgs:重新安装
--nodeps: 忽略依赖关系
--test: 测试安装,而不执行真正的安装过程
例如安装a2ps-4.14-10.1.el6.i686.rpm,则执行安装命令:
rpm�Civh a2ps-4.14-10.1.el6.i686.rpm
2、升级软件包及常用选项
rpm {-U|--upgrade} [install-options]PACKAGE_FILE ...
表示如果有较旧版本软件包,则升级安装;否则,则执行安装操作
rpm {-F|--freshen} [install-options]PACKAGE_FILE ...
表示如果有较旧版本软件包,则升级安装;否则,中止安装操作
-v : 打印详细信息――通常常规进展消息将显示出来。还可以使用-vv,-vvv将显示更详细信息。
-h: 打印50散列标志的包打开存档。通常与-v一起使用
--oldpackage:降级安装
--force: 忽略冲突,强制执行过程
注意:不要对内核包执行升级操作;linux支持多版本内核并存,因此,对新版本内核可直接安装;如果原软件包的配置文件安装后曾被改动,升级时,新版本的文件并不会直接覆盖老版本的文件,而是把新版本的文件重命(加后缀.rpmnew)名后保留
3、卸载软件包及常用选项
rpm -e PACKAGE_NAME ...
--nodeps: 忽略依赖关系
--test: 卸载测试
注意:如果包的配置文件安装后曾被改动过,卸载时,此文件将不会删除,而是被重命名(原文件加.rpmsave后缀)并保留
4、查询软件包及常用选项
rpm{-q|--query} [select-options] [query-options]
[select-options]:
rpm-q PACKAGE_NAME ... 查询某包是否安装
rpm-qa 查询已安装的所有包
rpm -qf /path/to/somefile 查询某文件是由哪个包安装生成:
rpm -qpl PACKAGE_FILE或者
rpm-qpi PACKAGE_FILE 查询尚未安装包的相关信息
[query-options]
rpm-qi PACKAGE_NAME 查询某包的简要说明信息
rpm -ql PACKAGE_NAME 查询某包安装后生成的所有文件的列表
rpm-qc PACKAGE_NAME 查询某包安装后生成的所有配置文件的列表
rpm-qd PACKAGE_NAME 查询某包安装后生成的所有帮助文件的列表
rpm-q --changelog PACKAGE_NAME 查询某rpm包制作时随版本变化的changelog列表信息
rpm-q --provides PACKAGE_NAME 查询某包提供的capabilities
rpm-q --requires PACKAGE_NAME 查询某包所依赖的capabilities
rpm-q �Cscripts 查询某包安装卸载时的脚本
5、校验软件包及常用选项
1、 rpm-V PACKAGE_NAME 检查软件包安装后的文件是否发生了改变
2、 rpm-K PACKAGE_FILE 包来源合法性及完整性验正,在检查之前,我们需要导入KEY:rpm --import PUBKEY
--nosignature:不检查来源合法性
--nodigest: 不检查完整性
二、YUM
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
yum一般用法如下:yum [options] [command] [package ...]
1、安装软件包
yum install PACKAGE_NAME 安装软件包
yum reinstall PACKAGE_NAME 重新安装软件包
加-y 表示安装过程中全部选择为yes
2、 升级软件包
yum update PACKAGE_NAME
yum downgrade PACKAGE_NAME 降级安装
3、卸载软件包
yum erase|remove PACKAGE_NAME
4、 查询软件包
yum list all列出软件包
yum info PACKAGE_NAME 查询包的简要信息
yum search KEYWORD: 根据关键字模糊查询包名或包的sumary信息包含此KEYWORD的相关列表
yum provides|whatprovides /path/to/somefile 查询文件由哪个包提供
5、 包组管理
yum grouplist 显示所有包组
yum groupinfo "GROUP_NAME" 显示某包组的相关信息
yum groupinstall "GROUP_NAME" 安装包组
yum groupremove "GROUP_NAME" 卸载包组
yum groupupdate "GROUP_NAME" 升级包组
6、其他常用命令
yum repolist 列出所有可用yum源
yum clean all 清空所有缓存