Samsung M.2ハードドライブにUbuntu 16.04をインストールしようとしています。(USBドライブを使用)
どのファイルシステムを使用する必要がありますか?
- Fat32
- ext4
- ext3
- ext2
- NTFS
- 私が言及していない別のもの?
私のハードドライブは:
1TB SAMSUNG SM961 M.2, PCIe NVMe (up to 3200MB/R, 1800MB/W)
それらがすべて機能する場合、どちらが最速ですか?
おびえた初心者のためのヒント/落とし穴:)
Samsung M.2ハードドライブにUbuntu 16.04をインストールしようとしています。(USBドライブを使用)
どのファイルシステムを使用する必要がありますか?
私のハードドライブは:
1TB SAMSUNG SM961 M.2, PCIe NVMe (up to 3200MB/R, 1800MB/W)
それらがすべて機能する場合、どちらが最速ですか?
おびえた初心者のためのヒント/落とし穴:)
回答:
とてもシンプルです。OSに最適なファイルシステムを使用します。Ubuntuを含むほとんどのLinuxディストリビューションの場合、これは次のとおりです。
ext4
NTFSとfat32は、Linuxに必要な機能がないため、Unix / Linuxシステムには適していません。これらは、Windowsシステムからアクセスできる必要があるデータパーティションに適した選択肢となる場合があります。fat32は4GBを超えるファイルを格納できないことに注意してください。ただし、これは最も互換性のある選択です。古いDOSでもfat32を読み書きできます。
ext2とext3は基本的にext4の前身です。
ちなみに、速度は実際にはファイルシステムの問題ではありません。ハードドライブとバス(接続、USBポート)は、ファイル操作の速度を決定します。
かなり複雑。あなたが言及するファイルシステム間には大きな違いがあり、速度に対するこれらの違いの影響を決定することは、私見であり、自明ではなく、実行される操作に依存します。
まず、ルートファイルシステムをFATまたはNTFSパーティションにインストールする可能性を捨てましょう。これらのファイルシステムはLinuxカーネルと適切に互換性がなく、Linuxファイルシステムのアクセス許可はそれらに対して適切に機能しないため、多くの興味深い問題が発生します。
注:FAT32はUSBインストールメディアに適した選択肢であり、NTFSはアクセス可能な個人的なもの(メディアライブラリなど)を格納するために使用するパーティションのデュアルブート(Windowsでの)シナリオに適した選択肢ですUbuntu(またはその他のLinuxシステム)とWindowsの両方に。Linuxシステムは、正しくマウントされていればNTFSパーティションを読み取る(および書き込む)ことができますが、ext *パーティションは(私が知る限り)Windowsで簡単に読み取ることができません。
ext *システムは、Linuxカーネルで使用するように設計されています。Ubuntuのインストールにext2、3、または4を使用することは完全に正常です。おそらくそれらの間の最大の違いは
ファイルシステムを選択する際の考慮事項は速度だけではないことに注意してください。Ext4は以前のバージョンより制限が少なく、より大きなファイルシステム、無制限のサブディレクトリなどを許可しています。Ext3は、より多くの試行錯誤された、より安全で、データを失う可能性がわずかに低いと見なされています。ここではスピードに焦点を当てますが、パフォーマンス以外の最も重要なものについてのみ言及します。
ジャーナリングファイルシステムは、簡単に言えば、まだファイルシステムの主要部分に書き込まれていない変更のログを保持します。これは、クラッシュが発生した場合に、ジャーナルをメインのファイルシステム領域に書き込まれたものと比較することで、ファイルシステムの一貫性を簡単に確認できるようにするために行われます。つまり、ext3とext4を使用すると、ファイルシステムのチェック速度が大幅に向上します。また、ext4では未割り当てのブロックにマークを付けることができるため、それらのチェックをスキップしてfsckさらに高速にすることができます。
Ext4は、ジャーナルのチェックサムもチェックし(書き込み時のI / O待機が少なくなる)、ext3に比べて全体的にわずかに速度が向上します。
ファイルシステムの整合性をチェックする必要はあまりないかもしれませんが、ジャーナリングは犠牲になります-より多くのディスク書き込み。これは高速SSDの寿命にとって悪いだけでなく、パフォーマンスを低下させる可能性があります(書き込みに時間がかかります)。一般的なコンセンサスは、しかし、ジャーナリングはコストに見合う価値があるということです。
Ext4は、fallocate()ファイルにスペースを事前に割り当てるシステムコールをサポートしています。カーネルはいくつかのブロックを割り当て、それらに書き込むことなく初期化済みとしてマークを付けます。これは、古いファイルシステムで行われていたようにスペースにゼロを書き込むよりもはるかに高速です。
また、割り当てをバッチ処理する遅延割り当て(またはallocate-on-flush)を使用して(小さい割り当てを多数実行するのではなく)、CPUの使用量を減らして断片化を回避する傾向があります。
Ext4はext2およびext3と下位互換性があります。つまり、ext2と3のファイルシステムをext4としてマウントし、新しいブロック割り当てアルゴリズムなどの一部の機能を使用できるため、パフォーマンスがわずかに向上します。
完全にLinuxと互換性のあるファイルシステムはExt *だけではありませんが、それらは最もよく知られており、最もテストされています。他のファイルシステムはジャーナリングの代替手段を使用し、パフォーマンスに影響を与える可能性のある革新的な機能を備えています。たとえば、Btrfsはコピーオンライトを使用しますジャーナルの代わりにファイルシステムの整合性を維持する方法。ext *システムとはデータ構造が異なります。私の知る限り、Btrfsはext4よりも高速で一般的なパフォーマンスを提供することは知られていませんが、劣化の影響を受けにくいため、写真ビデオファイルのアーカイブストレージに特に適していると見なされています。これにより、使用中にファイルシステムの整合性をチェックおよびクリーンアップできるため、ユースケースによっては時間を節約できる場合があります。将来的には、Btrfsやその他の革新的なファイルシステムがさらに開発され、一般的な速度でext4よりも優れたパフォーマンスを発揮する可能性があります。
良いパフォーマンスを求めているほとんどのUbuntuユーザーは、今のところext4を使い続けたいと思うでしょう...
1 これと他のLinuxファイルシステムの概念は、Linuxカーネルの理解で非常によく説明されています。