ディスク容量がいっぱいになったときのソフトウェアの挙動を確認したい場合などに、一時的に容量の小さい仮想ストレージを作成する方法のメモです。調べた際にちょうどいい方法がうまくヒットしなかったのでメモします。
ログを書き出すツールを作成する際にストレージがいっぱいになったときののエラーハンドリングの処理を確認する場合などに役に立つ方法です。
tmpfsを作成しマウントします。ここではサイズに1Mを指定します。
sudo mkdir /mnt/smalltmpfs
sudo mount -t tmpfs -o size=1M tmpfs /mnt/smalltmpfs
作成したtmpfsを適当に埋めます。
cat /dev/random > /mnt/smalltmpfs/spaceholder
確認したいソフトウェアを実行します。下記はPythonを使い、先ほど作成したtmpfsにファイルを書き込む例です。OSError: [Errno 28] No space left on device
が出ます。
python -c 'from pathlib import Path; w = Path("/mnt/smalltmpfs/foo").open("a"); w.write("foobar"); w.flush();'
最後にumountでtmpfsを削除して終了です。
sudo umount /mnt/smalltmpfs
コメント