「USBに直接ドラッグ&ドロップして起動してみたらどうなるんだろう」気になって試したところ、エラーになりました。
その操作をしたときのUSBメモリのファイルシステムはNTFSであったりしませんでしたか? また、USBメモリのルートディレクトリ下にただコピーしただけではありませんでしたか? それではPCのUEFIからOSを起動することはできません。質問文中に貼っている画像で、
sudo cp BOOTX64.EFI /mnt/usbmem/EFI/BOOT
のコマンド実行があります。これは、それ以前のコマンド操作でUSBメモリのパーティションをファイルシステム「FAT」でフォーマットし、\EFI\BOOT
と言うディレクトリを作成し、その下にBOOTX64.EFI
をコピーするという流れになっています。これにより初めて正しく、PCからOSやUEFIアプリケーションなどを起動できるようになります。それぞれのコマンド操作の意味を改めて理解してみてください。
ファイルシステムFATでフォーマットされた起動ディスクの\EFI\BOOT\
ディレクトリ下に配置されたファイルで起動するというのは、UEFIの仕様のひとつです。
Unified Extensible Firmware Interface - Wikipedia(ja)
の「ブートマネージャー」の章を読んでみてください。ただし、UEFIの仕様はこのWikipediaの記載内容に限らず、膨大な量です。場合によってはご利用のPCやOSに合わせて読み解く必要があります。
追記しました:
それぞれのコマンド操作の意味を改めて理解してみてください。
初心の方だと思うので、実行しているコマンドを解説しておきます。
読み易くするため、スーパーユーザーの権限で実行するsudo
は除いています。
# (1) FATでフォーマットする為、マウント済みのUSBメモリをアンマウントする。
umount /dev/sdb1
# (2) アンマウントしたUSBメモリの第1パーティションをFATでフォーマットする。
# ※FATの細かい種別は自動的に選択。
mkfs.fat /dev/sdb1
# (3) USBメモリのマウントポイント /mnt/usbmem/ ディレクトリを作成する。
mkdir -p /mnt/usbmem
# (4) USBメモリのフォーマット済みの第1パーティションを
# マウントポイント /mnt/usbmem/ 下にマウントする。
mount /dev/sdb1 /mnt/usbmem
# (5) USBメモリのパーティションの直下に /EFI/BOOT ディレクトリを作成する。
mkdir -p /mnt/usbmem/EFI/BOOT
# (6) USBメモリの/EFI/BOOT/ ディレクトリ下に BOOTX64.EFIファイルをコピーする。
cp BOOTX64.EFI /mnt/usbmem/EFI/BOOT
# (7)マウント済みのUSBメモリをアンマウントする。
# ※これでUSBメモリに書き込んだ内容もフラッシュされ、確実に保存されます。
umount /mnt/usbmem
# お疲れ様でした。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2021/04/30 13:29