V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
通过以下 Referral 链接购买 DigitalOcean 主机,你将可以帮助 V2EX 持续发展
DigitalOcean - SSD Cloud Servers
msg7086
V2EX  ›  VPS

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

  •  
  •   msg7086 · 2015-03-31 20:00:25 +08:00 · 1138 次点击
    这是一个创建于 3528 天前的主题,其中的信息可能已经有所发展或是发生改变。

    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


    大功告成。很难吗?

    14 条回复    2015-04-02 11:13:31 +08:00
    rainy3636
        1
    rainy3636  
       2015-03-31 21:37:39 +08:00
    xen的vps升级发行版貌似很麻烦?
    Yamade
        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
    ```

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

    @Yamade 先 aptitude update 更新索引?
    Yamade
        4
    Yamade  
       2015-04-01 09:39:57 +08:00
    @msg7086 sudo: update-grub: command not found 这....
    Yamade
        5
    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
        6
    msg7086  
    OP
       2015-04-01 09:55:34 +08:00
    @Yamade 哇咔咔,看来要切换到testing分支安装才行。
    ubuntu好像14.04里有带,debian 7应该是太老了……
    Yamade
        7
    Yamade  
       2015-04-01 09:57:26 +08:00
    @msg7086 你老人家没在 debian7安装的?
    Yamade
        8
    Yamade  
       2015-04-01 09:58:23 +08:00
    @msg7086 ubuntu 安装到时没问题,就是启动后应该有错误,我没排插了.
    msg7086
        9
    msg7086  
    OP
       2015-04-01 10:11:13 +08:00
    @Yamade debian 7 毕竟2年前的系统了。如果Ubuntu是14.04加入的包,那Debian没可能在2013年就加入的。
    我生产机跑的都是debian 8
    Yamade
        10
    Yamade  
       2015-04-01 10:13:22 +08:00
    @msg7086 Linode 有 debian8了?
    hahajing007
        11
    hahajing007  
       2015-04-01 11:01:13 +08:00
    现在用默认3.19.1内核速度已经不错了,自己编译的htcp速度反而慢很多,相差10倍。。。
    rainy3636
        12
    rainy3636  
       2015-04-01 11:37:16 +08:00
    @msg7086 请问你的debian是哪种方法升级的?
    我在softlayer的debian7上,直接把源里的wheezy换成jessie,upgrade之后reboot就死了……
    msg7086
        13
    msg7086  
    OP
       2015-04-01 11:51:03 +08:00
    @Yamade 没有,装好deb7,改掉源版本然后upgrade自动升级的。

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

    只记得以前从debian5升到debian7会有兼容性问题,6升7升8一路上来都没什么事。
    Yamade
        14
    Yamade  
       2015-04-02 11:13:31 +08:00
    用 test 搞定了.哈哈.升级完毕在换回 stable.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3551 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:45 · PVG 08:45 · LAX 16:45 · JFK 19:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.