如何在Google Compute引擎实例上安装自定义内核



我想在Google Compute Engine实例上安装自定义内核图像。我的实例运行:

foo@instance-1:/boot/efi$ uname -a
Linux instance-1 4.10.0-22-generic #24-Ubuntu SMP Mon May 22 17:43:20 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

我已经构建和安装了我的内核图像:

sudo dpkg -i linux-image-4.10.0-rc8.10.0-rc8_amd64.deb

它显示在grub配置文件中,我将默认的grub菜单项设置为正确的数字,并且我已经运行

sudo update-grub

然而,当我重新启动时,我得到了相同的内核。

Google文档似乎不存在。有一个地方表明我可能必须在外部创建图像,安装内核并导入它。但是,我需要做很多事情,所以我宁愿以老式的方式安装新内核。

事实证明,在Google的库存Ubuntu映像中,有一个grub配置文件:

/etc/default/grub.d/50-cloudimg-settings.cfg

覆盖

中的内容
/etc/default/grub

编辑第一个文件使所有内容都有效。

在尝试此操作之前,我假设您有一个后备选项?回到您当前状态的某种方式。这很重要,因为似乎您可能无法物理访问系统。

请检查/boot/grub/grub.cfg显示的内容为默认内核。它将是menuentry的部分开始,从linux开始的条目。如果这指向/boot/<default-kernel>,那么这就是您需要与initrd条目一起更新的内容,以便内核图像和Initramfs都指向您的自定义内核。

此外,内核图像的启动顺序可能是字母顺序的,因此较新的内核图像(以字母顺序以字母顺序(比较旧的内核图像偏爱。在这种情况下,如果您可以将内核映像的文件名更改为高于默认内核映像,而对于相应的Initramfs和配置文件,则相同(它们都将类似地命名(,然后运行update-grub,这可能是更快地启动到自定义的方法核心。您可以在/boot/中找到这些文件。

对我有用的是进入/boot/并删除旧图像,然后运行sudo dpkg -i <new_image>并使用sudo reboot

重新启动系统

相关内容

  • 没有找到相关文章

最新更新