Linux :RPM 和 YUM管理
命令:
wget -p /opt https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm 下载rpm包
rpm -qa 查询所安装的所有rpm软件包
rpm -qa | grep xxx 查询指定rpm软件包
rpm -q 软件包名 查询软件包是否安装
rpm -qi 软件包名 查询软件包信息
rpm -ql 软件包名 查询软件包中的文件
rpm -qf 文件全路径名 查询文件所属的软件包
rpm -e RPM包的名称 如果删除不了加上参数--nodeps
rpm -ivh RPM包全路径名称 安装软件
yum list|grep xx 软件列表
yum install xxx 下载安装
yum check-update 列出任何可更新的软件清单
yum update 安装任何更新软件
yum install xxx 仅安装指定的软件
yum update xxx 仅更新指定的软件
yum remove xxx YUM删除软件包
yum search *** 使用YUM查找软件包
yum list updates 列出任何可更新的软件包
yum list installed 列出任何已安装的软件包
yum list extras 列出任何已安装但不在 Yum Repository 內的软件包
yum list *** 列出所指定的软件包
yum info *** 使用YUM获取软件包信息
yum info 列出任何软件包的信息
yum info updates 列出任何可更新的软件包信息
yum info installed 列出任何已安裝的软件包信息
yum info extras 列出任何已安裝但不在 Yum Repository 內的软件包信息
yum provides 列出软件包提供哪些文档
一、rpm包的管理
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的
标志,但理念是通用的。Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。
1.1 rpm包的简单查询指令:
查询已安装的rpm列表 rpm –qa|grep xx
rpm包名基本格式:
一个rpm包名:firefox-45.0.1-1.el6.centos.x86_64.rpm
名称:firefox
版本号:45.0.1-1
适用操作系统: el6.centos.x86_64
表示centos6.x的64位系统
如果是i686、i386表示32位系统,noarch表示通用。。
1.2 rpm包的其它查询指令:
rpm -qa :查询所安装的所有rpm软件包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox ]
rpm -q 软件包名 :查询软件包是否安装
rpm -q firefox
rpm -qi 软件包名 :查询软件包信息
rpm -qi file
rpm -ql 软件包名 :查询软件包中的文件
rpm -ql firefox
rpm -qf 文件全路径名 查询文件所属的软件包
rpm -qf /etc/passwd
rpm -qf /root/install.log
1.3 卸载rpm包
基本语法
rpm -e RPM包的名称 如果删除不了加上参数--nodeps
• 应用案例
1) 删除firefox 软件包
• 细节讨论
1) 如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
如: $ rpm -e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
2) 如果我们就是要删除 foo这个rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一
般不推荐这样做,因为依赖于该软件包的程序可能无法运行
如:$ rpm -e --nodeps foo
1.4 安装rpm包
基本语法
rpm -ivh RPM包全路径名称
• 参数说明
i=install 安装
v=verbose 提示
h=hash 进度条
• 应用实例
1) 演示卸载和安装firefox浏览器
二、yum 包管理
介绍:
Yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包
yum的基本指令
• 查询yum服务器是否有需要安装的软件
yum list|grep xx软件列表
• 安装指定的yum包
yum install xxx 下载安装
yum应用实例:
案例:请使用yum的方式来安装firefox
*********************************************************************************************************************************************
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理 依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
在我们平时对CentOS的软件安装中,yum命令在查找安装盘中的rpm比较快,现将收集的一些常用命令整理如下:
1.列出任何可更新的软件清单
命令:yum check-update
2.安装任何更新软件
命令:yum update
3.仅安装指定的软件
命令:yum install ***
4.仅更新指定的软件
命令:yum update ***
5.列出任何可安裝的软件清单
命令:yum list
用YUM安装删除软件
装了系统添加删除软件是常事,yum同样能够胜任这一任务,只要软件是rpm安装的。
安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,假如有,则检查其依赖冲突关系,假如没有依赖冲突,那么最好,下载安装;假如有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,您能够自己作出判断。
删除的命令是,yum remove xxx,同安装相同,yum也会查询数据库,给出解决依赖关系的提示。
1.用YUM安装软件包
命令:yum install ***
2.用YUM删除软件包
命令:yum remove ***
用YUM查询软件信息
我们常会碰到这样的情况,想要安装一个软件,只知道他和某方面有关,但又不能确切知道他的名字。这时yum的查询功能就起作用了。您能够用 yum search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用 yum search messenger这样的指令进行搜索,yum会搜索任何可用rpm的描述,列出任何描述中和messeger有关的rpm包,于 是我们可能得到gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们能够用yum info packagename这个指令来获取信息。
1.使用YUM查找软件包
命令:yum search ***
2.列出任何可安装的软件包
命令:yum list
3.列出任何可更新的软件包
命令:yum list updates
4.列出任何已安装的软件包
命令:yum list installed
5.列出任何已安装但不在 Yum Repository 內的软件包
命令:yum list extras
6.列出所指定的软件包
命令:yum list ***
7.使用YUM获取软件包信息
命令:yum info ***
8.列出任何软件包的信息
命令:yum info
9.列出任何可更新的软件包信息
命令:yum info updates
10.列出任何已安裝的软件包信息
命令:yum info installed
11.列出任何已安裝但不在 Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文档
命令:yum provides
清除YUM缓存
yum 会把下载的软件包和header存储在cache中,而不会自动删除。假如我们觉得他们占用了磁盘空间,能够使用yum clean指令进行清除,更精确 的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all一 股脑儿端 .
1.清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages
2.清除缓存目录(/var/cache/yum)下的 headers
命令:yum clean headers
3.清除缓存目录(/var/cache/yum)下旧的 headers
命令:yum clean oldheaders
4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders).