首页 > 代码库 > Linux软件包管理03-YUM
Linux软件包管理03-YUM
一、YUM定义
1、介绍:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。每一个rpm包依赖于其它的哪些capacity,是rpm包的制作者定义的;
2、repository(仓库):yum源,包含rpm包集合、xml文档等等;
3、RedHat5光盘中的仓库:
Server:常用软件
repodata:yum源
Cluster:和集群相关的
ClusterStorage:和集群存储相关的
VT:虚拟化技术相关
二、YUM源
1、yum安装获取数据的方法:
a)yum仓库在本地某目录:
file:///
b)yum仓库在远程服务器
ftp服务器:
ftp://192.168.0.254/pub/Server
ftp://USERNAME:PASSWORD@192.168.0.254/pub/Server
http://
2、yum仓库文件说明:
a)repodata/:只有包含此目录为其子目录的那个路径才可以用作yum源;
b)repomd.xml:文件保存时间戳,可用户判断当前yum仓库中的文件是否发生变化;
c)primary.xm.gz:当前yum仓库内每一个rpm包的名字及其彼此之间的依赖关系;此外还包含每一个rpm能够安装生成的文件;
d)filelists.xml.gz:所有rpm包包含的安装生成的文件的文件列表;
e)other.xml.gz:额外信息,主要包含的是rpm包的changelog;
f)comps-rhel5-server-core.xml:rpm包包组的定义,光盘中存在;
3、yum配置文件:
/etc/yum.conf 全局配置文件
/etc/yum.repos.d/*.repo
/etc/yum/pluginconf.d/ yum插件的配置文件
4、yum配置文件:分为两段
a)全局配置文件:默认/etc/yum.conf
cachedir 缓存目录路径
keepcache 保存缓存
debuglevel 调试级别
logfile 日志文件
distroverpkg 验证rpm发行版时使用的哪个文件
tolerant 等于1表示已经安装的rpm包再次安装时就忽略安装,等于0表示已经安装的rpm再次安装时就会报错
exactarch 平台的精确匹配,等于1表示必须要做平台的精确匹配
obsoletes 是否支持检查废弃的包,等于1表示必须检查
gpgcheck 是否检查rpm的来源信息,验证rpm的签名
plugins 是否或启用支持插件
bugtracker_url 有缺陷的yum源的追踪位置
metadata_expire 表示源数据在本地缓存时间
b)分段配置
[repo]
name=Primary Yum repostitory $releasever $表示yum宏或者yum变量
baseurl=ftp://192.168.0.254/pub/Server yum源路径
enable={0|1} 0表示禁用源,1表示启用
gpgcheck={0|1} 是否检查rpm的来源信息,验证rpm的签名
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 验证rpm的签名文件
mirroelist= 包镜像位置
5、yum源配置实例:
将如下路径配置为yum仓库:
pub/Server
pub/Cluster
参考答案:vim /etc/yum.repos.d/my.repo
[Server]
name=RHEL5.8 Server
baseurl=ftp://172.16.0.1/pub/Server
enable=1
gpgcheck=0
[Cluster]
name=RHEL5.8 Cluster
baseurl=ftp://172.16.0.1/pub/Cluster
enable=1
gpgcheck=0
三、yum管理命令
1、yum常用查询命令:
a)yum list all 列出当前系统上所有的rpm包,包括已安装的和未安装的;
b)yum repolist 显示当前系统上所有可用的yum源的相关信息;
c)yum list installed 已安装的rpm
d)yum list avaliable 可以安装但未安装的rpm
e)yum list updates 可以用于升级的rpm包
f)yum grouplist 显示列出包组信息
g)yum groupinfo "group name"
h)yum info PKG_NAME 显示一个包的相关信息
i)yum provides FILE 文件是由那个包安装的
2、yum安装命令:
a)yum install PKG_NAME 安装过程自动解决依赖包或能力关系
b)yum groupinstall "GROUP_NAME" 安装包组
c)yum reinstall PKG_NAME 重新安装
d)localinstall 本地的包如果internet上有依赖会自动下载安装
3、yum卸载命令:
a)yum remove PKG_NAME 把所有相关依赖包一并卸载
b)yum groupremove "GROUP_NAME" 卸载包组
4、yum清理命令:
yum clean {all|packages|metadata} 清除/var/cache/yum中的缓存(缓存:元数据、rpm包)
5、yum升级命令:
a)yum update PKG_NAME
b)check-update 检查有哪些可升级的包
6、yum搜索命令:
yum search KEYWORD
7、yum命令的选项:
-y 自动回答为yes
--nogpgcheck 不检查签名信息
-g FILE:指定包组定义文件
四、制作本地yum源
1、yum install createrepo
2、在某路径下准备包
3、createrepo /PATH/ 会自动生成repodata文件
如:vim myum.repo
[local]
name=local/var/myum
baseurl=file:///var/myum
enable=1
gpgcheck=0
yum repolist
yum install nginx
本文出自 “Nick Liu的博文” 博客,请务必保留此出处http://zkhylt.blog.51cto.com/3638719/1426608