ssd デバイス#
最近、virt-manager で仮想ディスクを追加しようとすると、どのようにしても hdd として認識されてしまうことに気付きました。調査した結果、how-to-add-virtual-storage-as-ssd-in-kvmを見つけましたが、残念ながらこの方法は使用できず、デバイスが見つからないエラーが発生します。最終的には公式ドキュメントで次のような記述を見つけました。
オプションの属性 rotation_rate は、SCSI、IDE、または SATA バス上のディスクのストレージの回転速度を設定します。回転速度は、1 分あたりの回転数で示される値で、1025 から 65534 の範囲の値が使用されます。値 1 は、固体状態または非回転ストレージを示すために使用されます。これらの値は、基礎となるホストストレージの値と一致する必要はありません。0.0.3 以降のバージョンで利用可能な属性です。0.4.3 以降のバージョンで利用可能な "bus" 属性、0.9.11 以降のバージョンで利用可能な "tray" 属性、0.4.4 以降のバージョンで利用可能な "usb" 属性値、0.9.7 以降のバージョンで利用可能な "sata" 属性値、1.1.3 以降のバージョンで利用可能な "removable" 属性値、7.3.0 以降のバージョンで利用可能な "rotation_rate" 属性値です。
そして、次の例を見つけました。
<disk type='block' device='lun'>
<driver name='qemu' type='raw'/>
<source dev='/dev/sda'>
<slices>
<slice type='storage' offset='12345' size='123'/>
</slices>
<reservations managed='no'>
<source type='unix' path='/path/to/qemu-pr-helper' mode='client'/>
</reservations>
</source>
<target dev='sda' bus='scsi' rotation_rate='1'/>
<address type='drive' controller='0' bus='0' target='3' unit='0'/>
</disk>
virt-manager-> 編集 -> 設定 -> 一般 ->XML 編集を有効にし、target 属性にrotation_rate='1'
を追加するだけです。
nvme デバイス#
ヘッダーを次のように変更します。
<domain type='kvm'>
を
<domain xmlns:qemu="http://libvirt.org/schemas/domain/qemu/1.0" type="kvm">
最後に次のコードを追加します。
......
</devices>
<qemu:commandline>
<qemu:arg value="-drive"/>
<qemu:arg value="file=/mnt/windows/tmp/archlinux.qcow2,format=raw,if=none,id=nvm"/>
<qemu:arg value="-device"/>
<qemu:arg value="nvme,drive=nvm,serial=nvm"/>
<qemu:arg value="-drive"/>
<qemu:arg value="file=/var/lib/libvirt/images/archlinux-3.qcow2,format=raw,if=none,id=nvm-1"/>
<qemu:arg value="-device"/>
<qemu:arg value="nvme,drive=nvm-1,serial=nvm-1,bus=pcie.0,addr=0x11"/>
</qemu:commandline>
</domain>
仮想 PCIe スロットのアドレスが重複している場合は、addr の値を変更してください。