阿里云 ECS 升级内核
在更新系统的软件包时,发现如下错误:
[root@www]# yum -y update Loaded plugins: fastestmirror Setting up Update Process Determining fastest mirrors . . . Error: Package: util-linux-ng-2.17.2-12.24.el6_8.1.x86_64 (updates) Requires: kernel >= 2.6.32-642 Installed: kernel-2.6.32-279.el6.x86_64 (@anaconda-CentOS-201207061011.x86_64/6.3) kernel = 2.6.32-279.el6 kernel = 2.6.32-279.el6 Installed: kernel-2.6.32-358.6.2.el6.x86_64 (installed) kernel = 2.6.32-358.6.2.el6 kernel = 2.6.32-358.6.2.el6 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
根据提示,此次更新需要内核版本为2.6.32-642
而我有的版本为2.6.32-279 和2.6.32-358
不满足可以升级的要求,需要升级内核,但是升级内核具有很大的风险.
先做好快照。
接着我在网上找到这么一篇文章:
快速浏览的一遍,开始照做。
1、导入public key
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
2、安装elrepo到内核为2.6.32的CentOS中
rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm
3、安装kernel-lt(long term support)长期支持版本
yum --enablerepo=elrepo-kernel install kernel-lt -y
注:
如果直接通过yum方式使用elrepo源速度会较慢(该源在国外)。
推荐采用rpm的方式安装kernel-lt:
访问http://elrepo.org/linux/kernel/el6/x86_64/RPMS/下载对应的rpm包,通过rpm方式安装:
rpm -ivh kernel-lt-3.10.93-1.el6.elrepo.x86_64.rpm
关于kernel-lt的介绍可以参考elrepo官网介绍:http://elrepo.org/tiki/kernel-lt
4、编辑grub.conf文件,修改Grub引导顺序
vim /etc/grub.conf
确认安装的新内核的位置,将default的值调整为新内核的顺序,如本次升级案例中新装的内核位置为0,所以将default修改为0,保存退出,reboot重启服务器。