日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在 Linux 下使用 fstrim 延長 SSD 驅動器的壽命

 

這個新的系統服務可以使你的生活更輕松。-- Alan Formy-duval(作者)

 

在過去的十年中,固態驅動器(SSD)帶來了一種管理存儲的新方法。與上一代的轉盤產品相比,SSD 具有無聲、更冷卻的操作和更快的接口規格等優點。當然,新技術帶來了新的維護和管理方法。SSD 具有一種稱為 TRIM 的功能。從本質上講,這是一種用于回收設備上未使用的塊的方法,該塊可能先前已被寫入,但不再包含有效數據,因此可以返回到通用存儲池以供重用。Opensource.com 的 Don Watkins 首先在其 2017 年的文章《 linux 固態驅動器:為 SSD 啟用 TRIM 》中介紹過 TRIM 的內容。

如果你一直在 Linux 系統上使用此功能,則你可能熟悉下面描述的兩種方法。

老的方式

丟棄選項

我最初使用 mount 命令的 discard 選項啟用了此功能。每個文件系統的配置都放在 /etc/fstab 文件中。

# cat /etc/fstab
UUID=3453g54-6628-2346-8123435f  /home  xfs  defaults,discard   0 0

丟棄選項可啟用自動的在線 TRIM。由于可能會對性能造成負面影響,最近關于這是否是最佳方法一直存在爭議。使用此選項會在每次將新數據寫入驅動器時啟動 TRIM。這可能會引入其他磁盤活動,從而影響存儲性能。

Cron 作業

我從 fstab 文件中刪除了丟棄選項。然后,我創建了一個 cron 作業來按計劃調用該命令。

# crontab -l
@midnight /usr/bin/trim

這是我最近在 Ubuntu Linux 系統上使用的方法,直到我了解到另一種方法。

一個新的 TRIM 服務

我最近發現有一個用于 TRIM 的 systemd 服務。Fedora 在版本 30 中將其 引入 ,盡管默認情況下在版本 30 和 31 中未啟用它,但計劃在版本 32 中使用它。如果你使用的是 Fedora 工作站 31,并且你想要開始使用此功能,可以非常輕松地啟用它。我還將在下面向你展示如何對其進行測試。該服務并非 Fedora 獨有的服務。它是否存在及其地位將因發行版而異。

測試

我喜歡先進行測試,以更好地了解幕后情況。我通過打開終端并發出配置服務調用的命令來執行此操作。

/usr/sbin/fstrim --fstab --verbose --quiet

fstrim 的 -help 參數將描述這些信息和其他參數。

$ sudo /usr/sbin/fstrim --help

Usage:
 fstrim [options] <mount point>

Discard unused blocks on a mounted filesystem.

Options:
 -a, --all           trim all supported mounted filesystems
 -A, --fstab         trim all supported mounted filesystems from /etc/fstab
 -o, --offset <num>  the offset in bytes to start discarding from
 -l, --length <num>  the number of bytes to discard
 -m, --minimum <num> the minimum extent length to discard
 -v, --verbose       print number of discarded bytes
     --quiet         suppress error messages
 -n, --dry-run       does everything, but trim

 -h, --help          display this help
 -V, --version       display version

因此,現在我可以看到這個 systemd 服務已配置為在我的 /etc/fstab 文件中的所有受支持的掛載文件系統上運行該修剪操作(-fstab),并打印出所丟棄的字節數(-verbose),但是抑制了任何可能會發生的錯誤消息(–quiet)。了解這些選項對測試很有幫助。例如,我可以從最安全的方法開始,即空運行。我還將去掉 -quiet 參數,以便確定驅動器設置是否發生任何錯誤。

$ sudo /usr/sbin/fstrim --fstab --verbose --dry-run

這就會顯示 fstrim 命令根據在 /etc/fstab 文件中找到的文件系統要執行的操作。

$ sudo /usr/sbin/fstrim --fstab --verbose

現在,這會將 TRIM 操作發送到驅動器,并報告每個文件系統中丟棄的字節數。以下是我最近在新的 NVME SSD 上全新安裝 Fedora 之后的示例。

/home: 291.5 GiB (313011310592 bytes) trimmed on /dev/mApper/wkst-home
/boot/efi: 579.2 MiB (607301632 bytes) trimmed on /dev/nvme0n1p1
/boot: 787.5 MiB (825778176 bytes) trimmed on /dev/nvme0n1p2
/: 60.7 GiB (65154805760 bytes) trimmed on /dev/mapper/wkst-root

啟用

Fedora Linux 實現了一個計劃每周運行它的 systemd 計時器服務。要檢查其是否存在及當前狀態,請運行 systemctl status。

$ sudo systemctl status fstrim.timer

現在,啟用該服務。

$ sudo systemctl enable fstrim.timer

驗證

然后,你可以通過列出所有計時器來驗證該計時器是否已啟用。

$ sudo systemctl list-timers --all

會顯示出下列行,表明 fstrim.timer 存在。注意,該計時器實際上激活了 fstrim.service 服務。這是實際調用 fstrim 的地方。與時間相關的字段顯示為 n/a,因為該服務已啟用且尚未運行。

NEXT   LEFT    LAST   PASSED   UNIT           ACTIVATES
n/a    n/a     n/a    n/a      fstrim.timer   fstrim.service

結論

該服務似乎是在驅動器上運行 TRIM 的最佳方法。這比必須創建自己的 crontab 條目來調用 fstrim 命令要簡單得多。不必編輯 fstab 文件也更安全。觀察固態存儲技術的發展很有趣,并且我很高興看到 Linux 似乎正在朝著標準且安全的方向實現它。

在本文中,學習了固態驅動器與傳統硬盤驅動器有何不同以及它的含義…


via: https://opensource.com/article/20/2/trim-solid-state-storage-linux

作者: Alan Formy-Duval 選題: lujun9972 譯者: wxy 校對: wxy

本文由 LCTT 原創編譯, Linux中國 榮譽推出

分享到:
標簽:驅動器 SSD
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定