Ubuntu

Ubuntu Server 20.04(和 19.04)對 SSD 的極高寫入,重新安裝為只讀

  • July 16, 2020

我正在執行一個執行 Ubuntu 20.04(19.04 之前)的小型家庭伺服器。該伺服器僅執行 docker,並且通常將其數據寫入我掛載的 ZFS 池(與本文無關,僅用於上下文)。

作為啟動盤,我使用的是帶有 EXT4 文件系統的金士頓 A2000 512GB NVME 驅動器。今天下午和本週幾次,伺服器停止響應,我無法遠端登錄。將螢幕連接到它後,我發現由於錯誤,SSD 已安裝為只讀。我沒有設法找出錯誤是什麼。重新啟動後,我決定檢查 SSD 是否存在壞扇區或其他問題,但沒有發現任何問題。然而,它對我來說確實很突出,SSD(半年曆史)寫入了 56TB,讀取了 6TB。

這真的讓我很困擾,因為這太過分了。我已經設置了 noatime 屬性並且正在執行修剪。

儲存在 SSD 上的唯一內容是:+/- 30 個 Docker 容器、Ubuntu 20.04 和來自一些容器的一些數據(Plex 元數據、沒有影片/Duplicati 數據庫,用於執行 Minecraft 伺服器的每日備份/文件,在 Docker 中有 5 個不經常使用的使用者)。

我試圖深入了解高寫入的底部,但我不知道如何以聰明或結構化的方式處理這個問題。我找到了一些命令來檢查自啟動以來寫入的所有文件,但這些文件太多了,我無法手動完成一周。

我也不確定為什麼驅動器會一直進入只讀模式,但這可能是一個單獨的問題。

任何幫助深表感謝!

smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-40-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       KINGSTON SA2000M8500G
Serial Number:                      XXXX
Firmware Version:                   S5Z42105
PCI Vendor/Subsystem ID:            0x2646
IEEE OUI Identifier:                0x0026b7
Controller ID:                      1
Number of Namespaces:               1
Namespace 1 Size/Capacity:          500,107,862,016 [500 GB]
Namespace 1 Utilization:            29,767,180,288 [29.7 GB]
Namespace 1 Formatted LBA Size:     512
Namespace 1 IEEE EUI-64:            0026b7 282536db15
Local Time is:                      Wed Jul 15 19:53:03 2020 CEST
Firmware Updates (0x14):            2 Slots, no Reset required
Optional Admin Commands (0x0017):   Security Format Frmw_DL Self_Test
Optional NVM Commands (0x005f):     Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat Timestmp
Maximum Data Transfer Size:         32 Pages
Warning  Comp. Temp. Threshold:     75 Celsius
Critical Comp. Temp. Threshold:     80 Celsius

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
0 +     9.00W       -        -    0  0  0  0        0       0
1 +     4.60W       -        -    1  1  1  1        0       0
2 +     3.80W       -        -    2  2  2  2        0       0
3 -   0.0450W       -        -    3  3  3  3     2000    2000
4 -   0.0040W       -        -    4  4  4  4    15000   15000

Supported LBA Sizes (NSID 0x1)
Id Fmt  Data  Metadt  Rel_Perf
0 +     512       0         0

=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART/Health Information (NVMe Log 0x02)
Critical Warning:                   0x00
Temperature:                        46 Celsius
Available Spare:                    100%
Available Spare Threshold:          10%
Percentage Used:                    10%
Data Units Read:                    12,031,713 [6.16 TB]
Data Units Written:                 110,463,016 [56.5 TB]
Host Read Commands:                 248,933,785
Host Write Commands:                1,467,111,619
Controller Busy Time:               9,524
Power Cycles:                       101
Power On Hours:                     4,515
Unsafe Shutdowns:                   5
Media and Data Integrity Errors:    0
Error Information Log Entries:      0
Warning  Comp. Temperature Time:    0
Critical Comp. Temperature Time:    0

Error Information (NVMe Log 0x01, max 256 entries)
No Errors Logged

我已經設法利用同事的一些回饋找到了罪魁禍首。事實證明,這個問題是由 Duplicati 寫入臨時文件並刪除它們引起的。為了解決這個問題,我將這些文件的位置更改為硬碟而不是 SSD。

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