Linode PV-Grub 链式引导教程(转载整理)

2015-03-31 20:00:25 +08:00
 msg7086

V2EX 上经常有人讨论关于在 Linode 上编译内核或内核模块的问题,就为了爬个墙什么的。可能有些模块的确需要自行编译,但是大部分常用模块,例如 btrfs 或者 tcp_hydra / tcp_htcp 等,都已经内置在官方内核包上了。自己编译内核,费时费力还容易出错问题,何不用现成的解决方案呢?

之前有位大牛就遇到了这样的问题,后来他专门写了一篇教程,说明如何利用 PV-Grub 链式引导来启动 Debian 发行版官方内核。难度相比自己编译内核或者自己直接配置 PV-Grub,难度大大降低,比较适合推广。因此特地将原文中的步骤整理出来发在 V2EX 上。欲读英语原文,请访问 http://notes.pault.ag/linode-pv-grub-chainning/

  1. 写入 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
    
  2. 安装内核与 Grub

    sudo aptitude install linux-image-amd64 grub-xen
    
    sudo update-grub
    
  3. 生成引导文件

    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
    
  4. 将 Linode Profile 中的内核改成 pv-grub


大功告成。很难吗?

1160 次点击
所在节点    VPS
14 条回复
rainy3636
2015-03-31 21:37:39 +08:00
xen的vps升级发行版貌似很麻烦?
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
```

悲剧了.
msg7086
2015-04-01 09:16:08 +08:00
@rainy3636 用 Debian 没遇到过问题。如果你用了 Ubuntu 或者 CentOS 那估计会很麻烦。

@Yamade 先 aptitude update 更新索引?
Yamade
2015-04-01 09:39:57 +08:00
@msg7086 sudo: update-grub: command not found 这....
Yamade
2015-04-01 09:42:03 +08:00
@msg7086 debian 7
sudo aptitude install linux-image-amd64 grub-xen
Couldn't find any package whose name or description matched "grub-xen"
Couldn't find any package whose name or description matched "grub-xen"
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 38 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
msg7086
2015-04-01 09:55:34 +08:00
@Yamade 哇咔咔,看来要切换到testing分支安装才行。
ubuntu好像14.04里有带,debian 7应该是太老了……
Yamade
2015-04-01 09:57:26 +08:00
@msg7086 你老人家没在 debian7安装的?
Yamade
2015-04-01 09:58:23 +08:00
@msg7086 ubuntu 安装到时没问题,就是启动后应该有错误,我没排插了.
msg7086
2015-04-01 10:11:13 +08:00
@Yamade debian 7 毕竟2年前的系统了。如果Ubuntu是14.04加入的包,那Debian没可能在2013年就加入的。
我生产机跑的都是debian 8
Yamade
2015-04-01 10:13:22 +08:00
@msg7086 Linode 有 debian8了?
hahajing007
2015-04-01 11:01:13 +08:00
现在用默认3.19.1内核速度已经不错了,自己编译的htcp速度反而慢很多,相差10倍。。。
rainy3636
2015-04-01 11:37:16 +08:00
@msg7086 请问你的debian是哪种方法升级的?
我在softlayer的debian7上,直接把源里的wheezy换成jessie,upgrade之后reboot就死了……
msg7086
2015-04-01 11:51:03 +08:00
@Yamade 没有,装好deb7,改掉源版本然后upgrade自动升级的。

@rainy3636 死了?不清楚。我和你一样升的,独服和VPS都这么干,没出过问题。

只记得以前从debian5升到debian7会有兼容性问题,6升7升8一路上来都没什么事。
Yamade
2015-04-02 11:13:31 +08:00
用 test 搞定了.哈哈.升级完毕在换回 stable.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/180651

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX