SSD:我應該多久做一次 fstrim?
有不同的來源和不同的做法被建議。我發現以下建議應該多久執行一次 fstrim。
- 由 cron 每週執行
- 每天由 cron 執行
- 在每次啟動時執行
什麼是最佳選擇,為什麼?Ubuntu 14.04 預設使用第一個選項。
TRIM 至少做了三件事:
- 最小化寫放大
- 防止長期性能下降
- 不可恢復地刪除您的數據
現在,這取決於您的優先事項在哪裡。
對於 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 上恢復的機會較小。