Ubuntu(ホスト)には、WindowsゲストOSをほとんど提供しないVirtualboxがあります。
実行中のWindows仮想マシンがディスクへの大規模なアクセスを開始し、ホスト環境でブロックされることがあります。物理ハードディスクへのデータアクセスの読み取り/書き込みを制限したいと思います。
どうすればいいですか?
バージョン4.0以降、ディスクイメージへのアクセス用の仮想ボックス帯域幅を制限できます(詳細については、 仮想ボックスマニュアル を参照してください)
最初に帯域幅グループを作成する必要があります(以下の例では、20 MB/sの「制限」という名前が付けられています)。
VBoxManage bandwidthctl "VM name" add Limit --type disk --limit 20M
VBoxManage storageattach "VM name" --storagectl "SATA" --port 0 --device 0 --type hdd
--medium disk1.vdi --bandwidthgroup Limit
VBoxManage storageattach "VM name" --storagectl "SATA" --port 1 --device 0 --type hdd
--medium disk2.vdi --bandwidthgroup Limit
このエラーが発生した場合:
VBoxManage: error: Cannot register the hard disk '.../foo.vdi' {...} because a hard disk '.../foo.vdi' with UUID {...} already exists
次に、{}
を含むエラーで指定されたUUID(両方が同じである必要があります)でディスクイメージへのパスを置き換えます
ディスクアクセスをさらに10 MB/sに制限するには、次を発行します。
VBoxManage bandwidthctl "VM name" set Limit --limit 10M
これは実行時にも実行できます。