Ubuntu 16.04/18.04 LTS内核降级及通过GURB指定内核

列出当前安装的所有LINUX内核

dpkg -l|grep linux-image

安装4.4.0-47内核

sudo apt-get install linux-image-4.4.0-47-generic linux-image-extra-4.4.0-47-generic

删除4.4.0-97内核

sudo apt-get purge linux-image-generic linux-image-4.4.0-97-generic linux-image-extra-4.4.0-97-generic

更新内核GRUB引导项配置

sudo update-grub

reboot

4.4.0-47内核是最后一个可以安装 "锐速 ServerSpeeder" 的内核版本。【指破解版,现在都用BBR、BBRplus了】

有些时候是没法删除内核实现轻松降级的,这个时候就需要修改gurb配置文件指定内核启动,但这就需要以下的命令配合了。

列出当前启动系统时,可选内核启动项

grep submenu /boot/grub/grub.cfg

这条跟上面这条效果一样,不过输出的内容更详细

grep gnulinux /boot/grub/grub.cfg

对于直接列出LINUX启动项的ID,可以用以下两条命令:(适用于ubuntu、debian)

Ubuntu

grep submenu /boot/grub/grub.cfg | awk '{print 7}' \&\& grep gnulinux /boot/grub/grub.cfg \|grep bbrplus-advanced\|awk '{print 15}'

Debian

grep submenu /boot/grub/grub.cfg | awk '{print 8}' \&\& grep gnulinux /boot/grub/grub.cfg \|grep bbrplus-advanced\|awk '{print 16}'

比如执行这条命令,输出了一个内核的ID:

root@DMIT-1ApvZFVmE7:~# grep submenu /boot/grub/grub.cfg | awk '{print 7}' \&\& grep gnulinux /boot/grub/grub.cfg \|grep bbrplus-advanced\|awk '{print 15}'

'gnulinux-advanced-6c04949e-f586-47df-aa94-b2cf4bb9e92a'

指定内核运行:

sudo nano /etc/default/grub

方式一:(按序号)

GRUB_DEFAULT=0 表示首选内核(看dpkg -l|grep linux-image 列出来的排序)

GRUB_DEFAULT=1 表示第二个内核

生效修改(grub)重启可以见到效果。

sudo update-grub

方式二:(重定向)

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-70-generic"

先列出所有的内核,把$menuentry_id_option的值复制出来

root@DMIT-1ApvZFVmE7:~# grep submenu /boot/grub/grub.cfg

submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-6c04949e-f586-47df-aa94-b2cf4bb9e92a' {

重定向语句写作:($menuentry_id_option>指定内核ID)

GRUB_DEFAULT="gnulinux-advanced-6c04949e-f586-47df-aa94-b2cf4bb9e92a>gnulinux-advanced-6c04949e-f586-47df-aa94-b2cf4bb9e92a"

生效修改(grub)重启可以见到效果。

sudo update-grub

相关推荐
iteye_99391 小时前
让 3 个线程串行的几种方式
java·linux
渡我白衣2 小时前
Linux操作系统:再谈虚拟地址空间
linux
阿巴~阿巴~2 小时前
Linux 第一个系统程序 - 进度条
linux·服务器·bash
小白爱电脑2 小时前
什么是2.5G交换机?
运维·网络·5g·千兆宽带
?ccc?2 小时前
容器技术技术入门与 Docker 环境部署
运维·docker·容器
时时刻刻看着自己的心2 小时前
docker启动报错
运维·docker·容器
DIY机器人工房2 小时前
代码详细注释:通过stat()和lstat()系统调用获取文件的详细属性信息
linux·嵌入式
我科绝伦(Huanhuan Zhou)3 小时前
华为泰山服务器重启后出现 XFS 文件系统磁盘“不识别”(无法挂载或访问),但挂载点目录仍在且无数据
运维·服务器·华为
匆匆那年9673 小时前
Docker容器中安装MongoDB,导入数据
运维·docker·容器
望获linux3 小时前
【Linux基础知识系列】第四十三篇 - 基础正则表达式与 grep/sed
linux·运维·服务器·开发语言·前端·操作系统·嵌入式软件