ブータブルUSBのVirtualBoxでの起動方法
「念願のFSFのメンバーカードの入手」で報告した通り,Trisquel GNU/LinuxのブータブルUSB型メンバーカードのデータ化して,VirtualBoxで起動した。
これが思っていたより難しくて時間がかかったので,次回ブータブルUSBをデータ化する際の参考にするため,手順を残しておく。
もっとも,Marcio H zuchiniが回答した「live usb – How to boot from a USB drive in VirtualBox? – Ask Ubuntu」に従っただけだ。
同じページのDavid Faureが回答しているように,単純にddコマンドでUSB (/dev/sdb
など) をiso化してそれを読み込ませれば,うまくいくだろうと予想していたのだが,うまくいかなかった。
基本的に,VirtualBoxの管理コマンドでVirtualBox用のデータ形式に変換して読み込ませる。
まず,最初に以下のコマンドを実行して現在のユーザーをvboxusers
グループとdiskグループに追加する。
sudo usermod -a -G vboxusers $LOGNAME
sudo usermod -a -G disk $LOGNAME
ユーザーのdiskグループへの追加はsudoコマンドで生のディスクへの書き込みを許すため危険らしい。
続いて,df
コマンドを実行して,デバイスとUSBメモリーの対応を確認する。
df
Filesystem Type Size Used Avail Use% Mounted on udev devtmpfs 3.9G 0 3.9G 0% /dev tmpfs tmpfs 788M 3.3M 784M 1% /run /dev/sda4 ext4 898G 683G 170G 81% / tmpfs tmpfs 3.9G 68M 3.8G 2% /dev/shm tmpfs tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/loop0 squashfs 45M 45M 0 100% /snap/gtk-common-themes/1353 /dev/loop1 squashfs 132M 132M 0 100% /snap/telegram-desktop/1019 /dev/loop3 squashfs 55M 55M 0 100% /snap/core18/1650 /dev/loop4 squashfs 55M 55M 0 100% /snap/core18/1668 /dev/loop5 squashfs 45M 45M 0 100% /snap/gtk-common-themes/1440 /dev/loop9 squashfs 86M 86M 0 100% /snap/shotcut/59 /dev/loop8 squashfs 86M 86M 0 100% /snap/shotcut/58 /dev/loop2 squashfs 132M 132M 0 100% /snap/telegram-desktop/1038 /dev/loop12 squashfs 92M 92M 0 100% /snap/core/8592 /dev/loop13 squashfs 8.7M 8.7M 0 100% /snap/canonical-livepatch/90 /dev/loop10 squashfs 8.7M 8.7M 0 100% /snap/canonical-livepatch/88 /dev/loop7 squashfs 90M 90M 0 100% /snap/core/8268 /dev/loop11 squashfs 157M 157M 0 100% /snap/gnome-3-28-1804/110 /dev/loop6 squashfs 161M 161M 0 100% /snap/gnome-3-28-1804/116 /dev/sda1 vfat 511M 6.2M 505M 2% /boot/efi tmpfs tmpfs 788M 68K 787M 1% /run/user/1000 /dev/sdb vfat 7.5G 7.4G 113M 99% /media/senooken/FSF-LIVE
今回は/dev/sdb
にUSBメモリーがマウントされている。
デバイスファイルがわかったところで,以下のコマンドでVMDKファイルに変換する。
sudo vboxmanage internalcommands createrawvmdk -filename ./usb.vmdk -rawdisk /dev/sdb
vboxmanage
はVBoxManage
のことがある。
コマンドの実行完了後,以下のコマンドで所有者を自分に変更する。
sudo chown $USER:$USER ./usb.vmdk
これでVMDKファイルの用意は完了だ。
後は,このファイルをVMの作成時に既存のファイルとして選ぶか,設定から [Storage]>[Strage Devices]>[Controller: SATA]>[Adds hard disk.]>[Choose existing disk] から選択すればよい。
手順に書かれている内容をそのままやっただけなのだが,成功事例ということで記録を残しておく。