状況: サーバーは XFS ファイルシステムを使用し、ブロックサイズは 4kB です。小さなファイルがたくさんあります。
結果: 一部のディレクトリは 2 GB 以上のスペースを必要としますが、実際のファイル サイズは 200 MB 未満です。
解決策: XFS ブロック サイズを最小の 512B に変更します。オーバーヘッドが増え、パフォーマンスが低下することは承知していますが、どの程度かを知ることはできませんでした。
質問: どのようにそれを行う?
XFS が xfsdump を使用してデータをバックアップしていることは承知しています。したがって、/dev/sda2 が変更したい実際の XFS ファイルシステムであり、/mnt/export が xfsdump を使用してダンプしたい場所であると仮定します。マニュアルによると、ダンプされたブロックサイズは復元されたブロックサイズと同じである必要があり、-b パラメーターは「ダンプに使用するブロックサイズをバイト単位で指定します」。. 説明書にも「デフォルトのブロックサイズは1Mbです」と書いてあるのでちょっと心配です
これは完全なファイルシステムをダンプする正しい方法ですか (この場合、/dev/sda2 は /home にマウントされています)?
xfsdump -b 512 -f /mnt/export /home
上記のコマンドが正しい場合、ブロックサイズが 512B のファイルを正しく戻すにはどうすればよいですか? 私の推測では、次を使用して /dev/sda2 を 512B ブロックサイズに再フォーマットします
mkfs.xfs /dev/sda2 -b 512
そして使用する
xfsrestore -f /mnt/export /home
しかし、どうすればよいかわかりませんし、正しいかどうかをテストして確認する良い方法もありません。