たった1GB/home/user
の「メインファイル」をtruncate -s +1G homefile
。df
私は何を逃したことがありませんか? mkfs.etx4を再利用する必要はありませんか? ..これはデータを消去し、fallocateよりもtruncateを使用する目的を無効にするため、拡張後にresize2fsを使用する必要がありますが、データは変更されません。切り捨てた後にresize2fsを試してみましたが、ファイルシステムの種類が正しくありません(該当する場合はVMを再起動する必要があります)。
truncateを使用して拡張できない場合、動的に拡張されたファイルをマウントする他の方法はありますか?私はqcow2がこれを行うことができることを知っていますが、少し這うようです。私はsquashfsがPuppyOSやPorteuOSのような製品で利用可能であることを知っていますが、私が理解したように、設定するにはより多くのステップが必要です。うまくいけば、切り抜きのシンプルさが好きです。
答え1
ファイルシステムではなくプライマリストレージのサイズを変更するだけです。だからこれは完全に予想されます!
resize2fs
あなたに必要なツールです。resize2fs homefile
まだ機能していません(まだ実行しないでください)最初に、デフォルトのリポジトリが変更されたためにマウントされたループデバイスに通知する必要があるためです。
したがって、全体のプロセスは次のようになります。
- 画像サイズを増やす(
truncate
/fallocate
...) - loopdevにサイズが変更されたことを通知します。
losetup -c $(losetup -j homefile)
- ファイルシステムのサイズを変更します。
resize2fs $(losetup -j homefile)