标签:yum
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。----来源 百度
1、yum命令:
yum [options] [command] [package ...]
command is one of:
* installpackage1 [package2] [...] 程序包安装一次可跟多个包名如果某包在不同仓库中有多个不同版本,默认会安装最新版本;如果要安装指定版本:install package_version
* update [package1] [package2] [...]程序包升级
* update-to [package1] [package2] [...]
*check-update 检查有哪些升级可用:
* upgrade [package1] [package2] [...]
* upgrade-to [package1] [package2] [...]
* distribution-synchronization [package1] [package2] [...]
* remove | erase package1 [package2] [...]卸载所有依赖于正卸载的程序包的程序会包会被一并卸载
* list [...]
* info[...]查询 info PACKAGE...
*provides | whatprovides feature1 [feature2] [...] 查询指定文件由哪个程序生成、
* clean [ packages包 | metadata元数据 | expire-cache过期 | rpmdb | plugins插件 | all ] 清理缓存
* makecache 自动连接至每一个可用仓库,下载其元数据将其创建为缓存;
* groupinstall group1 [group2] [...] 安装
* groupupdate group1 [group2] [...] 升级
*grouplist [hidden] [groupwildcard] [...]列出当前仓库可用的包组
* groupremove group1 [group2] [...] 卸载
* groupinfo group1 [...] 显示指定包组详情
*search string1 [string2] [...] 在包和sumary信息中搜索指定的关键字:search KEYWORD...
* shell [filename]
* resolvedep dep1 [dep2] [...]
*localinstall rpmfile1 [rpmfile2] [...]安装本地的程序包文件,用于安装仓库中并不存在的程序包文件,这些程序包有可能又依赖于仓库中的某些程序包;
(maintained for legacy reasons only- use install)
* localupdate rpmfile1 [rpmfile2] [...]
(maintained for legacy reasons only- use update)
*reinstall package1 [package2] [...]重新安装(覆盖安装)
*downgrade package1 [package2] [...] 程序包降级
* deplist package1 [package2] [...]
* repolist [all|enabled|disabled] 列出已经配置的所有可用仓库
程序包查看:
yum list [all |glob_exp1] [glob_exp2] [...]
yum list {available未安装包的包|updates可升级的|installed安装过的|extras本机安装过但是仓储没有此包|obsoletes(本机有新版本可被废弃的包)} [glob_exp1] [...]
grouplist [hidden][groupwildcard] [...]
程序包安装:
install package1[package2] [...]
Note: 只需要提供包名;
如果某包有在不同仓库中有多个不同版本,默认会安装最新版本;
如果要安装指定版本:install PACKAGE-VERSION ...
重新安装(覆盖安装)
reinstall package1[package2] [...]
程序包升级:
update [package1][package2] [...]
程序包降级:
downgrade package1[package2] [...]
检查有哪些升级可用:
check-update
卸载:
remove | erase package1[package2] [...]
所有依赖于正卸载的程序包的程序包会被一并卸载;
查询:
查询程序的相关简要信息:info PACKAGE ...
在包名和sumary信息中搜索指定的关键字:search KEYWORD ...
查询指定文件由哪个程序包安装生成:provides|whatprovides /PATH/TO/SOMEFILE
安装或升级本地的程序包文件:
localinstall rpmfile1[rpmfile2] [...]
用于安装仓库中并不存在的程序包文件,这些程序包有可能又依赖于仓库中的某些程序包;
localupdaterpmfile1 [rpmfile2] [...]
包组管理:
列出所有包组:grouplist
显示指定包组详情:groupinfo group1 [...]
安装:groupinstallgroup1 [group2] [...]
卸载:groupremovegroup1 [group2] [...]
升级:groupupdategroup1 [group2] [...]
Note: 可直接用install、remove或update来管理包组:
@GROUP_NAME
yuminstall @"Server Platform Development"
2、yum 核心其实在于yum仓库 首先我们看一下YAM仓库的创建
yam仓库配置文件
Cat /etc/yum.conf yum [main]核心配置项仓库共享的公共信息
[main] 核心配置段,提供公共配置信息
各仓库放在yum.repos.d 下以.repo结尾
Yum.conf配置详解
Cachedir:缓存目录
Keepcache:缓存包是否保存在缓存中
Debugleve1:调试级别
logfile:日志文件存放位置
exactarch:是否和当前版本匹配
obsoletes:是不是检测安装包是否被遗弃
gpgcheck:配置是否在安装前检测安装包来源合法性和完整性
plugins:yum是否支持插件
installonly_limit:一次安装程序包个数显示
bugtracker_url:bug追踪
distroverpkg:发行版版本包
各仓库配置
[repositoryid]
#对于当前系统的yum来说,此repositoryid用于唯一标识此repository指向,因此其必须唯一;
Name=
#当前仓库描述信息;
Baseurl:
#指明repository的访问路径;通常为一个文件服务器上输出的某repository;
url:
ftp服务器
ftp://SERVER/PATH/TO/REPOSITORY
HTTP:服务器
http://SERVER/PATH/TO/REPOSITORY
本地路径:
Enabled={1 |0}
此仓库是否可被使用
Gpgcheck={1|0}
是否对程序包做校验
Gpgkey=url://path/to/keyfile
校验地址,如果gpgcheck启用必须开启gpgkey
Cost:
开销小优先级越高。指明当前repository的访问开销,默认为1000
配置yum仓库
Cd /etc/yum.repos.d/
Mv centos6.6.repo centos6.6repo.old
Vim test.repo
内容如下
[base] 单个单词不能和其他同名
Name=centos 6.6 x86_64 DVD1
BASEURL=file:///data/mydata
Gpgcheck=0
Enable=1
Yumrepolist 列出可用仓库
清理缓存: yum clean all 或直接删除目录
Rm –rf /var/cache/yum/*
Yum repolist 重新建立列表
Tree /var/cache/yum 使用tree查看目录信息
确定repository 的输出方式;
本地输出:提供一个放置rpm包的本地路径
网络输出:提供一个文件服务器,配置好FTP服务器或HTTP服务器;
Ftp服务;
安装程序包:vsftpd
http服务:
安装服务包:httpd
仓库管理:
repolist: 列出已经配置的所有可用仓库
repolist[all|enabled|disabled]
缓存管理:
clean:清理缓存
clean[ packages | metadata | expire-cache | rpmdb | plugins | all ]
makecache: 缓存创建
自动连接至每一个可用仓库,下载其无数据,将其创建为缓存;
标签:yum
原文地址:http://nickxu.blog.51cto.com/1207271/1631591