対象とするUbuntuのバージョン
- すべて (14.04 Trusty Tahr で確認)
はじめに
GRUB 2を再インストールするために RepairMbrWithGrub : 内部リンク を参考してもうまく起動できなかったり、
起動できても実行してみるとエラーになる事があるかもしれません。例えば、$ sudo grub-install /dev/sda Installing for i386-pc platform. grub-install: error: failed to get canonical path of `/cow'.
です。
ここではchrootコマンドを使ったGRUB 2のインストール方法を説明します。LiveDVD , LiveUSB から起動してください。(起動オプションの変更で boot=casper の変更はしないで下さい。)
端末 : 内部リンク を使って以下の操作をして下さい。
事前調査
現在動作しているのが UEFI 環境下か LegacyBIOS (CSM) 環境下かを確認して下さい。
ls -ld /sys/firmware/efi
でディレクトリーが存在していたら UEFI で動作しています。
GRUB 2をインストール
UEFI , GPT の場合
インストールしたいデバイスが /dev/sdb だとします。
/dev/sdb
マウントポイント
partition1
fat32
/boot/efi
partition2
ext4
/
パーティションを分けている時は別途マウントして下さい。
事故防止の為、
/dev/sdXY
/dev/sdXZ
に置き換えます。X ⇒ b , Y ⇒ 1 , Z ⇒ 2 と考えて下さい。※ 各行の最初にある '$' , '#' はシステムが表示するものです。それぞれ「ユーザー権限」「管理者権限」で実行する事を示します。一緒に入力(コピー&ペースト)しないでください。 $ sudo mount /dev/sdXZ /mnt $ sudo mount /dev/sdXY /mnt/boot/efi $ sudo mount --bind /dev /mnt/dev $ sudo mount --bind /dev/pts /mnt/dev/pts $ sudo mount --bind /proc /mnt/proc $ sudo mount --bind /sys /mnt/sys $ modprobe efivars $ sudo chroot /mnt # grub-install /dev/sdX # update-grub # exit $ sudo umount -lf /mnt/sys $ sudo umount -lf /mnt/proc $ sudo umount -lf /mnt/dev/pts $ sudo umount -lf /mnt/dev $ sudo umount -lf /mnt/boot/efi $ sudo umount -lf /mnt
自分が確認した限り(ソースは見ていません。)ですが、grub-install を実行する事によって
- nvram ( EFIでのブートエントリー ) への追加。
- ESP ( EFI System Partition ) 内の /boot/efi/EFI/ubuntu を以下を作成。
- 設定ファイルの作成。
をしている様です。
LegacyBIOS (CSM) , MBR の場合
インストールしたいデバイスが /dev/sdb だとします。
/dev/sdb
マウントポイント
partition1
ext4
/
パーティションを分けている時は別途マウントして下さい。
事故防止の為、
/dev/sdXY
に置き換えます。X ⇒ b , Y ⇒ 1 と考えて下さい。※ 各行の最初にある '$' , '#' はシステムが表示するものです。それぞれ「ユーザー権限」「管理者権限」で実行する事を示します。一緒に入力(コピー&ペースト)しないでください。 $ sudo mount /dev/sdXY /mnt $ sudo mount --bind /dev /mnt/dev $ sudo mount --bind /dev/pts /mnt/dev/pts $ sudo mount --bind /proc /mnt/proc $ sudo mount --bind /sys /mnt/sys $ sudo chroot /mnt # grub-install /dev/sdX # update-grub # exit $ sudo umount -lf /mnt/sys $ sudo umount -lf /mnt/proc $ sudo umount -lf /mnt/dev/pts $ sudo umount -lf /mnt/dev $ sudo umount -lf /mnt
内部リンク
RepairMbrWithGrub : 内部リンク
BootOptions (起動オプション変更画面の様子) : 内部リンク
外部リンク
Grub2 Installing : help.ubuntu.com
Installing Grub2 for EFI and BIOS mode on USB drive : ubuntuforums.org
GrubEFIReinstall : wiki.debian.org