1.内核相关命令
1)查看当前使用内核
uname -r
或
uname -a
2)查看内核列表
sudo dpkg --get-selections |grep linux-image
可以看到例如:
linux-image-4.4.0-66-generic deinstall
linux-image-4.4.0-72-generic install
3)升级/安装内核
sudo apt-get install linux-image-4.4.0-75-generic
4)删除内核
sudo apt-get remove linux-image-4.4.0-75-generic
删除当前版本重启会使用低一级的已安装内核,如果是最后一个内核版本删除之后重启会进入BIOS界面。
2.Ubuntu 16.04 内核降级
1)备份源配置文件
sudo cp /etc/apt/sources.list /etc/apt/sources.list_bak
2)修改源配置文件
sudo vim /etc/apt/sources.list
在最后增加一行
deb http://security.ubuntu.com/ubuntu trusty-security main
3)更新配置
sudo apt-get update
4)查看可安装内核
sudo apt-cachesearch linux-image
linux-image表示查找linux-image的字段
5)安装新内核
sudo apt-get install linux-image-3.16.0-43-generic
sudo apt-get install linux-image-extra-3.16.0-43-generic
6)修改grub配置文件
sudo vim /etc/default/grub
找到GRUB_DEFAULT=0,修改为
GRUB_DEFAULT="Advancedoptions for Ubuntu>Ubuntu, with Linux 3.16.0-43-generic"
7)更新 Grub 引导
sudo update-grub
8)更新完成后重启系统
sudo reboot
9)查看当前使用内核
uname -r
或
uname -a
3.Ubuntu16.04切换内核启动
参考自:http://blog.csdn.net/u011304615/article/details/70920171
方法一:
1)(查看要设置版本的启动顺序,好像是从0编号)
grep menuentry /boot/grub/grub.cfg
2)将文件/etc/default/grub中GRUB_DEFAULT=1改为:
GRUB_DEFAULT=6(要设置版本编号为6)
或者改为:
GRUB_DEFAULT=”Ubuntu,Linux4.4.0-21-generic“
3)更新 Grub 引导
sudo update-grub
4)查看内核
uname -r
方法二:
1)直接把/boot/中与当前版本(4.8.0-26)相关的文件及文件夹全部删除
sudo rm -rf *4.8.0-26*
2)然后修改配置文件:/boot/grub/grub.cfg
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak.zgw
sudo vim /boot/grub/grub.cfg
找到如下代码块(当前版本4.8.0-26):
linux /vmlinuz-4.8.0-26-generic root=UUID=5bce3795-da96-4c6f-bed2-67d37185a77dro quiet splash $vt_handoff
initrd /initrd.img-4.8.0-26-generic
将其改为想使用的内核(4.4.0-45):
linux /vmlinuz-4.4.0-45-generic root=UUID=5bce3795-da96-4c6f-bed2-67d37185a77dro quiet splash $vt_handoff
initrd /initrd.img-4.5.0-45-generic
3)然后重启电脑就可以了。如若不行,请找如下代码块。
submenu 'Ubuntu 高级选项'$menuentry_id_option 'gnulinux-advanced-5bce3795-da96-4c6f-bed2-67d37185a77d'
将此行代码下的与当前版本(4.8.0-26)相关的代码全部删除然后重启就可以了。
4.ubuntu无法卸载旧内核
参考自:http://blog.csdn.net/xhw035/article/details/52422970
1)先用如下命令查看系统已安装内核的版本
dpkg --get-selections |greplinux-image
例如:
linux-image-4.4.0-31-generic install
linux-image-4.4.0-34-generic install
linux-image-4.4.0-36-generic install
linux-image-extra-4.4.0-31-generic deinstall
linux-image-extra-4.4.0-34-generic deinstall
linux-image-extra-4.4.0-36-generic install
linux-image-generic install
可以看到,一共安装了三个版本的内核,其中deinstall表示卸载残留
2)将两个不需要的内核同时卸载
sudo apt-get autoremove linux-image-4.4.0-31-generic linux-image-4.4.0-34-generic
autoremove
命令会自动解决相关依赖。
3)再次查询,结果如下:
linux-image-4.4.0-31-generic deinstall
linux-image-4.4.0-34-generic deinstall
linux-image-4.4.0-36-generic install
linux-image-extra-4.4.0-31-generic deinstall
linux-image-extra-4.4.0-34-generic deinstall
linux-image-extra-4.4.0-36-generic install
linux-image-generic install
不需要的内核已全部卸载完毕,只是还有残留。
4)将所有残留一次都清除掉
sudo dpkg -P linux-image-4.4.0-31-generic linux-image-extra-4.4.0-31-generic linux-image-4.4.0-34-generic linux-image-extra-4.4.0-34-generic
5)再次查询系统已安装的内核结果如下:
linux-image-4.4.0-36-generic install
linux-image-extra-4.4.0-36-generic install
linux-image-generic install
5.安装内核头文件
遇到错误Error!Your kernel headers for kernel 4.4.0-31-generic cannot be found,提示没有找到内核头文件
安装 :
sudo apt-get install linux-headers-$(uname -r)
转载请注明出处。