Ubuntu16.04内核更改
最近做计网实验需要用到tcp_probe,但是Ubuntu16.04的内核为Linux 4.15版本,不支持tcp_probe,故需要回退版本到Linux 4.9.48-networking。
- 将两个安装包拷贝到虚拟机任意位置
- sudo dpkg -i 00-linux-image-4.9.48-networking_4.9.48-1_amd64.deb
sudo dpkg -i 00-linux-headers-4.9.48-networking_4.9.48-1_amd64.deb - sudo nano /etc/default/grub,使用nano编辑器打开grub文件
- 修改GRUB_DEFAULT=0语句,0 修改为 你想要启动的内核。如果知道你要修改的核的名字或代号,直接修改即可,随后跳到步骤10
如果不知道,跳转到步骤5。 - 将GRUB_TIMEOUT_STYLE=hidden语句用#注释掉。(对于不同Ubuntu版本该语句的写法不同,Ubuntu 16.04版本中是GRUB_HIDDEN_TIMEOUT=0 ,类似的注释掉该行)
- 保存grub缓冲区,执行sudo update-grub
- 执行sudo reboot,然后等待重启
- 重启过程中会看到启动时进入grub界面。我的界面如下:
Ubuntu
Ubuntu高级选项
memtest
…(记不清了)
grub菜单界面索引从0开始,所以默认启动0即启动Ubuntu主系统内核。Ubuntu高级选项对应的索引为1。选中该项,进入如下菜单:
Ubuntu,Linux 4.15.0-45-generic
Ubuntu,with Linux 4.15.0-45-generic (upstart)
Ubuntu,with Linux 4.15.0-45-generic (recovery mode)
Ubuntu,Linux 4.9.48-networking
Ubuntu,with Linux 4.9.48-networking (upstart)
Ubuntu,with Linux 4.9.48-networking (recovery mode)
我需要加载的是Ubuntu,Linux 4.9.48-networking,索引为3,选中它然后等待系统启动。 - sudo nano /etc/default/grub,使用nano编辑器打开grub文件,修改GRUB_DEFAULT=0语句为GRUB_DEFAULT=”1> 3”。注意在>后面有一个空格,故使用双引号”。如果想取消开机加载grub选项,将之前加的注释号删去即可。
- 保存grub缓冲区,执行sudo update-grub
- 执行sudo reboot,然后等待重启
- 重新启动后,在终端输入uname -r,查看版本号。如果执行正确的话你会看到Linux 4.9.48-networking。