Windows と Ubuntu のデュアルブートで起動時に以下のメッセージが出て困りました。
Minimal BASH like line editing is supported. For the first word, TAB lists possible command completions. anywhere else TAB lists possible device or file completions.
対処
- Ubuntu のライブ USB を起動順位 1 番にして起動
- Try Ubuntu の一番上のオプションを選択して起動
- ライブ環境が起動したらターミナルを開く
- 次のコマンドを実行して、Ubuntu のインストールされているパーティションを探す
これにより、すべてのディスクとパーティションの一覧が表示される。Ubuntu がインストールされているパーティションを探す("Linux" または "Linux filesystem" というラベルが付いている)。
sudo fdisk -l
- Ubuntu がインストールされているパーティションをマウント(Ubuntuが
/dev/nvme0n1p4
にインストールされている場合の例)sudo mount /dev/nvme0n1p4 /mnt
- chroot環境を設定
sudo chroot /mnt
- 以下のコマンドを実行して、GRUBを再インストール(特定のパーティションではなくディスク全体に
grub-install
とする)grub-install /dev/nvme0n1
- GRUBの設定ファイルを更新
update-grub
grub-install 時のエラー
cannot find a device for /boot/grub (is /dev mounted?)
-
/mnt/boot/grub
ディレクトリが存在することを確認ls /mnt/boot/grub
grub.cfg
というファイルが表示されることを確認(ないとエラーの原因になる) -
/dev
,/proc
,/sys
ディレクトリを新しいルート環境にバインドマウントfor i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
cannot find EFI directory
EFIディレクトリは、通常、EFIシステムパーティション(ESP)と呼ばれる特別なパーティションに存在します。このパーティションには、UEFIファームウェアがシステムを起動するために必要なブートローダーが格納されています。
-
以下のコマンドの出力から、EFI System というタイプのパーティションを探す
sudo fdisk -l
-
以下のコマンドを実行して、EFIシステムパーティションをマウント
sudo mount /dev/nvme0n1p1 /mnt/boot/efi