欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

yum配置与使用(很详细) 有大用

yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.repos.d目录下增加.repo文件。
一、yum的配置文件

 
$ cat /etc/yum.conf         
 
复制代码            
[main]
cachedir=/var/cache/yum         #yum下载的RPM包的缓存目录
keepcache=0             #缓存是否保存,1保存,0不保存。
debuglevel=2             #调试级别(0-10),默认为2(具体调试级别的应用,我也不了解)。
logfile=/var/log/yum.log         #yum的日志文件所在的位置
exactarch=1             #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。
obsoletes=1             #这是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。
gpgcheck=1             #是否检查GPG(GNU Private Guard),一种密钥方式签名。
plugins=1             #是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。
installonly_limit=3         #允许保留多少个内核包。
exclude=selinux*         #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。
#       This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
# It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m
# PUT YOUR REPOS HERE or IN separate files named file.repo
# in /etc/yum.repos.d
复制代码            
   
 
二、*.repo文件详解
   
什么是repo文件?
repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!
我们以一份系统自带的repo文件做为实例来探讨(#号后面是我加的注释):

[fedora]      #方括号里面的是软件源的名称,将被yum取得并识别    

name=Fedora $releasever - $basearch   #这里也定义了软件 仓库的名称,通常是为了方便阅读配置文件,一般没什么作用,$releasever变量定义了发行版本,通常是8,9,10等数字,$basearch变 量定义了系统的架构,可以是i386、x86_64、ppc等值,这两个变量根据当前系统的版本架构不同而有不同的取值,这可以方便yum升级的时候选择 适合当前系统的软件包,以下同……
failovermethod=priority   #failovermethod 有两个值可以选择,priority是默认值,表示从列出的baseurl中顺序选择镜像服务器地址,roundrobin表示在列出的服务器中随机选择
exclude=compiz* *compiz* fusion-icon* #exclude这个选项是后来我自己加上去的,用来禁止这个软件仓库中的某些软件包的安装和更新,可以使用通配符,并以空格分隔,可以视情况需要自行添加
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
#上面的一行baseurl第一个字符是'#'表示该行已经被注释,将不会被读取,这一行的意思是指定一个baseurl(源的镜像服务器地址)
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
#上面的这一行是指定一个镜像服务器的地址列表,通常是开启的,本例中加了注释符号禁用了,我们可以试试,将$releasever和$basearch替换成自己对应的版本和架构,例如10和i386,在浏览器中打开,我们就能看到一长串镜可用的镜像服务器地址列表。
选择自己访问速度较快的镜像服务器地址复制并粘贴到repo文件中,我们就能获得较快的更新速度了,格式如下baseurl所示:

baseurl=
ftp://ftp.sfc.wide.ad.jp/pub/Linux/Fedora/releases/10/Everything/i386/os
http://ftp.chg.ru/pub/Linux/fedora/linux/releases/10/Everything/i386/os
http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora/linux/releases/10/Everything/i386/os
http://mirror.nus.edu.sg/fedora/releases/10/Everything/i386/os
http://mirror.yandex.ru/fedora/linux/releases/10/Everything/i386/os
http://ftp.twaren.net/Linux/Fedora/linux/releases/10/Everything/i386/os
http://ftp.itu.edu.tr/Mirror/Fedora/linux/releases/10/Everything/i386/os

enabled=1 #这个选项表示这个repo中定义的源是启用的,0为禁用
gpgcheck=1 #这个选项表示这个repo中下载的rpm将进行gpg的校验,已确定rpm包的来源是有效和安全的
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch #定义用于校验的gpg密钥    

##以下的软件仓库基本上用不到,选项含义同上
[fedora-debuginfo]
name=Fedora $releasever - $basearch - Debug
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch

[fedora-source]
name=Fedora $releasever - Source
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/source/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-source-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch

 

 

     
   
    

另外,关于yum的选项可以man一下:
List of Commands:
 
复制代码        
check-update       检查可提供的包升级
clean              删除缓存数据
deplist            列出包依赖相关
erase              移除一个或多个包从你的系统
groupinfo          显示关于包组的细节
groupinstall       从组里安装软件包到你的系统
grouplist          列出当前的组
groupremove        在一个组中移除包从您的系统
help               显示帮助用法信息
info               显示关于包或一组包的细节信息
install            安装一个或多个软件包在你的系统
list               列出一个包或某组的包
localinstall       安装本地 RPM
makecache          生成原数据缓存
provides           Find what package provides the given value
reinstall          重新安装一个包
repolist           显示软件仓库的配置
resolvedep         决定哪个包提供了给定的依赖
search             查找包细节居给定的字符串
shell              运行交互式的yum shell
update             更新一个或多个包在你的系统
upgrade            Update packages taking obsoletes into account
Options:
-h, --help                show this help message and exit
-t, --tolerant            be tolerant of errors
-C                        从缓冲中运行,而不是升级缓存
-c  [config file]         config file location
-R  [minutes]             最大化的命令等待时间
-d  [debug level]         调试输出级别
--showduplicates          显示复制, 在repo,list/search命令下
-e  [error level]         错误输出级别
-q, --quiet               安静的操作
-v, --verbose             verbose operation
-y                        回答所有的问题为是
--version                 显示 YUM版本信息并退出
--installroot=[path]  设置为root安装
--enablerepo=[repo]       激活一个或多个仓库(支持通配符)
--disablerepo=[repo]  禁掉一个或多个仓库(支持通配符)
-x [package], --exclude=[package] 在名称或glob不包含包。
--disableexcludes=[repo]       disable exclude from main, for a repo or for everything
--obsoletes               enable obsoletes processing during updates
--noplugins               禁掉yum插件
--nogpgcheck              禁掉GPG验证检查
--disableplugin=[plugin]       用名称禁掉插件
--enableplugin=[plugin]   enable plugins by name
--skip-broken             忽略包的依赖问题
--color=COLOR             control whether color is used
复制代码        

yum配置:
1.Fedora10添加上海交大源:
创建一个sjtu.repo文件并把如下内容复制进去并保存:
复制代码        
[Fedora-ftp.sjtu.edu.cn] 
name=Fedora 10 - i386 
baseurl=http://ftp.sjtu.edu.cn/fedora/linux/releases/10/Fedora/i386/os/ 
enabled=1 
gpgcheck=0 
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY 
[Everything-ftp.sjtu.edu.cn] 
name=Everything 10 - i386 
baseurl=http://ftp.sjtu.edu.cn/fedora/linux/releases/10/Everything/i386/os/ 
enabled=1 
gpgcheck=0 
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY 
[updates-ftp.sjtu.edu.cn] 
name=Fedora updates 
baseurl=http://ftp.sjtu.edu.cn/fedora/linux/updates/10/i386/ 
enabled=1 
gpgcheck=0 
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
复制代码        

然后把文件: sjtu.repo 
放在 /etc/yum.repos.d 的目录中
然后在终端运行:
yum makecache


2.安装axel
最简单的方法是下载rpm包,分别下载axel和yum-axelget到本地,然后执行:
yum –nogpgcheck localinstall axel-2.3.1.fc10.i386.rpm
yum –nogpgcheck localinstall yum-axelget-.0-0.2.20080705.fc10.noarch.rpm

这样axel就下载完成了,它可以使在下载时将一个文件或者包,分成10份同时进行下载。 
3.安装最快镜像插件
yum install yum-fastestmirror 

4.安装加速插件
这个插件为Fedora用户提供更快,更小的下载量,它只下载 rpm 安装包中被更新的部分,而不是整个rpm 包。加速插件被计划包含在Fedora11中。要安装,请输入:
yum install yum-presto

然后编辑 /etc/yum.repos.d/fedora-updates.repo 文件
gedit /etc/yum.repos.d/fedora-updates.repo

这一行注释掉(在前加上#),然后在其下,加上这样一行:
保存退出即可。 
5.在下载时偶尔会出现它的最快镜像插件选择不对的情况,如果比较着急的话可以在它下载的时候感觉进度条半天没动或者剩余时间还有很长的时候选择中断这个源的下载,ctrl+C,然后yum会自动开始从别的源去下载更新。 
以上文章转自:
http://www.fedora.cc/index.php/2009/04/fedora-10-yum-peizhi/    


来自  https://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/09/2203916.html

普通分类: