Debian

如何找到阻止磁碟旋轉的人

  • February 1, 2022

問題

  • 將 NAS 系統從 Buster 升級到 Bullseye 後,磁槃無法降速。

我的 NAS 設置

  • 5x 機械磁碟 WD RED,無 RAID,無日誌的 ext4
  • Debian Bullseye,核心 5.10
  • 系統正在從第六個 SSD 磁碟載入(不喚醒機械磁碟)
  • hd-idle 實用程序在 30 分鐘不活動後設置降速hd-idle -i 0 -a sda -i 1800 -a sdb -i 1800 -a sdc -i 1800 -a sdd -i 1800 -a sde -i 1800 -l /var/log/hd-idle.log
  • 升級到 Bullseye 時,NAS 中沒有硬體變化,hd-idle 的配置也沒有變化
  • NAS 在此硬體設置中使用了 8 年以上,而且在軟體設置中,主要是磁碟在 30 分鐘後旋轉多年,沒有任何問題

我試過的

  • 如果我使用hd-idle -t sda,磁碟將立即減速,但在醒來後(由於一些正常的磁碟活動),它再也不會睡著了。
  • 如果磁碟被迫以 減速hd-idle -t,則它們不會在沒有正常活動的情況下喚醒 - 因此沒有重複的工作會喚醒它們。
  • 我對 smartmontools 持懷疑態度,如果 Bullseye 有一些變化會喚醒它們。我玩了一點/etc/smartd.confand -n standby,但沒有成功,所以我完全禁用了 smartd 以查找 smartmontools 是否是隱藏的壞人,但沒有運氣,看起來不是。
  • lsof | grep /media什麼都不提供(媒體是所有這些磁碟的掛載點)
  • iotop我也玩了一點nmon。但沒有發現任何有趣的東西,只有 SSD(系統)磁碟的正常活動。
  • 由於某種原因我不能跑步iosnoop。該包perf-tools-unstable已正確安裝,但呼叫以 root 身份iosnoop結束。bash: iosnoop: command not found我沒有找到造成這種情況的原因。

很明顯你無法調試我的系統,但我會很感激任何提示如何找到問題,誰在阻止磁碟旋轉:-)

解決了。至少我知道,為什麼我的磁碟不睡覺。我不能肯定地說,如何用一些 linux 工具來追踪這個問題,我在一些討論中偶然發現了它。

好像是udisks2服務的變化。該服務正在檢查您的磁碟並負責自動安裝您的 USB 記憶棒等。現在該服務還檢查磁碟的 SMART(不知道為什麼)。如果磁碟處於睡眠狀態,它不會喚醒它,但如果它處於活動狀態,udisks2 會每 10 分鐘檢查一次 SMART。所以如果睡眠時間是 30 分鐘,磁碟永遠不會睡著。此外,WD Red 磁碟通常無法將睡眠時間設置為小於 10 分鐘(磁碟過度減速是不健康的,因此這是合理的限制)。

一些資料來源:

NAS 系統的解決方法:您可能根本不需要 udisks2 服務。

sudo systemctl stop udisks2
sudo systemctl mask udisks2

引用自:https://serverfault.com/questions/1091701