Ssd

SSD:我應該多久做一次 fstrim?

  • January 24, 2019

有不同的來源和不同的做法被建議。我發現以下建議應該多久執行一次 fstrim。

  • 由 cron 每週執行
  • 每天由 cron 執行
  • 在每次啟動時執行

什麼是最佳選擇,為什麼?Ubuntu 14.04 預設使用第一個選項。

TRIM 至少做了三件事:

  1. 最小化寫放大
  2. 防止長期性能下降
  3. 不可恢復地刪除您的數據

現在,這取決於您的優先事項在哪裡。

對於 1),您根本不應該使用fstrim,而是使用discard文件系統的選項。只有當一切都被立即修剪後,SSD 才會停止複制不再需要的數據位。但在實踐中,已經證明防止寫入放大並不是那麼重要,因為 SSD 可以處理大量寫入。

對於 2),fstrim每週甚至每月使用都可以。無需使用即時丟棄或每天修剪 - 這將是一種短期措施,但這是為了讓 SSD 長期保持滿意。但這也取決於您的使用情況:如果您的文件系統總是滿的並且看到大量寫入,那麼您可能需要更頻繁地進行修剪,而不是您的文件系統中往往有大量可用空間並且寫入不多。

對於 3),您根本不應該使用任何類型的修剪。基本上,如果您希望成為人類,犯錯誤,發生事故 - 比如您剛剛刪除了您的照片集,哎呀 -photorec在 TRIM 之後,恢復工具將無法工作,因為有了 TRIM,一切都一去不復返了。

從純數據恢復的角度來看,SSD 是一個非常令人頭疼的問題。Linux 中發生了太多的修剪,即使沒有詢問您(mkfs暗示修剪,lvremove/ lvresize/… 可能如果issue_discards,某些分區器可能有想法,…)。突然之間,以前可逆的操作變得不可逆,這一切都是為了在某些文件系統基準測試中獲得更多分數……

如果您決定fstrim您應該知道 cron 作業的位置,以便在發生事故時禁用它,這樣您就可以在 2) 和 3) 之間取得折衷。一般來說,使用 SSD,您應該確保有良好的備份,它們比 HDD 更重要,因為您在 SSD 上恢復的機會較小。

引用自:https://unix.stackexchange.com/questions/218076