您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页yum安装及添加和设置YUM源

yum安装及添加和设置YUM源

来源:五一七教育网
Yum安装配置及添加设置yum源

YUM主页: http://yum.baseurl.org/ RPMFUSIONG主页: http://rpmfusion.org/

yum是一个自动化的软件包管理程序,它被用来 安装/卸载/升级 你系统里的基于RPM的软件包,它可以自动帮你解决掉烦人的软件依赖问题,你所需要的只是知道你想安装/卸载/升级的那个软件名字叫啥。

一、安装属于你的YUM:

如果很不幸,你压根没有YUM,那么你必须自己找到以下RPM包来手动安装你的YUM工具: yum.noarch;

yum-metadata-parser; yum-presto.noarch; yum-utils.noarch。

安装RPM包的命令为: rpm -ivh [你的RPM包名字,不带括号]

或者,你也可以下载源码包来编译安装,没有Linux基础知识,不建议这样做。

二、配置YUM:

安装好yum后,就需要配置yum。(如果发行版已经安装好yum,通常yum已经配置好了)。YUM的配置文件为/etc/yum.conf。

如果网络不通畅,可以在/etc/yum.conf文件中修改timeout参数,将timeout时间设置得稍微长一点。 yum中可以通过修改文件来屏蔽软件源:

修改/etc/yum.repos.d/XXX.repo,把其中的enable=1改为enable=0 指定或去掉软件源的mirror:

可以在baseurl中将比较慢的mirror去掉

YUM的一切配置信息都储存在一个叫yum.conf的配置文件中,通常位于/etc目 录下,这是整个yum系统的重中之重,所以有必要详细介绍。下面是一个从网上找来的yum.con文件,让我们以此为例,进行说明。

[main] cachedir=/var/cache/yum debuglevel=2 logfile=/var/log/yum.log pkgpolicy=newest distroverpkg=redhat-release tolerant=1 exactarch=1 retries=1 [base] name=Fedora Core $releasever - $basearch - Base 作者:李双成

baseurl=http://download.atrpms.net/mirrors/fedoracore/$releasever/$basearch/os http://rpmfind.net/linux/fedora/cor...er/$basearch/os http://mirror.clarkson.edu/pub/dist...er/$basearch/os [updates-released] name=Fedora Core $releasever - $basearch - Released Updates baseurl=http://download.atrpms.net/mirrors/fedoracore/updates/$releasever/$basearch http://redhat.linux.ee/pub/fedora/l...sever/$basearch http://fr2.rpmfind.net/linux/fedora...sever/$basearch [Fedora.us] name=Fedora.us - $basearch - Extras baseurl=http://fedora.linux.duke.edu/fedorax86_/fedora.us/$releasever/$basearch/RPMS.stable [Dag Wieers] name=Dag RPM Repository for Fedora Core baseurl=http://apt.sw.be/fedora/$releasever/en/$basearch/dag [Livna] Name=Livna RPM, Fedora Core $releasever - $basearch baseurl=http://rpm.livna.org/fedora/$releasever/$basearch/RPMS.stable [freshrpms] name=FreshRPMs baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms/ http://ftp.us2.freshrpms.net/linux/...arch/freshrpms/ 第一部分(这是yum的全局性设置。默认一般不必改动。)

[main]

cachedir:yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。 debuglevel:除错级别,0-10,默认是2。

logfile:yum的日志文件,默认是/var/log/yum.log。

pkgpolicy:包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。一般都是选newest。

distroverpkg:指定一个软件包,yum会根据这个包判断你的发行版本,默认是redhat-release,也可以是安装的任何针对自己发行版的rpm包。

exactarch,有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级。

retries,网络连接发生错误后的重试次数,如果设为0,则会无限重试。

tolerent,也有1和0两个选项,表示yum是否容忍命令行发生与软件包有关的错误,比如你要安装1,2,3三个包,而其中3此前已经安装了,如果你设为1,则yum不会出现错误信息。默认是0。 除了上述之外,还有一些可以添加的选项,如

exclude=,排除某些软件在升级名单之外,可以用通配符,列表中各个项目要用空格隔开,这个对于安

作者:李双成

装了诸如美化包,中文补丁的朋友特别有用。

gpgchkeck= 有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认好像也是检查的。

第二部分:配置repository服务器了,这是最令人激动的,有了好的repository,就如家门口开了大

卖场,要什么东西稍微跑跑腿就行,对了这还是个免费的大卖场。 所有服务器设置都应该遵循如下格式:

1. [serverid]

2. name=Some name for this server 3. baseurl=url://path/to/repository/

其中serverid是用于区别各个不同的repository,必须有一个独一无二的名称。 name,是对repository的描述,支持像$releasever $basearch这样的变量;

baseurl是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:

1. baseurl=url://server1/path/to/repository/ 2. url://server2/path/to/repository/ 3. url://server3/path/to/repository/

其中url支持的协议有 http:// ftp:// file://三种。baseurl后可以跟多个url,你可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:

1. baseurl=url://server1/path/to/repository/ 2. baseurl=url://server2/path/to/repository/ 3. baseurl=url://server3/path/to/repository/

其中url指向的目录必须是这个repository header目录的上一级,它也支持$releasever $basearch这样的变量。

url之后可以加上多个选项,如gpgcheck、exclude、failovermethod等,比如:

1. [updates-released]

2. name=Fedora Core $releasever - $basearch - Released Updates

3. baseurl=http://download.atrpms.net/mirrors/fedoracore/updates/$releasever/$basearch

4. http://redhat.linux.ee/pub/fedora/linux/core/updates/$releasever/$basearch 5. http://fr2.rpmfind.net/linux/fedora/core/updates/$releasever/$basearch 6. gpgcheck=1 7. exclude=gaim

8. failovermethod=priority

其中gpgcheck,exclude的含义和[main]部分相同,但只对此服务器起作用,failovermethode 有两个选项roundrobin和priority,意思分别是有多个url可供选择时,yum选择的次序,roundrobin是随机选择,如果连接失 败则使用下一个,依次循环,priority则根据url的次序从第一个开始。如果不指明,默认是roundrobin。

几个变量

$releasever,发行版的版本,从[main]部分的distroverpkg获取,如果没有,则根据redhat-release包进行判断。

作者:李双成

$arch,cpu体系,如i686,athlon等

$basearch,cpu的基本体系组,如i686和athlon同属i386,alpha和alphaev6同属alpha。 对yum.conf设定完成,我们就可以好好体验yum带来的方便了。

配置好yum后,需要导入GPG KEY:

导入每个reposity的GPG key,前面说过,yum可以使用gpg对包进行校验,确保下载包的完整性,所以我们先要到各个repository站点找到gpg key,一般都会放在首页的醒目位置,一些名字诸如 RPM-GPG-KEY.txt之类的纯文本文件,把它们下载,然后用rpm --import xxx.txt命令将它们导入,最好把发行版自带GPG-KEY也导入。rpm --import /usr/share/doc/redhat-release-*/RPM-GPG-KEY 官方软件升级用的上。

三、添加和设置YUM源

添加yum源前先安装fastestmirror/downloadonly插件和axelget插件: 1.安装fastestmirror/downloadonly插件

由于yum中有的mirror速度是非常慢的,如果yum选择了这个mirror,这个时候yum就会非常慢,对此,可以下载fastestmirror插件,让系统yum的时候自动选择最快的镜像: yum install yum-fastestmirror yum-downloadonly -y

fastestmirror配置文件:(一般不用动)/etc/yum/pluginconf.d/fastestmirror.conf

2.安装axelget插件

axelget是一个多线程下载工具,yum本身是单线程下载,难怪速度不快呢,下载地址是http://axel.alioth.debian.org/

我使用的版本是Axel-2.4,大家可以使用最新的版本。解压后进入相应文件夹,安装方法: #./configure --i18n=1 #make #make install

# cp [your_path]/axelget/axelget.conf /etc/yum/pluginconf.d/ //将相应的配置文件移动到YUM插件配置目录

#cp [your_path]/axelget/axelget.py /usr/lib/yum-plugins/ //将插件移动到YUM插件目录 删除已经缓存的yum站点信息 输入yum clean all

注意:在这里提供一个小技巧:在YUM的时可能会遇到很长时间都没有速度的现象,这时候可以Ctrl+C。这样就是终止了从当前站点的下载,然后会自动选择其他站点下载,速度往往快很多。

3.接下来添加yum源

RPMForge源-----RPMForge是一个安全、稳定并且更新及时的软件仓库,通过安装RPMForge可以在进行yum update的时候多一个选择,如果懒得自己编译安装,就得依靠RPMForge了。

1、先安装priority这个yum的插件,这个插件用来设定安装软件时候软件仓库的优先级,一般是默认先从官方base或者镜像安装,然后从社区用户contribute的软件中安装,再从第三方软件仓库中安装。 #yum install yum-priorities

2、手动编辑 /etc/yum.repos.d/ 目录中后缀为.repo的文件来设置软件仓库的优先级, priority=N(N是整数,范围从1-99,数字越小代表优先级越高)

作者:李双成

官方推荐配置是:[base], [addons], [updates], [extras] 这几部分 priority=1 [centosplus],[contrib] 这几部分priority=2 3、现在开始安装rpmforge的软件仓库

获取-------http://dag.wieers.com/rpm/packages/rpmforge-release/

找到与系统平台架构匹配的rpmforge包安装之即可。安装完后.默认会在系统的/etc/yum.repos.d/下新增两个文件,mirrors-rpmforge和rpmforge.repo

安装-------# rpm -ivh rpmforge-release-0.3.6-1.el4.rf.i386.rpm

# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt 更改 /etc/yum.repos.d/rpmforge.repo 配置文件,添加 priority=1(或者2.3.4….)

现在就可以使用rpmforge这个软件仓库了。

国内yum源-----国内有Linux的镜像服务器了,分别是: 网易---------http://mirrors.163.com/.help/fedora-163.repo; http://mirrors.163.com/.help/fedora-updates-163.repo; 搜狐---------http://mirrors.sohu.com/help/fedora-sohu.repo; http://mirrors.sohu.com/help/fedora-updates-sohu.repo;

其实,在Fedora等发行版中添加yum源很方便,只需要下载fedora-163.repo和

fedora-updates-163.repo这两个文件,然后:在终端中用root用户将下载的两个文件移动到/etc/yum.repos.d文件夹中,最后重建一下元数据,就OK了

这里是以网易镜像为例子,搜狐镜像的操作流程与网易相同。具体步骤如下:

1.浏览器访问http://mirrors.163.com,在Linux列表中找到Fedora使用帮助的链接,进入该链接,下载fedora-163.repo和fedora-updates-163.repo。

2.将下载的文件移动到/etc/yum.repos.d文件夹中,命令如下: #mv fedora-163.repo /etc/yum.repos.d

#mv fedora-updates-163.repo /etc/yum.repos.d 3.重建元数据

#yum makecache

到此,网易的国内yum源就添加成功了。

特别提醒:建议大家将网易的rpmfusion添加到yum源中:

# yum localinstall --nogpgcheck http://mirrors.163.com/rpmfusion/free/fedora/rpmfusion-free-release-stable.noarch.rpm

http://mirrors.163.com/rpmfusion/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm'(两个URL地址中间有空格)。

添加好网易的rpmfusion 这样你yum install一些软件就比rpm install要方便很多了,当然如果喜欢用源码编译的朋友可以不用添加这个fusion。

注意:你也可登录rpmfusion的网页(http://rpmfusion.org/),然后下载对应你的系统版本的2个RPM包(没错,是两个),它们分别是free和nonfree。

4.yum Existing lock 错误的解决办法: 如果系统启动的时候, yum 出现Existing lock /var/run/yum.pid: another copy is running as pid 3380. Aborting. 可以用下面的办法解决:

作者:李双成

可以直接输入/etc/init.d/yum-updatesd stop 也可以 rm -f /var/run/yum.pid

主要原因就是yum在自动更新 只要关掉它就可以了。

5. remove介绍:

remove参数可以帮助你移除系统内的软件包,并且顺带把依赖也移除掉。不过一定要看仔细了!你要是想要移除一个系统关键软件包,那它的依赖可能就是系统本身哦!可别把你的系统连根拔掉了哦!命令格式如下:

#yum remove (name)

6.RPM包下载点:(你可以修改原有yum源,把以下路径加进去) RPM包下载点:

http://fr2.rpmfind.net/linux/RPM/ #很全 http://ftp.linux.cz/pub/linux/ #很全 ftp://apt.kde-redhat.org/linux/ http://apt.unl.edu/apt/fedora/fedora/

http://mirrors.163.com/ #国内的

作者:李双成

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务