Yellow dog Updater(Yum)是CentOS所有版本的默认包管理器,yum主要功能是更方便的添加/删除/更新RPM包,自动解决包的依赖性问题,便于管理大量系统的更新问题,其理念是使用一个中心仓库(repository)管理一部分甚至一个distribution的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等操作,减少了Linux用户一直头痛的dependencies的问题。可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm包时遇到的依赖性问题,保持与RPM数据库的一致性。
这一篇博客写得非常好,可以参考。
yum的高级配置需要允许yum使用插件,即编辑/etc/yum.conf, 并且添加语句
plugins=1
自从CentOS 4之后是默认打开的。
将官方源更换为国内的源
我们安装的Centos系统,默认都是系统自带的yum源,国内用户用yum安装软件的时候,是比较慢的,为了提高效率,一般我们会配置国内的yum源。
国内比较好的yum源有网易yum源、搜狐yum源等,网易的yum源比较好用,现在介绍下怎么配置网易163yum源:
官方链接:http://mirrors.163.com/.help/centos.html
网易每5小时更新一次yum源
支持架构为:i386,x86_64,SRPMS
支持的centos版本为:5.x和6.x系列
- 首先备份
/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-Base.repo.backup
- 进入yum源配置文件所在文件夹
[root@localhost yum.repos.d]# cd /etc/yum.repos.d/
- 下载163的yum源配置文件,放入
/etc/yum.repos.d/
(操作前请做好相应备份)
[root@localhost yum.repos.d]#
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
- 运行
yum makecache
生成缓存
[root@localhost yum.repos.d]# yum clear all
[root@localhost yum.repos.d]# yum makecache
- 更新系统
[root@localhost yum.repos.d]# yum -y update
第三方源
这里列举了常用的第三方源,比如一些大型第三方源,已确认不会替换官方源的包,且相互之间无冲突:
- EPEL:包含 6500 多个软件,科研必备
- ELRepo:包含几十个各种硬件的驱动程序
- Nux Dextop:多媒体相关的软件包(与 EPEL 的个别软件相冲突,可忽略)
- Remi Repository:包括PHP等软件
也列举了一些已经证明不可用的源,比如
- RPMForge/RepoForge:已经确认不再维护更新
- Webtatic Repo:提供非最新版PHP, MySQL等,可以被其它源替代
出于系统稳定的考虑,只安装EPEL, ELRepo, Nux Dextop三个大型的第三方源。
EPEL
EPEL 即 Extra Packages for Enterprise Linux, 为 CentOS 提供了额外的 10000 多个软件包,而且在不替换系统组件方面下了很多功夫,因而可以放心使用。
sudo yum install epel-release
执行完该命令后,在 /etc/yum.repos.d
目录下会多一个 epel.repo
文件。
ELRepo
The Community Enterprise Linux Repository (ELRepo)提供一些硬件驱动,包括显卡、声卡、网卡等。其homepage上有安装指南。
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh
http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
完成该命令后,在/etc/yum.repos.d
目录下会多一个elrepo.repo
文件。
Nux Dextop
Nux Dextop 中包含了一些与多媒体相关的软件包。官方说明中说该源依赖于EPEL。
sudo yum -y install epel-release && rpm -Uvh
http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
因为我们已经安装过EPEL,所以只需要执行
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
完成该命令后,在/etc/yum.repos.d
目录下会多一个nux-dextop.repo
文件。
安装yum-axelget插件
yum-axelget 是 EPEL 提供的一个 yum 插件。使用该插件后用 yum 安装软件时可以并行下载,大大提高了软件的下载速度,减少了下载的等待时间:
sudo yum install yum-axelget
安装该插件的同时会安装另一个软件 axel。axel 是一个并行下载工具,在下载 http、ftp 等简单协议的文件时非常好用。
进行全面更新
sudo yum -y update