一部のグループでは、ディスク容量の小さいコンピュータ(32GB ideapad、ノートブックなど)でLinuxのファイルシステム(btrfs vs ext4など)を使用することについて議論することを聞きました。
ファイルシステムの選択は実際に同じファイルの使用に影響しますか?私は、別のファイルシステムを選択すると、より多くの空きディスク容量を得ることができるという意味ですか?まったく同じ結果を得ました。
ベストアンサー1
はい、大きな違いを生むことができます。通常、小さなファイルが多くのファイルシステムで最大の違いを生み出します。したがって、ビデオコレクション(主にGBファイル)や音楽コレクション(主にMBファイル)にも影響を与えない可能性があります。しかし、ファイルシステムがサイズがほんの数キロバイトしかないファイルでいっぱいになっている場合は、間違いなく違いがあることがわかります。
各ファイルに必要なメタデータにはいくつかの違いがあります。ここでメタデータとは、ファイル名、権限、タイムスタンプ、カスタムファイルシステムのプロパティなど、ファイルデータに含まれていないすべてを意味します。
実際には、ファイルシステムの機能とファイルシステムの構成方法によって異なりますが、ファイルごとのデータは、ファイルサイズに関係なくバイトからキロバイトまで可能です。
ファイルは個々のバイトとして保存されず、バイトブロックとして保存されます。 ext4から512MBを超えるファイルシステムの場合、ブロックはデフォルトで4KiBです。したがって、正確に4096バイトのファイルはディスク上の4096バイトを占めますが、4095バイトまたは1バイトのファイルはディスク上の4096バイトを占めます。 4097バイトファイルは再び8192バイトを占めます。これをパディングといいます。
一部のファイルシステムは、カスタム(より小さい)ブロックサイズでフォーマットできます。これは充電を減らすかもしれませんが、副作用があるかもしれません。いくつかの最新のハードドライブは、小さなブロックでは正しく動作しません。理論的には、割り当てられたブロックを表示するためにより多くのスペースが必要になるため、実際に容量を減らすことができます。しかし、私はこのようなことが起こったことを直接見たことがありません。
これで、すべてのファイルシステムがパディングブロックを無駄にするわけではありません。一部のファイルシステム(btrfsを含む)は、ブロックに複数のファイルを割り当てます。バラよりブロック再割り当て。
それから別の明確な特徴があります。一部のファイルシステムはファイルの内容を透過的に圧縮できます。ファイルの内容が正常に圧縮されるという保証はありませんが、非常に成功する可能性があります。
サンプルファイルシステムは zfs です。バラよりzfsで圧縮を有効にする。