V2EX 上经常有人讨论关于在 Linode 上编译内核或内核模块的问题,就为了爬个墙什么的。可能有些模块的确需要自行编译,但是大部分常用模块,例如 btrfs 或者 tcp_hydra / tcp_htcp 等,都已经内置在官方内核包上了。自己编译内核,费时费力还容易出错问题,何不用现成的解决方案呢?
之前有位大牛就遇到了这样的问题,后来他专门写了一篇教程,说明如何利用 PV-Grub 链式引导来启动 Debian 发行版官方内核。难度相比自己编译内核或者自己直接配置 PV-Grub,难度大大降低,比较适合推广。因此特地将原文中的步骤整理出来发在 V2EX 上。欲读英语原文,请访问 http://notes.pault.ag/linode-pv-grub-chainning/ 。
写入 Grub 配置文件
sudo mkdir -p /boot/grub
sudo tee /boot/grub/menu.lst <<EOD
default 1
timeout 3
title grub-xen shim
root (hd0)
kernel /boot/xen-shim
boot
EOD
sudo tee /boot/load.cf <<EOD
configfile (xen/xvda)/boot/grub/grub.cfg
EOD
安装内核与 Grub
sudo aptitude install linux-image-amd64 grub-xen
sudo update-grub
生成引导文件
grub-mkimage --prefix '(xen/xvda)/boot/grub' -c /boot/load.cf -O x86_64-xen /usr/lib/grub/x86_64-xen/*.mod | sudo tee /boot/xen-shim > /dev/null
将 Linode Profile 中的内核改成 pv-grub
大功告成。很难吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.