1、备份
cd /etc/yum.repos.d/
mkdir repo_bak
mv *.repo repo_bak/
2、安装wget(若已安装了wget,则跳过此步)
检查
wget -V
安装
yum install wget -y
3、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
wget http://mirrors.aliyun.com/repo/Centos-7.repo
4、yum clean all 清除缓存,运行 yum makecache 生成新的缓存
yum clean all
yum makecache
5、安装EPEL(Extra Packages for Enterprise Linux )源
yum install -y epel-release
6、再次运行yum clean all 清除缓存,运行 yum makecache 生成新的缓存
7、查看启用的yum源和所有的yum源
yum repolist enabled
yum repolist all
8、更新yum
yum -y update
为什么在更新了yum源之后需要yum -y update?没看出作用
其实我更推荐用yum upgrade取代yum update,yum update只更新系统中已有的软件包,不会更新内核软件包(kernel-这个包),yum upgrade是更彻底的update,会分析包的废弃关系,可以跨小版本升级(比如从centos 7.1升级到centos 7.4),除了做了yum update完全相同的事之外,还会更新kernel-的包,也会卸载掉已经废弃的包。
新部署系统需要yum update/upgrade是因为yum不会给你解决依赖冲突(但是apt会)。
举个例子,你的系统中已经安装了kernel-2.6.32.500,但是你要安装的某个软件包依赖于kernel-2.6.32.600,此时yum会报错退出,告诉你依赖不满足,并不会升级kernel包(只是举个例子而已,实际上几乎没有软件包直接依赖于kernel包),所以你只能yum update/upgrade一次,把系统中所有的软件包全部更新,这样满足新部署的软件包的依赖。
在debian/ubuntu的系统中,apt会对这种情况自动处理,会自动升级依赖的软件包。
换句话来说,对于新部署的服务器,也是推荐upgrade全部的软件包,已获得最新的安全补丁。即使对于已经上线的服务器,也是推荐定期打安全漏洞补丁,减少漏洞带来的侵害。
附上小博自己更新时的历史语句
cd /etc/yum.repos.d/
ll
mkdir repo_bak
mv *.repo repo_bak/
ls
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
ll
yum clean all
yum makecache
yum list | grep epel-release
yum install -y epel-release
yum clean all
yum makecache
yum repolist
ls
yum list
yum -y update