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
大功告成。很难吗?
![]() | 1 rainy3636 2015-03-31 21:37:39 +08:00 xen的vps升级发行版貌似很麻烦? |
![]() | 2 Yamade 2015-04-01 09:09:53 +08:00 ``` Err http://security.debian.org/ wheezy/updates/main linux-image-3.2.0-4-amd64 amd64 3.2.65-1+deb7u1 404 Not Found 0% [Working]E: Failed to fetch http://security.debian.org/pool/updates/main/l/linux/linux-image-3.2.0-4-amd64_3.2.65-1+deb7u1_amd64.deb: 404 Not Found ``` 悲剧了. |
![]() | 3 msg7086 OP |