# 阿里云CentOS 7.6升级内核到最新操作(附自动化Shell脚本)

> 作者：zning（https://ning.ae） · 发布：2019/07/03 23:24 下午 (UTC+8) · 原文：https://zning.me/15621674686701.html

最近张宁网阿里云服务器即将到期，因为用了五年的服务器比较老了，而且云翼计划当年给的青岛配置相对续费便宜点，因此准备对其进行一下迁移。秉着自动化手段解决问题并且未来有更好的借鉴，对网上查找的升级内核操作进行了总结并脚本化处理。以供未来使用。

> 注意：本文首次撰写于2019-07-03，最近修改时间为2019-07-03，请注意相关程序的可用性与安全性。

简要说明脚本执行逻辑：

脚本一般需要执行三次，必须执行两次：

1. 第一次执行进行`yum update`升级并重启。
2. 第二次执行进行Kernel的正式升级与切换。
    * 这一步会进行两次的用户手工输入，第一次输入是选择最新内核所代表的最前面的数字，以便程序确认最新内核位置；
    * 第二步输入确认是否内核已经切换为第一步所输的数字，如果`saved_entry=X`中的`X`为第一步所输入的数字，即可输入`y`进行切换内核重启。 
3. 第三次（可选）执行进行旧内核的删除。当然也可以手工删除不执行此步骤。

代码如下：

<script src="https://gist.github.com/zning1994/edf4b4f48089c079374fe80a70ce484e.js"></script>

注：Shell脚本已放置在Github Gist上，如下面代码嵌入无法正常显示，请[点击这个连接直接访问Github Gist获取](https://gist.github.com/zning1994/edf4b4f48089c079374fe80a70ce484e)。

## 参考文献

1. [CentOS 7. × 系统及内核升级指南](https://www.jianshu.com/p/fdf6bb6c5b9c)
