0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

如何延長SSD和SD卡的使用壽命和性能

CHANBAEK ? 來源:myfreax ? 作者:myfreax ? 2023-01-04 17:33 ? 次閱讀

SSD固態(tài)驅動器和SD卡的寫入次數(shù)是有限的。為了充分利用這種存儲類型,我們需要進行一些調整以最大限度地延長 SSD 和 SD 卡的使用壽命和性能。

iotop 命令監(jiān)控讀/寫

iotop全稱Input/Output top是一個Linux命令,用于顯示和監(jiān)控Linux磁盤IO的詳細信息,也可以獲取進程IO的使用情況。

它產(chǎn)生類似于top命令的輸出。它通常需要root權限才能運行。系統(tǒng)管理員使用它來跟蹤可能導致高磁盤I/O讀/寫的進程。

可以使用您的Linux發(fā)行版的包管理器安裝iotop命令,安裝完成后運行命令iotop-oPa監(jiān)控磁盤的IO詳細信息。

sudo apt install iotop #Denbian
sudo yum -y install iotop #CentOS Fedora
iotop -oPa

然后讓iotop命令監(jiān)控幾分鐘或幾小時,具體取決于磁盤I/O使用的強度。使您可以輕松識別占用磁盤I/O的進程即可。

對于非必要的進程,可以禁止自動啟動,對于必須的進程可以選擇優(yōu)化程序減少對磁盤IO的請求。

例如我們在文章Linux 性能:磁盤I/O是否降低應用程序性能提到的優(yōu)化MySQL減少對磁盤IO的讀寫。

使用mount 命令的noatime掛載選項

在etc/fstab文件中使用mount命令的noatime選項停止記錄文件系統(tǒng)的讀取訪問時間。

mount命令noatime選項消除了系統(tǒng)對讀取文件時進行時間戳寫入的需要。由于寫入成本非常高,這通常會帶來可觀的性能提升。

etc/fstab文件是文件系統(tǒng)的靜態(tài)掛載表,它包含掛載文件系統(tǒng)的描述信息。當系統(tǒng)啟動時系統(tǒng)將會讀取此文件掛載設備。

請使用你喜歡的文本編輯器編輯etc/fstab。在本教程中我們使用vim編輯文件etc/fstab,修改完成后保存文件并退出vim。

sudo vim etc/fstab
/dev/sdx / ext4 discard,noatime,errors=remount-ro 0 1

etc/fstab

將臨時目錄掛載為tmpfs

tmpfs全稱Temporary File System,是Unix/Linux操作系統(tǒng)中實現(xiàn)的臨時文件存儲規(guī)范。

它雖然是一個可掛載的文件系統(tǒng),但數(shù)據(jù)存儲在內(nèi)存中,而不是持久性存儲設備中。

tmpfs文件系統(tǒng)的結構類似于RAM磁盤,它顯示為虛擬磁盤驅動器并托管磁盤文件系統(tǒng)。

如果您的系統(tǒng)有足夠的內(nèi)存,您可以將一些臨時目錄掛載為tmpfs。這將會減少對SSD的不必要寫入。請使用你喜歡的文本編輯器,再次編輯etc/fstab。

以下etc/fstab文件會將tmpfs設備掛載在/tmp和/var/tmp目錄,最后還使用noatime掛載選項減少寫入。

sudo vim etc/fstab
tmpfs   /tmp       tmpfs   defaults,noatime,mode=1777   0 0
tmpfs   /var/tmp   tmpfs   defaults,noatime,mode=1777   0 0

etc/fstab

避免頻繁使用交換空間

這是對使用交換分區(qū)的系統(tǒng),對SSD和SD卡推薦的調整。這將減少系統(tǒng)的swappiness值,從而減少磁盤I/O操作。

在降低系統(tǒng)的swappiness值之前請先閱讀教程Linux性能:為什么你應該添加交換空間swap。

如果您有足夠的可用內(nèi)存并了解風險,則可以完全避免添加交換空間或使用交換空間。

您還可以使用systemd-swap僅在必要時啟用自動交換。另外閱讀zram-generator或zram-swap。

如果需要降低swappiness值,請在Debian/Ubuntu/Red Hat/CentOS使用vim編輯器修改etc/sysctl.conf文件。

sudo vim etc/sysctl.conf
vm.swappiness=10

減少日志寫入

禁用Apache、Nginx、郵件服務器和其它服務的訪問日志。系統(tǒng)穩(wěn)定后,您可以將系統(tǒng)日志級別從info降級到warn或者error級別。

或者,如果你不在意丟失日志文件,甚至可以將tmpfs臨時文件系統(tǒng)掛載在/var/log目錄。

請再次使用你喜歡的文本編輯器,編輯etc/fstab文件添加以下掛載tmpfs設備的描述信息。

sudo vim etc/fstab
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0

將更多具有大量I/O的目錄掛載到tmpfs

例如,將WordPress 緩存目錄從磁盤掛載到tmpfs。運行命令tmpfs /full/path/to/wp-content/cache tmpfs defaults, size=1G 0 0。

tmpfs /full/path/to/wp-content/cache tmpfs defaults, size=1G 0 0

profile-sync-daemon 僅適用于桌面

如果您沒有優(yōu)化Web服務器并使用Firefox、Chrome等,請安裝profile-sync-daemon。

Profile-sync-daemon (PSD) 是一個小型偽守護程序,旨在管理您在tmpfs中的瀏覽器配置文件,并定期將其同步回您的物理磁盤HDD或者SSD。

I/O 輸入輸出調度器

考慮從CFQ切換到NOOP或Deadline,兩者都在SSD和SD卡上提供更好的性能。要查看當前使用I/O調度器。

請運行命令cat /sys/block/sdX/queue/scheduler。記得將替換sdX替換為你的SSD設備的名稱,X不是磁盤分區(qū),例如是sda,sdb。

例如命令echo "deadline" | sudo tee /sys/block/sda/queue/scheduler修改I/O 輸入輸出調度器為deadline。

cat /sys/block/sdX/queue/scheduler

echo "deadline" | sudo tee /sys/block/sda/queue/scheduler

TRIM

TRIM允許Linux丟棄SSD不再使用的數(shù)據(jù)塊。因此刪除文件時,SSD可以將數(shù)據(jù)寫入塊,而無需執(zhí)行繁瑣的刪除過程。

從本質上講,TRIM可確保你的SSD的性能不會因為使用久后而導致性能降低太多。

要在Linux啟用TRIM。首先請檢查etc/fstab文件確認你已為SSD設備使用掛載選項discard。運行命令cat etc/fstab。

然后檢查您的SSD或SD卡是否支持TRIM,運行命令sudo hdparm -I /dev/sdx | grep "TRIM supported",Sd的X不是磁盤分區(qū),例如是sda,sdb。

sudo hdparm -I /dev/sdx | grep "TRIM supported"
sudo systemctl status fstrim.timer
sudo systemctl enable fstrim.timer
sudo systemctl start fstrim.timer
 fstrim.timer - Discard unused blocks once a week
     Loaded: loaded (/lib/systemd/system/fstrim.timer; enabled; vendor preset: enabled)
     Active: active (waiting) since Sun 2023-01-01 21:43:57 HKT; 1h 16min left
    Trigger: Mon 2023-01-02 00:00:00 HKT; 3h 32min left
   Triggers:  fstrim.service
       Docs: man:fstrim

Jan 01 21:43:57 myfreax systemd[1]: Started Discard unused blocks once a week.

進一步提高SSD和SD卡的性能/壽命

使用更大的SD卡。 寫入根據(jù)存儲大小擴展,因此存儲越大,重復寫入相同區(qū)域的次數(shù)越少,意味著磨損越少。

最后一分錢一分貨,便宜的SSD和SD卡通常不會使用長久,也不會有那么好的性能。

要檢查SSD和SD卡的壽命,請運行命令sudo smartctl -a /dev/sdxx,sdxx是你SSD/SD卡的分區(qū)在。

要關注SSD的壽命可以只看行SMART overall-health self-assessment test result: PASSED?;蛘哌\行命令sudo smartctl -H /dev/sdb4

sudo yum install smartmontools -y
sudo apt-get install smartmontools -y

sudo smartctl -a /dev/sdxx
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.15.0-56-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Samsung based SSDs
Device Model:     Samsung SSD 850 EVO 120GB
Serial Number:    S21VNSAG415755B
LU WWN Device Id: 5 002538 da024519b
Firmware Version: EMT01B6Q
User Capacity:    120,034,123,776 bytes [120 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2, ATA8-ACS T13/1699-D revision 4c
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Jan  1 20:35:52 2023 HKT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11213

    瀏覽量

    208736
  • SD卡
    +關注

    關注

    2

    文章

    558

    瀏覽量

    63753
  • SSD
    SSD
    +關注

    關注

    20

    文章

    2839

    瀏覽量

    117137
  • 命令
    +關注

    關注

    5

    文章

    678

    瀏覽量

    21966
收藏 人收藏

    評論

    相關推薦

    如何延長平板電腦屏幕使用壽命訣竅

    。那么如何將老化的時間盡可能后退呢?以下幾個小絕招可以讓你的屏幕延長使用壽命。 1、平時要減少屏幕在日光下暴曬的可能。白天使用,盡量避免陽光直射,以防屏幕受日照后,溫度過高,加快老化。 2、做好日常
    發(fā)表于 12-30 10:53

    延長鋰電池使用壽命的方法

    延長鋰電池使用壽命的方法常常會有人問,“鋰電池為什么比鉛酸電池好?”“延長鋰電池使用壽命的方法”下面莊文展手機維修培訓學校就針對以下的兩點內(nèi)容,給您進行一個簡單的解答。希望您可以在了解
    發(fā)表于 09-15 14:42

    怎么延長電表使用壽命?

    如何延長電表使用壽命是個問題?解決問題前,提醒下——請先不要像倒洗澡水一樣丟棄電表! 全世界的電力公司利用智能電表和高級計量基礎設施(AMI)實現(xiàn)遠程抄表、遠程連接/斷開、需求/響應以及其他高效運營
    發(fā)表于 07-24 08:15

    管理MCU軟件延長電池使用壽命

    關閉不必要的外設以降低功耗。管理MUC外部器件的功耗—在需要盡可能延長電池的使用壽命時,除了關閉非必要的MCU內(nèi)部組件,還可使用系統(tǒng)中的MCU來打開或關閉外部器件。謹慎選擇MCU器件類型—需注意
    發(fā)表于 09-07 14:52

    天宇如何延長濾芯使用壽命

    用過過濾器的用戶都清楚,使用過程中需要經(jīng)常更換過濾器的濾芯,一旦有東西堵塞,直接就會影響到過濾效果。根據(jù)工作人員透露,經(jīng)常更換濾芯也是一件麻煩事情,下面由天宇凈化為大家講解如何延長過濾器濾芯使用壽命
    發(fā)表于 05-14 15:44

    如何延長蓄電池的使用壽命?

    如何延長蓄電池的使用壽命?
    發(fā)表于 06-18 06:03

    如何延長蓄電池的使用壽命

    如何延長蓄電池的使用壽命 閥控式密封蓄電池的使用壽命包括使用期限和循環(huán)壽命。使用期限是指蓄電池可供使用的時間,包括蓄電池的存放時間。循環(huán)
    發(fā)表于 11-04 11:24 ?26次下載

    如何延長干電池使用壽命

    如何延長干電池使用壽命干電池快用完了,可以用充電的方法來延長使用壽命。雖然干電池不能象蓄電池(或充電電池)那樣永久地使用下去,但是還是可以反復
    發(fā)表于 11-07 14:25 ?41次下載

    筆記本最大限度延長電池的使用壽命

    筆記本最大限度延長電池的使用壽命 本文將討論如何有效地使用電池,以及最大限度地延長電池的使用壽命。本文將只討論最新的XTRA這幾個使用了鋰電池的系列,對于較
    發(fā)表于 04-19 09:20 ?933次閱讀

    變頻器的使用壽命怎么延長

     如何延長變頻器使用壽命? 這就是本期我們呢要為大家講的相關問題了,請看下面的具體闡述吧:
    發(fā)表于 09-14 16:23 ?1576次閱讀

    延長EEPROM使用壽命的程序優(yōu)化方法

    延長EEPROM使用壽命的程序優(yōu)化方法
    發(fā)表于 12-07 21:06 ?9次下載
    <b class='flag-5'>延長</b>EEPROM<b class='flag-5'>使用壽命</b>的程序優(yōu)化方法

    如何延長電池的使用壽命

    延長電池的使用壽命,認為應就以下幾點引起維護人員的注意.
    發(fā)表于 01-23 14:59 ?4615次閱讀

    導電滑環(huán)延長使用壽命的方法是什么

    滑環(huán)為一種工作于旋轉部件的零件,其必定是有損耗的,因此其使用壽命也是由年限的,本文將介紹延長滑環(huán)使用壽命的方法。
    的頭像 發(fā)表于 06-28 10:55 ?1132次閱讀

    使用 SIMO 延長智能手表的使用壽命

    電子發(fā)燒友網(wǎng)站提供《使用 SIMO 延長智能手表的使用壽命.pdf》資料免費下載
    發(fā)表于 11-16 19:26 ?0次下載
    使用 SIMO <b class='flag-5'>延長</b>智能手表的<b class='flag-5'>使用壽命</b>

    利用升壓轉換器延長電池使用壽命

    利用升壓轉換器延長電池使用壽命
    的頭像 發(fā)表于 11-23 16:19 ?558次閱讀
    利用升壓轉換器<b class='flag-5'>延長</b>電池<b class='flag-5'>使用壽命</b>