Hddtemp - Arch Linux 中文维基

跳至內容

# Hddtemp

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 Hddtemp，最近一次同步於 2022-11-20，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

相關文章

- lm_sensors
- Conky

Hddtemp 是一個小工具（有守護進程），通過 S.M.A.R.T.（對於支持該功能的驅動器）提供硬碟溫度。

提示：訪問驅動器溫度的一個更通用的選項是 Linux 監測傳感器，因為它也處理其他數據。

## 安裝

安裝 hddtemp包。

## 使用

Hddtemp 需要根用戶權限。命令 `hddtemp` 後面必須至少有一個驅動器的位置。你可以列出幾個用空格分隔的驅動器。

    # hddtemp /dev/disk/by-id/wwn-0x60015ee0000b237f /dev/sdX2 ... /dev/sdXn

注意：`/dev/`下的塊設備命名，如`/dev/sdX`，是不一致的。更多信息請參見持久化塊設備命名。

更多使用信息見 hddtemp(8)。

## 守護進程

運行守護進程允許普通用戶通過 TCP/IP 訪問溫度信息。這對腳本和系統監控很有幫助。

該守護進程由 `hddtemp.service` 控制。

要獲取溫度，請連接該守護進程，其監聽埠為7634。

使用 inetutils包：

    $ telnet localhost 7634

使用 gnu-netcat包:

    $ nc localhost 7634

兩種輸出都類似於：

    |/dev/sda|ST3500413AS|32|C||/dev/sdb|ST2000DM001-1CH164|36|C|

為了數據更直觀：

    $ nc localhost 7634 |sed 's/|//m' | sed 's/||/ \n/g' | awk -F'|' '{print $1 " " $3 " " $4}'

    /dev/sda 32 C
    /dev/sdb 36 C

### 覆蓋默認磁碟

默認的 Hddtemp 守護進程只監控 `/dev/sda`。如果有多個磁碟，需要覆蓋默認配置來監控。

如果需要查看哪些硬碟支持監控，可以用 smartmontools包 檢查。編輯 `hddtemp.service`：

    [Service]
    ExecStart=
    ExecStart=/usr/bin/hddtemp --daemon --foreground /dev/disk/by-id/wwn-0x60015ee0000b237f /dev/sdb --listen=127.0.0.1

將設備名稱更改為需要監控的設備。

編輯完畢後，保存文件並退出編輯器。Systemd 會應用更改並自動重新加載 `hddtemp` 服務。

你也可以使用 auto-generate 腳本，它會使用 {{pkg|smartmontools} 檢測支持的硬碟，並列印到標準輸出文件。

## 監控器

Hddtemp 可以與系統監視器集成。Conky 在守護進程模式中已內置對 Hddtemp 的支持。只需啟用 `hddtemp.service` 並將`$hddtemp ℃` 添加到 Conky 配置文件。

## 固態硬碟

Hddtemp 通常從驅動器的智能數據中讀取欄位`194`。在固態硬碟中，溫度信息通常存儲在`190`欄位。要獲取這些信息，可以運行：

    # smartctl --all /dev/sdx

或

    # hddtemp --debug /dev/sdx

其中 `/dev/sdx` 是驅動器（使用 lsblk 來檢查）。

或者在 `/etc/hddtemp.db` 中添加新條目。例如：

    # echo '"Samsung SSD 840 EVO 250GB" 190 C "Samsung SSD 840 EVO 250GB"' >> /etc/hddtemp.db

分類：​

- 系統監視器

Hddtemp
新增話題