KVMゲストOS上でUSBハードディスクを使用する
先日KVMで仮想環境を構築したのですが、KVMホスト上でUSBハードディスクをマウントする必要が出てきました。
しかし、通常の状態ではUSBハードディスクを認識してくれません。
接続方法
ゲストOSでUSBドライブを使用する方法はいくつかありそうですが、ぱっと調べると
- PCIパススルー
- ディスクとして渡す
方法があるそうです。
PCIパススルーの方がUSB機器としての認識が可能なので、そちらを使用しようと思いましたが、PCIパススルー使用のためには CPUがIntel VT-d に対応している必要があるらしく、我が家ののPCでは使えなかったです。
ということで、ホストOS側で認識しているデバイス自体を仮想ホストに割り当てます。
### xmlファイルを作成(ドライブはuuidで指定) % vim device.xml <disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/disk/by-uuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'/> <target dev='vdb' bus='virtio'/> </disk> ### デバイスの追加 % sudo virsh update-device centos7 ./device.xml
これで、ゲストOS上でマウント可能になります。
### マウント
[@guest]% sudo mount -t ext4 -o defaults /dev/sdb /media/usbhdd/