ubuntu内核升降

ubuntu内核更改

    • 0.须知
    • 1.使用apt-get更换
    • 2.使用dpkg更换
    • 3.使用压缩包更换
    • 4.Ubuntu更改默认启动内核
    • 5.总结

具体升级内核还是降级内核,需要根据ubuntu版本所能正确运行的内核版本范围(比如在10.04ubuntu上面升级一个5.19的内核,大概率是会跑崩的)。因此要选一个适当的版本来安装你所需的内核。

更换内核大致分为以下步骤:1.增加目标内核、2.更换当前内核、3.删除多余内核,具体看下面的描述;

0.须知

  • 查看当前内核:
uname -a
  • 内核下载网站:(压缩包格式的内核版本更全一些)
    方法二使用deb格式下载:https://kernel.ubuntu.com/~kernel-ppa/mainline/
    方法三压缩包格式下载:https://mirrors.edge.kernel.org/pub/linux/kernel/
  • 进入高级模式
    按住 Shift 然后重启,如果没进去可能你的鼠标没有在ubuntu系统下,而是跑到win系统下了,Shift 被win截胡了

1.使用apt-get更换

个人学习参考文章:https://blog.csdn.net/qq_33236581/article/details/112098491

  • 1.检索:搜索目前可以安装内核版本。使用命令:(如果能搜索到你想要的内核版本那就万事大吉,安装起来就比较加简单)
apt-cache search linux|grep linux-image
  • 2.安装:安装内核:(不管是安装哪个版本,都需安装下面四个)
sudo apt-get install linux-image-3.13.0-170-generic 
sudo apt-get install linux-headers-3.13.0-170-generic 
sudo apt-get install linux-modules-3.13.0-170-generic
sudo apt-get install linux-modules-extra-3.13.0-170-generic # 如果不装会影响一些驱动
# 这些文件名的查询都可以用上面的命令列出来,如:apt-cache  search linux|grep linux-modules-extra
  • 3.查看:下载完之后查看内核安装信息
dpkg --get-selections | grep linux
  • 4.更换默认:然后更换自己需要的内核为默认启动的内核(这里先介绍一种比较简答的配置默认启动内核的方式)
sudo apt-mark hold linux-image-3.13.0-170-generic
sudo apt-mark hold linux-headers-3.13.0-170-generic
sudo apt-mark hold linux-modules-extra-3.13.0-170-generic

删除之前可以确认一下当前使用的内核和当前已经下载的内核

uname -a
dpkg --get-selections | grep linux
  • 5.删除:删除不需要的内核
sudo apt-get remove	linux-headers-3.13.0-170
sudo apt-get remove	linux-headers-3.13.0-170-generic
sudo apt-get remove	linux-image-3.13.0-170-generic
sudo apt-get remove	linux-modules-3.13.0-170-generic
sudo apt-get remove	linux-modules-extra-3.13.0-170-generic
  • 6.再次查看内核:状态为 deinstall 表示已经卸载,如果不想显示 deinstall 这些项,并删除它们在 /lib/modual/ 下面还有这些内核的配置信息,可以采用下面的命令完全删除,如果还在就手动删:
sudo dpkg -P linux-image-4.15.0-39-generic  # 其他内核名称可以用 tab 键自动补全来查看
  • 7.更新系统引导
    删除内核后需要更新grub移除失效的启动项
sudo update-grub  #根据情况选择grub/grub2

2.使用dpkg更换

  • 下载:
    网站下载需要的内核:网站
    命令行下载:(可以在网站内找到网址+名字替换下方网址)
sudo wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.4.180/amd64/linux-headers-$$_amd64.deb
sudo wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.4.180/amd64/linux-image-$$_amd64.deb
sudo wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.4.180/amd64/linux-modules-extra-$$_amd64.deb

老版的内核或许只有1和2,新一些的有1,2,3,反正就是有就下载。
1.linux-headers-xxx_amd64.deb
2.linux-image-xxx_amd64.deb
3.linux-modules-xxx_amd64.deb

  • 安装
    sudo dpkg --install *.deb

  • 重启(sudo reboot),查看内核(uname -a)

3.使用压缩包更换

个人学习参考文章:
https://blog.csdn.net/Xiaoma_Pedro/article/details/103892980
https://blog.csdn.net/qq_37437983/article/details/108586309
压缩包下载网站:网站
在这里插入图片描述
命令行下载:(可以在网站内找到网址+名字替换下方网址 $$是你需要替换的内容)

sudo wget https://cdn.kernel.org/pub/linux/kernel/$$/linux-$$.tar.xz
  • 解压
sudo xz -d linux-$$.tar.xz
sudo tar -zxvf linux-$$.tar.gz
  • 编译
    编译环境:(安装一堆编译需要的依赖)
sudo apt-get install libncurses5-dev libssl-dev -y
sudo apt-get install build-essential openssl -y
sudo apt-get install zlibc minizip -y
sudo apt-get install libidn11-dev libidn11 -y
sudo apt-get install bison -y
sudo apt-get install flex -y
sudo apt-get install libelf-dev -y
sudo apt-get install elfutils-libelf-devel –y

make之前的操作

#清除编译过程中产生的所有中间文件
sudo make mrproper
#清理上一次产生的编译中间文件
sudo make distclean

#还可以直接,拷贝。图像化配置.config界面,配置内核选项
sudo cp /boot/config-4.15.0-55-generic  ./.config

打开界面配置,我个人没怎么配置,直接退出了。
要是编译32位的话,第一个选项64bit取消,应该是取消掉的话默认32位。
sudo make menuconfig

执行编译命令(有几个核就用几个核去跑,这个编译内核的过程很慢)

//默认编译64位
sudo make -j
//编译32位
sudo make bzImage -j

sudo make modules -j           #编译内核模块
 
sudo make modules_install -j   #安装内核模块(完成安装后,编译好的内核模块会从源码目录复制到/lib/modules/目录下 )
 
sudo make install -j 
  • 重启
    重启按住 shift进入高级模式
    ubuntu内核升降_第1张图片
    ubuntu内核升降_第2张图片
    进入之后uname -a,肯定就是你的内核了,然是重启的话,可能又恢复回去原来的内核了,所以参考下面: Ubuntu更改默认启动内核那个网址,就可默认启动自己的内核

4.Ubuntu更改默认启动内核

https://blog.csdn.net/SweeNeil/article/details/87937269

5.总结

X86平台内核配置、编译和安装
上面三种更换内核的方式,选择其中一种自己合适的即可。

你可能感兴趣的:(linux,ubuntu,linux,运维)