web-dev-qa-db-ja.com

UbuntuはSSDで使用するTRIMコマンドをサポートしていますか?

パフォーマンスを維持するために、ドライブがいっぱいになった後、SSDドライブを「クリア/リセット」する必要があります。これは、新しいSSDドライブのTRIMコマンドを使用して実行されます。 Ubuntuは、これらのドライブのクリア/リセットのために(hdparmなどを介して)TRIMコマンドをサポートしていますか?

34
ssanj

10.10以降のリリースでは、TRIM機能がサポートされているようです。

また、TRIMの処理は自動的に行われます。ディスクがTRIMをサポートしていると報告した場合、空のブロックは不要になると自動的に解放されます(ファイルを削除するなど)。これが機能するためにhdparmコマンドを手動で発行する必要はありません。

24
Jeremy Kerr

ジェレミーの答えは完全に正確ではありません。私はしばらくの間Lucidで最新の安定したカーネルを実行してきましたが、メインディスクとしてOCZ Agilityを使用しているため、TRIMのステータスを非常に鋭く追跡しています。

ここに私が知っている(私が思うに)があります:

  • カーネルは2.6.33の時点でTRIMをサポートしています(Maverickは2.6.35です)。

  • EXT4はTRIMをサポートしていますが、 ジャーナリング がオフの場合のみです。

  • カーネルでTRIMが機能する方法は非常に基本的であり、非常に低速です。仕様に準拠したディスクは複数の範囲を受け入れることができますが、カーネルは現在一度に1つの範囲しか実行できません。これは、おそらく1か月前に読んだものから来ています。これは当てはまらないか、適用されなくなる可能性があるため、ソースがあればいいのにと思います。

ジャーナリングは私にとってそれを殺すものです。データ破損はPITAです。

ただし、新しいバージョンのhdparm(v9.25-Maverickはv9.27)には、wiper.shというスクリプトが付属しています。このスクリプトは、ドライブの迅速な分析を実行し、すべての空のスペースをトリミングします。機能を失うよりも、wiper.shを1週間に1回(または1日に1回、1か月に1回)実行する方がはるかに簡単です。 OSドライブのSSDの劣化は、絶えず物事を壊していない限り、それほど速く起こりません。リアルタイムTRIMmingは必要ありませんneed

DiskTRIM と呼ばれるGUIフロントエンドもありますが、リポジトリには表示されません。経験の浅いユーザーは、cronジョブを設定するよりも使いやすいと感じるかもしれません。

HdparmとdisktrimにはPPAがあり、2.6.33 +カーネルを必要とせずにすべてLucid(およびそれ以降)で実行できます。

20
Oli

Linuxは、カーネル2.6.33以降、ETX4ファイルシステムでの自動TRIMをサポートしています。

自動TRIMサポートを備えた最初のUbuntuリリースは10.10(Maveric)ですが、fstabでアクティブ化する必要があります( here で説明)。

8
Uli

一般的には、新しいカーネルを入手する方法がたくさんあるためです。質問を明確にして、「10.04 LTSには、すぐにコマンドのサポートがありますか?」答えはノーです。ただし、MaverickとNattyの両方のカーネル(-generic、-generic-pae、-server、および-virtualフレーバー)は10.04 LTSにバックポートされており、Ubuntuリポジトリの$ release-updatesから入手できます(例:linux-image-generic-lts-backport-maverickMaverickのLucidへのバックポート です。

4
Daniel T Chen

私は11.04を実行していますが、TRIMはそのままで動作しているようには見えません。

ここの手順を使用してファイルを作成、削除し、セクターがゼロで消去/削除されるかどうかを確認する をテストしました。

私はTRIMを有効にしようとしました ここの手順を使用して しかしサイコロはありません

私はワイパーを実行します、私は得る

/sbin/wiper.sh --verbose --commit /dev/sda1
wiper.sh:Linux SATA SSD TRIMユーティリティ、バージョン3.3、Mark Lord氏による。
 rootdev = /dev/sda1
fsmode2:fsmode = read-write 
 /:fstype = ext4 
 freesize = 13785252 KB、予約済み= 137852 KB 
のオンラインTRIMの準備/ dev/sda1の空きスペース(ext4は/に読み書きをマウント)。
 
この操作は、データを静かに破壊する可能性があります。本当に(y/N)ですか? y 
一時ファイルの作成(13647400 KB).. 
ディスクの同期.. 
 TRIM操作の開始.. 
 get_trimlist =/sbin/hdparm --fibmap WIPER_TMPFILE。 9689 
 
/dev/sda:
 462範囲から27294800セクターをトリミング
 succeeded 
一時ファイルを削除.. 
同期ディスク.. 
完了。

ただし、もう一度実行すると、同じ数のセクター/範囲をトリミングする必要があることが示され、再び成功が報告されます。私は毎回まったく同じものを得ます。セクターが削除/解放されたようには見えません。それらを読み取っても、同じデータが表示されます。

他の誰かがそれを動作させるかどうか興味があります。

2
user10292