背景
Intel NUCへUbuntuをクローンして同一環境のPCを増やした際に、"no bootable devices found"のメッセージが表示され、OSが起動しなくなった。
記事の目的
Intel NUC上で、クローンしたUbuntu起動できるようにする
フォールバック起動に変更
ここでは、起動しない原因と対処法について記載する。
起動しない原因
クローンしたUbuntuが起動しない原因は下記の通りである。- EFI下では、OSを起動するブートローダーにはUbuntuなどのOS固有の名称が付けられる
- マシンがブートローダーを検索できるように、ブートローダーをファームウェアのNVRAMに登録する必要がある
- 通常のインストール時には、NVRAMへの登録も自動的に行われる
- クローンした場合はNVRAMへの登録が行われないため、ブートローダーが見つけられず、OSを起動できない
対処方法
EFI下では、ブートローダーが見つからない場合、フォールバックとして起動するブートローダー名が設定されている。そこで、フォールバック用のブートローダーを作成する。
- メディアブート等でOSを起動する
- 対象のOSがインストールされたメディア(SSD、HDD)の中のEFI System Partition (ESP)をマウントする
- EFI/BOOTディレクトリ(フォールバック用のブートローダーディレクトリ)を作成する
- EFI/ubuntu/*を、EFI/BOOT/*へコピーする
対処方法例(Ubuntuメディアブートの場合)
Ubuntuメディアブートを行った場合の対処方法は、下記の通りである。$ sudo fdisk -l
Device Start End Sectors Size Type
/dev/sda1 2048 1128447 1126400 550M EFI System
/dev/sda2 1128448 79626398 78497951 37.4G Linux filesystem
/dev/sda3 79628288 85917854 6289567 3G Linux swap
$ sudo mount /dev/sda1 /mnt #「Type」が「EFI System」のものをマウントする
$ cd /mnt
$ sudo mkdir EFI/BOOT #フォールバック用のブートローダーディレクトリ
$ sudo cp EFI/ubuntu/* EFI/BOOT/
まとめ
- EFI下のPCでクローンしたUbuntuを使用する場合、OSが起動しなくなる問題の原因と対策について記載した
参考文献
- UEFI boot fails when cloning image to new machine
- How to mount the EFI system partition using Ubuntu 16.04 Live CD
変更履歴
- 2019/08/15: 新規作成
0 件のコメント:
コメントを投稿