程序包管理:RPM YUM的总结
一、RPM的简介
RPM 是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,是公认的行业标准。
二、RPM程序包管理的用途
1、可以安装、删除、升级和管理软件;当然也支持在线安装和升级软件;
2、通过RPM包管理能知道软件包包含哪些文件,也能知道系统中的某个文件属于哪个软件包;
3、可以在查询系统中的软件包是否安装以及其版本;
4、作为开发者可以把自己的程序打包为RPM 包发布;
5、软件包签名GPG和MD5的导入、验证和签名发布
6、依赖性的检查,查看是否有软件包由于不兼容而扰乱了系统;
三、RPM 的使用权限
RPM软件的安装、删除、更新只有root权限才能使用;对于查询功能任何用户都可以操作;如果普通 用户拥有安装目录的权限,也可以进行安装。
四、RPM软件包管理的查询功能
命令格式
rpm {-q|--query} [select-options] [query-options]
RPM的查询功能是极为强大,是极为重要的功能之一;举几个常用的例子,更为详细的具体的, 请参考#man rpm
1、对系统中已安装软件的查询;
1)查询系统已安装的软件;
语法:rpm -q 软件名
举例:[root@localhost beinan]# rpm -q gaim gaim-1.3.0-1.fc4
-q就是 --query,此命令表示是不是系统安装了gaim ;如果已安装会有信息输出。如果没有 安装会输出gaim 就没有安装的信息;
查看系统中所有已经安装的包,要加 -a 参数 ;
[root@localhost RPMS]# rpm -qa 如果分页查看,再加一个管道 |和more命令;
[root@localhost RPMS]# rpm -qa |more
在所有已经安装的软件包中查找某个软件,比如说 gaim ;可以用 grep 抽取出来;
[root@localhost RPMS]# rpm -qa |grep gaim 结果和 rpm -q gaim 输出的结果是一样的;
2)查询一个已经安装的文件属于哪个软件包;
语法 rpm -qf 文件名 注:文件名所在的绝对路径要指出
举例:[root@localhost RPMS]# rpm -qf /usr/etc/text1
3)查询已安装程序包都安装到何处
语法:rpm -ql [软件名] 或 rpm rpmquery -ql [软件名]
举例:[root@localhost RPMS]# rpm -ql lynx
[root@localhost RPMS]# rpmquery -ql lynx
4)查询一个已安装软件包的信息
语法格式: rpm -qi 软件名
举例:[root@localhost RPMS]# rpm -qi lynx
5)查看一下已安装软件的配置文件;
语法格式:rpm -qc 软件名
举例:[root@localhost RPMS]# rpm -qc lynx
6)查看一个已经安装软件的文档安装位置:
语法格式: rpm -qd 软件名
举例:[root@localhost RPMS]# rpm -qd lynx
7)查看一下已安装软件所依赖的软件包及文件;
语法格式: rpm -qR 软件名
举例:[root@localhost beinan]# rpm -qR rpm-python
查询已安装软件的总结:对于一个软件包已经安装,我们可以把一系列的参数组合起来用;
例如 rpm -qil ;
[root@localhost RPMS]# rpm -qil lynx
2、对于未安装的软件包的查看:
查看的前提是您有一个.rpm 的文件,也就是说对既有软件file.rpm的查看等;
1)查看一个软件包的用途、版本等信息;
语法: rpm -qpi file.rpm
举例:[root@localhost RPMS]# rpm -qpi lynx-2.8.5-23.i386.rpm
2)查看一件软件包所包含的文件;
语法: rpm -qpl file.rpm
举例:[root@localhost RPMS]# rpm -qpl lynx-2.8.5-23.i386.rpm
3)查看软件包的文档所在的位置;
语法: rpm -qpd file.rpm
举例:[root@localhost RPMS]# rpm -qpd lynx-2.8.5-23.i386.rpm
4)查看一个软件包的配置文件;
语法: rpm -qpc file.rpm
举例:[root@localhost RPMS]# rpm -qpc lynx-2.8.5-23.i386.rpm
五、Yum的简介
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令。
六、Yum的配置
1、建立yum源
(1)将你想提供的rpm包统一放进一个目录中,以这个目录作为源的地址。
(2)要在这个目录中建立yum的下载源数据,通过createrepo这个软件来建立(需要安装过这个软 件)
命令:createrepo /var/ftp/pub/
这个文件夹是在建立了ftp服务器之后的存放文件的主文件夹,当然只有开启ftp服务之后才能从网 络访问它。
2、设置Yum( 设置yum包括设置两部分内容)
(1)设置Yum软件自身的内容
对yum.conf文件进行设置,该文件就存放在/etc/目录下
具体设置方法可以通过man yum.conf进行查询
(2)Yum源定义文件
该文件比较重要,存放在/etc/yum.repos.d/目录下。文件名可以自己创建,但后缀一 定要是repo
该文件的编辑语法为:
[testrhce]
name=study linux for rhce
baseurl=ftp://192.168.1.1/pub/
enable=1
gpgcheck=1
在同一个文件中可以定义两个源
在编辑好这个文件后就可以使用yum来下载更新源中所包含的rpm软件包了。
3、yum使用方法
(1)yum 缓存清理 yum clean all 这条命令会清除/var/cache/yum/目录中的所有内容, 如果yum运行不正常用此命令。
(2)列出已安装的软件包 yum list installed
(3)列出yum软件包群组 yum grouplist
(4)获取rpm包的信息 yum info tigervnc 同 rpm -qi
(5)搜索rpm包 yum search tigervnc
(6)安装rpm包 yum install tigervnc
(7)卸载rpm包 yum remove tigervnc
七、命令格式
yum的命令形式一般是如下:
yum [options] [command] [package ...]
其中的[options]是可选的,[command]为所要进行的操作,[package ...]是操作的对象。
常用选项:
h(帮助),
-y(当安装过程提示选择全部为"yes")
-q(不显示安装的过程)
八、部分常用的命令包括
自动搜索最快镜像插件: yum install yum-fastestmirror
安装yum图形窗口插件: yum install yumex
查看可能批量安装的列表: yum grouplist
1、安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2、更新和升级
yum update 全部更新
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string
根据关键字string查找安装包
4 删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
清除缓存目录下的软件包及旧的headers
来源:oschina
链接:https://my.oschina.net/u/4327913/blog/4317408