yum(全称为Yellow dog Updater,Modified)是一个在fedora和redhat以及SUSE.Centos中的shell前端
软件包管理器.基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,
并且一次安装所有依赖的软件包;无须繁琐地一次次下载,安装
常用命令行命令
安装软件:yum install xxx.rpm
删除软件: yum remove xxx.rpm 或者yum eease xxx.rpm
升级软件: yum update xxx
查询信息: yum info xxx
搜索软件: yum search info
显示软件包依赖关系: yum deplist foo
-e 静默执行
-t 忽略错误
-R 设置等待时间
-y 自动应答YES
--skip-broken 忽略依赖关系
check-update 检查可更新的包
clean 清除全部
clean packages 清除临时包文件(/var/cache/yum下文件)
clean headers 清除rpm头文件
clean oldheaders 清除旧的rpm头文件
deplist 列出包的依赖
list 可安装和可更新的RPM包
list installed 已安装的包
list extras 已安装且不在资源库的包
info 可安装和可更新的rpm包 信息
info installed 已安装包的信息 (-qa 参数相似)
install [rpm包] 安装包
localinstall 安装本地的RPM包
update 更新包
search 搜索包
provides 搜索制定包文件名
reinstall 重新安装包
repolist 搜索资源库的配置
resolvedep 指定依赖
remove 卸载包
yum:
能自动解决依赖关系
yum repolistory : 支持三种服务:
ftp://
http://
file:/// 自己创建yum仓库
yum 客户端的配置文件由两部分组成:
1./etc/yum.conf
2./etc/yum.repos.d/*.repo
在/etc/yum.conf中[main]配置端 定义了全局属性
cachedir=/var/cache/yum 放在一个缓存目录
keepcache=0
debuglevel=2
logfile=/var/log/yum.log 日志位置
distrovepkg=redhat-release 放行版
tolerant=1 允许出错一个软件包没安装可以允许安装其他软件包的
exactarch=1 精确匹配平台版本
obsoletes=1 是否检查已经废弃的包子配置文件
gpgcheck=1 安装之前是否检查软件的签名等于1表示检查
plugins=1 启动插件与否
metadata_expir=1h 原数据的过期时间
在/etc/yum.repos.d/server.repo 中每个[]的表示yum源的识别符号
name=用于制定yum 源的完整名称
baseurl = 制定yum源在什么地方
gpgcheck=0是否检查签名 0表示不检查 1是检查
enabled=0是不是启用这个yum源 默认是启用 不启用是0
yum 源中有一个目录为repodata,在这个目录中有五个文件分别是:
repodata目录也是yum源的元数据文件目录
2.filelist.xml.gz : 此yum源中每一个rpm包中文件的相关的信息
debuglevel=2
name=用于制定yum 源的完整名称
baseurl = 制定yum源在什么地方
gpgcheck=0是否检查签名 0表示不检查 1是检查
enabled=0是不是启用这个yum源 默认是启用 不启用是0
yum 源中有一个目录为repodata,在这个目录中有五个文件分别是:
repodata目录也是yum源的元数据文件目录
1.primary.xml.gz 此yum源中所有的rpm文件及其彼此间的依赖关系;还包含了每一个rpm中的文件名
2.filelist.xml.gz : 此yum源中每一个rpm包中文件的相关的信息
3.other.xml.gz 额外信息 ,比如changlog 等.
4.repomd,xml 校验码和时间戳最近一次的修改时间
5.comps-x-server-core.xml:软件包的分组信息
所以想要创建一个yum源必须要有个repodata目录,如果创建repodata,要使用这个工具
我们首先安装才能使用,我们又要用到yum,在系统盘中找到createrepo这个软件.
rpm -ivh creterepo...
那我们第二步就是用createrepo这个工具来生成repodata这个目录了,直接来用:#createrepo后面跟上你的软件包目录即可。>(这个软件包通常在我们的系统盘就有只要挂载拷贝一下即可)生成repodata这个目录后我们的yum源可以说已经完成了,就是差在
配置文件中定义上就行了。
第三步就是在yum源的配置文件中定义上。在/etc/yum.repo.d/中定义一个以.repo结尾的文件并定义yum源即:
[id]
name=##
baseurl=file:///你repodata所在的目录
gpgcheck=0
enabled=1
保存退出
用#yum repolist all 来显示所有的yum源
查看是否创建成功。
以上是我们手动的创建一个yum源,但是有一个缺陷,就是没有组包。这就要用到createrepo的命令的选项-g
#createrepo -g 跟上软件包的路径和原来文件中的comps-rhel5-server-core.xml 跟上创建yum源的路径 ,回车即可。
以上就是我们手动制作yum源的过程。这时我们可以用#yum localinstall 这个命令来安装我们的软件了。
其实我们也可以在yum源配置文件中直接把baseurl直接指向系统盘也可以,但是有时我们安装的软件包在系统盘中找不到依赖关
系。所以手动制作一个本地 yum源还是很必要的。
原文:http://limeizhi.blog.51cto.com/2267772/1386357