Intereting Posts
Команда lsof слишком длинна для определенного идентификатора процесса Как расшифровать и скопировать домашнюю папку с ноутбука на внешний жесткий диск через live usb GUI? Невозможно подключиться к Интернету в Fedora 19 Как использовать модуль Python для «клавиатурных клавиш» для определения состояния Caps Lock? Безопасны ли sudo и gksudo? Является ли / proc строго зарезервированным для пространства ядра / драйвера? Как печатать определенные столбцы по имени? Октава – предупреждение: невозможно открыть X11 DISPLAY Не удается изменить настройки обновления на элементарные? Является ли `/ etc / X11 / xorg.conf` устаревшим? Загрузка и установка Meteor через Dockerfile Blockinfile не работает в недоступном Почему мне не нужно избегать класса символов в sed, но мне нужно избегать остальных? Ограничьте Alt + Tab текущим монитором в Gnome 3 Как монтировать файловую систему iso9660 как прочитанную запись

Как проверить температуру в Linux?

Я использовал hdparm -n и smartctl -A но всегда кажется, что это метод «на диск», поскольку диск может отвечать только за один из этих инструментов.

Итак, есть ли стандартный способ получить температуру на Linux (жесткий диск или SSD)? Если нет, какие (другие) инструменты я могу использовать для получения этой информации?

Мне нравится hddtemp , который обеспечивает довольно стандартный способ получения температуры для поддерживаемых устройств. Однако это требует поддержки SMART.

Пример использования: sudo hddtemp /dev/sd[abcdefghi]

Пример ответа:

/ dev / sda: WDC WD6401AALS-00J7B0: 31 ° C
/ dev / sdb: WDC WD7501AALS-00J7B0: 30 ° C

Все устройства, поддерживающие SMART, должны отвечать на smartctl . И я понимаю, что только смарт-устройства имеют температуру чтения.

Все другие инструменты будут более или менее специфичными для поставщиков (например, Dell omsa). IPMI может быть еще одним общим подходом, но я сомневаюсь, что там есть нормальное считывание устройства хранения.

Как упоминалось Rovanion, перечислить все диски за один раз:

 hddtemp /dev/sd? 

Или, если вы предпочитаете цикл for:

 for i in $(ls /dev/sd[az] 2> /dev/null); do hddtemp $i; done