hddtemp
또는 를 설치하지 않고 하드 드라이브의 온도를 확인하고 싶습니다 smartctl
. 이를 수행하는 표준 UNIX 방식이 있습니까?
예를 들어 CPU 온도를 확인하려면 설치가 필요하지 않습니다 . 또는 lm-sensors
읽기만 하면 됩니다 . 그냥 예쁘게 인쇄하세요. 따라서 하드 드라이브 온도에 대한 파일이 있어야 합니다. 폴더에서 하드 드라이브 온도 파일을 찾아보았지만 아무 것도 찾을 수 없습니다./sys/class/thermal/thermal_zone*/temp
/sys/devices/platform/coretemp.0/hwmon/hwmon*/temp*_input
lm-sensors
/sys/class/scsi_host
답변1
Linux 5.6+에서는 HWMON 인프라를 사용하여 디스크 센서 데이터를 읽으려면 Drivetemp 모듈을 사용하십시오.
부하 모듈 드라이버 온도:
sudo modprobe drivetemp
그런 다음 /sys/class/hwmon/hwmon*/에서 다른 센서와 함께 센서 데이터를 찾을 수 있습니다.
https://www.kernel.org/doc/html/latest/hwmon/drivetemp.html
모든 드라이브를 나열하는 예:
grep -l "drivetemp" /sys/class/hwmon/hwmon*/name | while read f;
do printf "%s(%-.2s°C)\n" "`<${f%/*}/device/model`" "`<${f%/*}/temp1_input`";
done
모델별로 드라이브를 나열하는 예:
grep -l "Lexar 256GB SSD" /sys/class/scsi_disk/*/device/model | while read f;
do printf "%s(%-.2s°C)\n" "`<${f%}`" "`<${f%/*}/hwmon/hwmon*/temp1_input`";
done
드라이브 모델로만 온도를 얻는 예:
cat "$(grep -l "Lexar 256GB SSD" /sys/class/scsi_disk/*/device/model | xargs dirname)"/hwmon/hwmon*/temp1_input
드라이브 모델 나열의 예:
cat /sys/class/scsi_disk/*/device/model