綾小路龍之介の素人思考

[debian] grub インストール先の変更

grub-install /dev/sda6 などとやれば、grub をインストールできる。しかし、パッケージのアップデートなどで update-grub が走る場合に、/dev/sda6 側には変更が適用されないような感じ。

netboot 用のカーネルと initd をダウンロード。grub から見える場所に置いておく。

# dpkg-reconfigure grub-pc
Package configuration
 ┌──────────────────────────┤ Configuring grub-pc ├──────────────────────────┐
 │ The following Linux command line was extracted from /etc/default/grub or  │
 │ the `kopt' parameter in GRUB Legacy's menu.lst. Please verify that it is  │
 │ correct, and modify it if necessary. The command line is allowed to be    │
 │ empty.                                                                    │
 │                                                                           │
 │ Linux command line:                                                       │
 │                                                                           │
 │ _________________________________________________________________________ │
 │                                                                           │
 │                                  <Ok>                                     │
 │                                                                           │
 └───────────────────────────────────────────────────────────────────────────┘
Package configuration
  ┌─────────────────────────┤ Configuring grub-pc ├─────────────────────────┐
  │ The following string will be used as Linux parameters for the default   │
  │ menu entry but not for the recovery mode.                               │
  │                                                                         │
  │ Linux default command line:                                             │
  │                                                                         │
  │ quiet__________________________________________________________________ │
  │                                                                         │
  │                                 <Ok>                                    │
  │                                                                         │
  └─────────────────────────────────────────────────────────────────────────┘
Package configuration
 ┌──────────────────────────┤ Configuring grub-pc ├──────────────────────────┐
 │                                                                           │
 │ The grub-pc package is being upgraded. This menu allows you to select
 │ which devices you'd like grub-install to be automatically run for, if
 │ any.
 │
 │ Running grub-install automatically is recommended in most situations, to
 │ prevent the installed GRUB core image from getting out of sync with GRUB
 │ modules or grub.cfg.
 │
 │ If you're unsure which drive is designated as boot drive by your BIOS,
 │
 │                                  <Ok>
 │                                                                           │
 └───────────────────────────────────────────────────────────────────────────┘
Package configuration
           ┌────────────────┤ Configuring grub-pc ├────────────────┐
           │ GRUB install devices:                                 │
           │                                                       │
           │    [ ] /dev/sda (***** MB; ***********************)   │
           │    [*] - /dev/sda6 (***** MB; /)                      │
           │                                                       │
           │                                                       │
           │                        <Ok>                           │
           │                                                       │
           └───────────────────────────────────────────────────────┘
Installing for i386-pc platform.
grub-install: warning: File system `ext2' doesn't support embedding.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
Installation finished. No error reported.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.13.0-39-generic
Found initrd image: /boot/initrd.img-3.13.0-39-generic
Found ********************** on /dev/sda1
Found ***************************** on /dev/sda7
done

新しく /dev/sda6 にインストールした grub での起動が確認できたら、MBR の grub を削除する。bs=446はbs=512ではないことに注意、こうしておくことでパーティションテーブルを壊さずにブートストラップローダ (grub) だけを削除できる。

$ sudo dd if=/dev/zero bs=446 count=1 of=/dev/sda
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.0122595 s, 41.8 kB/s

リファレンス

  1. Grub2 - なんなんなん行く?
  2. マスターブートレコード - Wikipedia

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2008-09-21T22:03:49+09:00
  2. Modified: 2008-09-21T22:03:49+09:00
  3. Generated: 2017-04-05T23:09:35+09:00