VirtualBoxでゲストのファイルシステムが高負荷でread onlyにならないための方法

ホストOSがWindows 7でゲストOSがUbuntu 12.04という環境での話。
VirtualBoxのバージョンは4.2.4。


ゲストOSでビルドをぶんまわしていると、とたんにファイルシステムがread onlyになってしまう現象が頻繁に発生していた。

ぐぐってみたら既知の問題らしい。

High I/O causing filesystem corruption
https://www.virtualbox.org/ticket/10031


対策としてはVMの設定でストレージの項目にある「ホストのI/Oキャッシュを使う」のチェックを入れないというものがあった。

だが、それでは状況は改善されなかった。


最終的には以下にあるようにフラッシュする間隔を調整することにした。

http://www.virtualbox.org/manual/ch12.html#ts_config-periodic-flush

手元の環境ではフラッシュするのを1MBごとにして様子見をしている。10MBで試したときはあっさりread onlyになった。

"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" setextradata "ubuntu1204up-amd64" "VBoxInternal/Devices/ahci/0/LUN0/Config/FlushInterval" 1000000