Linux系统yum配置、管理及应用参考

1.yum简介
yum是Yellowdog update Modified的缩写。yum自动化升级、安装/移除rpm包,收集rmp包的相关信息,检查依赖性,并提示用户进行解决。正常使用yum,关键是要有可靠的repository,其可以是http或ftp站点,也可以是本地安装源,但都必须包含rpm的header,其包含rmp相关的描述、功能、文件、依赖性等信息,依靠这些信息,yum能自动化完成安装等相关任务,yum最明显的特点和优势就是自动解决rpm包间的依赖关系,并能自动的进行解决和安装。

2.yum配置文件
yum配置文件默认为/etc/yum.conf,其包含yum相关的一切配置信息,也是yum最重要的内容。配置文件yum.conf一般分为main和repository两部分,但默认只有main部分。每一个yum.conf只能有一个main部分。repository 部分定义了每个安装源的具体配置信息,可以有一到多个。通常情况下,repository位于/etc/yum.repo.d 目录下的文件中。
# cat /etc/yum.conf
--注:
1)cachedir:指定用于缓存yum下载rpm包的目录,yum下载的rpm包和数据库存储于该目录。
2)keepcache:指定yum下载rpm安装包的缓存策略,1:安装后保留rpm包;0:安装后删除rpm包。
3)debuglevel:指定yum日志级别,值范围为0-10,默认为2(仅保留安装和删除记录)。
4)logfile:指定yum日志文件的位置和名字,以存放系统更新软件的记录。
5)pkgpolicy:指定在多个安装源间安装包的策略,值为newest或last。其决定同一安装包同时存在于多个repository中时,yum应该安装哪一个,如值为newest,则选择版本最新的安装包;如值为last,则先以server id的字母顺序排序,并选择排在最后服务器上的安装包。
6)distroverp:指定一个软件包,yum会根据这个包判断你的发行版本,默认是RedHat-release,也可以是其他安装包,例如:Centos-release。
7)tolerent:指定容错策略,值为1或0,值为1,则不报错,否则,报错,默认为0。
8)exactarch:指定CPU体系相关包升级策略,值为1或0,如为1,则只升级与已安装软件包CPU体系一致的包,否则,也升级与已安装软件包CPU体系不一致的包。
9)retries:指定网络连接发生错误后的重试次数,如果0,则将无限重试。
10)obsoletes:指定陈旧包的更新策略,值为1或0,如为1,则更新陈旧的rpm包,否则,不更新。
11)gpgcheck:指定是否检查GPG(GNU Private Guard),GPG为一种密钥方式签名。
12)plugins:指定是否允许使用插件,值为1或0,默认是0(不允许),但一般会用yum-fastestmirror插件。
13)installonly_limit:指定可以保留内核包的最大数目。
14)exclude:指定不想更新的rpm包,可以使用通配符,多个rpm包间用空格分隔。
15)reposdir:指定.repo 文件的绝对路径。.repo 文件包含软件仓库的相关信息(与 /etc/yum.conf 文件中[repository]部分作用相同)。
16)bugtracker_url:指定bug追踪路径。

3.repo文件
1)简介
repo文件是yum源(软件仓库)的配置文件,一般地,一个repo文件定义了一个或者多个软件仓库的具体信息,像:从哪里下载软件包。其通常在/etc/yum.repos.d/目录下。其中:
--CentOS-Base.repo:yum网络源的配置文件(通常都会使用该文件)。
--CentOS-Media.repo:光盘挂载后光盘源的配置文件。
--CentOS-Debuginfo.repo:debug及内核相关软件源的配置文件。
--CentOS-Vault.repo:之前旧版本yum源的配置文件。
--CentOS-CR.repo:当前系统后续版本yum源的配置文件。
--epel.repo:EPEL(Extra Packages for Enterprise Linux):RHEL 及CentOS等衍生版本上高质量软件包yum源的配置文件。安装EPEL后,可以通过yum install epel-release 直接安装相关软件,如:nginx、htop、ncdu、vnstat等。

2)配置文件
--[serverid]:用于区别不同repository的、独一无二的名称。若重复,则后面将前面的覆盖掉。
--name:对repository的描述,支持类似$releasever、$basearch的变量。
--baseurl:服务器设置中最重要的部分,要想从服务器获取软件,这里必须设置正确才行。其中,url支持http:// ftp:// file://三种协议,baseurl后可跟多个url,也可改为速度比较快的镜像站,但baseurl有且只能有一个。
其中url必须指向这个repository header目录的上一级目录,同时,也支持类似$releasever $basearch的变量。
--mirrorlist:指定一个镜像服务器的地址列表,通常是开启的,也可以通过加注释符号(#)将其禁用,也可将其中的$releasever和$basearch替换对应的版本和架构,如6和i386等。浏览器中打开该地址,就可以看到一长串镜可用的镜像服务器地址列表。
--gpgcheck:指定是否检查GPG(GNU Private Guard),GPG为一种密钥方式签名。仅作用于当前服务器。默认为1。
--exclude:指定不想更新的rpm包,可以使用通配符,多个rpm包间用空格分隔。仅作用于当前服务器。
--failovermethod:指定服务器连接失败时的故障转移方法,既多个服务器间选择下一服务器的次序,值为roundrobin或priority,前者为下一个,依次循环;后者为根据url次序从第一个开始。默认为roundrobin。
--enabled:指定启用或禁用软件仓库,值为0或1,0为禁用,1为开启。默认为1。
--enablegroups:指定是否基于组批量管理软件包,值为0或1,0为禁用,1为开启。默认为1。
--注:
1)$releasever:指定发行版本的变量,从[main]部分的distroverpkg获取,如没有,则根据redhat-release进行判断。
2)$arch:指定发行软件的cpu体系,如:i686,athlon等。
3)$basearch:指定发行软件cpu的基本体系组,如:i386,alpha等。

4.yum命令
1)语法
yum [options] [command] [package ...]
2)获取帮助
yum -h 
或 
yum --help
3)列出所有可用于更新的软件清单
yum check-update
4)更新所有软件、系统版本和内核
yum update(比yum upgrade常用)
5)更新所有软件、系统版本:
yum upgrade
6)仅安装指定的软件包:
yum -y install ...
7)仅更新指定的软件包
yum update ...
8)列出所有可安装的软件清单
yum list
9)删除软件包
yum remove ...
10)查找指定软件包
yum search
11)查看yum仓库列表
yum repolist
12)清除缓存
--清除缓存目录下的软件包
yum clean packages
--清除缓存目录下的 headers
yum clean headers
--清除缓存目录下的所有软件包及旧headers
yum clean all
13)建立本地缓存
yum makecache
14)列出指定软件包的依赖关系
yum deplist
15)安装中文支持的软件包(安装一类或一组软件包,需在install前加group,卸载软件包组时需将install换为remove)
yum -y groupinstall "Chinese Support" 
16)安装用于开发的软件包(同上)
yum -y groupinstall "Development Tools" 
yum -y groupinstall "Development Libraries"
15.安装用于提高速度的yum插件
yum -y install yum-fastestmirror

你可能感兴趣的:(Linux,linux,yum,repo,install,remove)