USBフラッシュドライブを使用して(他の)ハードドライブのパーティションからLinuxを起動するには?
ハードドライブの暗号化されたパーティションにLinuxをインストールしようとしています(LUKSのLVMを使用)。
/boot
暗号化されていない別のパーティションにある必要があるため、USBフラッシュドライブに保存したいと思います。
私の計画は、GRUB(2)をフラッシュドライブ(/dev/sdb
)にインストールし、そのMBRからLinuxを起動するか、ドライブが取り外されている場合はハードドライブ(/dev/sda
)MBRからWindowsを起動することです。
GRUB(2)をにインストールしましたが、/dev/sdb
フラッシュドライブから起動しようとすると、次のメッセージが表示されます。
GRUB ロード
数秒後、次のような追加メッセージが届きました。
読み取りエラー
テスト目的でコンテンツを削除しようとしましたが、/boot
フラッシュドライブから再起動した後も同じメッセージが表示されました。
パーティションの詳細
/dev/sda
(ハードディスク):
MBR: Windows Bootloader
/dev/sda1 - Windows System Partition
/dev/sda2 - Windows Boot Partition
/dev/sda3 - Windows Data Partition
/dev/sda4 - Linux partition
/dev/sdb
(USBフラッシュドライブ):
MBR: GRUB
/dev/sdb1 - Linux /boot Partition
GRUBの詳細
/etc/default/grub
:
GRUB_CMDLINE_LINUX="cryptdevice=/dev/disk/by-uuid/$SDA4_UUID:vg root=/dev/mapper/vg-root resume=/dev/mapper/vg-swap cryptkey=/dev/disk/by-uuid/$SDB1_UUID:ext2:/key"
..
GRUB_DISABLE_LINUX_UUID=true
インストールコマンド
grub-install --target=i386-pc --recheck /dev/sdb
私はアーチLinuxを使用しています。
答え1
試してみましたか?
grub-install --target=i386-pc --recheck /dev/sdb1
/dev/sdb1 が USB デバイスとして表示されます。
MBR: GRUB
/dev/sdb1 - Linux /boot Partition
たぶんこれを試してみてください:
title Start Ubuntu from USB DISK (PC)
root (cd)
kernel /boot/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper noprompt cdrom-detect/try-usb=true persistent
initrd /boot/initrd.lz
boot
答え2
2つ:まずUSBキーを消去できますか?私の考えでは、簡潔な「読み取りエラー」メッセージが以前のバージョンのグラブから来たようです。
内容を確認しましたgrub.cfg
か? GRUB_DISABLE_UUID_LINUX
複数のドライブで目的の操作を実行できない場合があります(デバイスノード名が渡されます。)。私はupdate-grub
その行を再度実行してコメントを付けます。