Gentoo 内核升级
Gentoo的内核升级相对来不不那么复杂,因为可以直接利用已经配置好了的.config文件,因此总体上升级内核有几个步骤
安装内核升级包
通常情况下在对gentoo进行升级的时候也会同步安装内核升级包
jacky@gentoo ~ $ sudo emerge –sync
jacky@gentoo ~ $ sudo emerge -avuDN world
内核配置
在进行内核配置前请先检查/boot目录是否已经挂载,如果没有挂载请手动挂载
在安装好后在/usr/src目录下面就会有新安装好的内核目录,后续步骤建议用root用户执行
gentoo src # ls
linux linux-4.12.5-gentoo linux-4.9.34-gentoo vboxhost-5.1.24
这时候需要将linux软链接到最新安装的内核包,我的场景是4.9到4.12
gentoo src # ln -sf /usr/src/linux-4.12.5-gentoo /usr/src/linux
完成这部后将linux-4.9.34-gentoo目录下的.config内核配置文件复制一份到新安装的内核目录
gentoo src # cp linux-4.9.34-gentoo/.config linux-4.12.5-gentoo/kernel-bak.config
完成这部后进入新的内核目录开始进行内核配置
gentoo linux # make menuconfig
随后在内核配置界面加载kernel-bak.config文件并保存为.config文件,随后进行内核的编译
gentoo linux # make && make modules_install
gentoo linux # make install
gentoo linux # genkernel –install initramfs
至此完成了内核的安装和配置,但是此时并没有结束内核的升级,因为并没有告诉bootloader应该用哪个内核启动,因此需要重新配置bootloader让它知道我们是想用最新的内核启动
BootLoader配置
bootloader的配置相对来说比较简单,在进行配置之前如果你的引导方式采用的是systemd的方式可能需要检查一下grub默认配置文件,确认里面这句配置是否存在
gentoo linux # cat /etc/default/grub
# Boot with systemd instead of sysvinit (openrc)
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
如果存在这句则执行以下命令完成grub的配置工作
gentoo linux # grub-mkconfig -o /boot/grub/grub.cfg
自此完成了gentoo的内核升级工作,gentoo是这样升级的类似的其他版本的内核的升级应该也是类似的。