web-dev-qa-db-ja.com

どのLinuxファイルシステムがSSDで最もうまく機能するか

ウィキから:

重要なTRIM機能は、2.6.33カーネル(2010年初頭に利用可能)以降のLinux OSでサポートされています。ただし、さまざまなファイルシステム間のサポートはまだ矛盾しているか存在しません。インストールソフトウェアでは、適切なパーティションアライメントも実行されません。

それで、どのファイルシステムがSSDに最もよく働き、インストール中にTRIM +パーティションアライメントをサポートし、Ubuntuで利用可能ですか?

119
hbt

ファイルシステムEXT4 + TRIM:

  • TRIMを使用したEXT4は、SSDドライブへの不要な書き込みサイクルを減らすことでパフォーマンスを向上させます。書き込み書き換えサイクルが制限されるためです。
  • Ubuntuと他のいくつかのLinuxフレーバーは箱から出してTRIMでEXT 4をサポートします。

SWAPパーティション:

  • 書き込みサイクルを減らすために、SSDにスワップスペースがないことを確認してください。
  • メカニカルドライブを使用している場合は、メカニカルドライブ上にスワップスペースを作成し、それをSSD上に置かないでください。

パーティションアラインメント:

  • ファイルシステムのブロックサイズがSSDのブロックサイズと揃うように、パーティションは1MBのきれいな境界から開始する必要があります。

そのため、EXT4 + TRIMをメカニカルハードドライブのSWAPで使用するか、SSDのSWAPを使用しないでください。

上記はSourceを参照することで実装できます: SSDパフォーマンスを最大化する方法

88
aliasgar

Archlinuxの記事 ソリッドステートドライブファイルシステムの選択 のセクションで述べています。

ファイルシステムにはExt2/3/4、Btrfsなどを含む多くのオプションがあります。

Btrfs
BtrfsのサポートはLinuxカーネルのメインライン2.6.29リリースに含まれています。 ext4の後継となる可能性のある初期採用者もいる一方で、本番用には十分に成熟していないと感じる人もいます。より詳しい情報は Btrfs の記事を読むことをお勧めします。

Ext4
Ext4はSSDをサポートする別のファイルシステムです。 2.6.28以降安定していると見なされ、毎日の使用には十分成熟しています。 Btrfsとは反対に、ext4はディスクの性質を自動的には検出しません。ユーザーはfstabで(またはtune2fs -o discard/dev/sdaXを指定して)discard mountオプションを使用して、TRIMコマンドサポートを明示的に有効にする必要があります。

BtrfsとExt4はどちらも、SSDを効率的に使用するための2つの主要な要件を満たしています。

  • ファイルシステムは、基盤となるSSDにATA_TRIMコマンドを発行できる必要があります。
  • ファイルシステムはディスクへの不要な書き込みを実行してはいけません

パフォーマンスに関しては、他に2つの要件があります。

  • パーティションはSSDのブロックサイズに合わせる必要があります
  • TRIMはExt4フォーマットのパーティションごとに明示的に有効にする必要があります

最初のものは今日ほとんどのLinuxインストーラで自動です。 "-cu"フラグを付けて起動した場合、fdiskは1024KB境界にもパーティションを作成します。

2番目はBtrfsでは自動ですが、Ext4ではこれは "/ etc/fstab"ファイルの各Ext4パーティションのマウントオプションのリストに "discard"を追加することで手動で行われます。詳細はこちら のhowto をご覧ください。

私の意見では、これはExt4のためにfstabを少しいじる必要はないが、この成熟した優れたファイルシステムを使用しない理由ではありません。

13
harrymc