Files
coolercontrol/gpu_temp.sh
T
nkozobrod a359d2138d GPU temp custom sensor (file) + fan3 control via CoolerControl
- gpu_temp.sh: экспорт nvidia-smi temperature.gpu в файл (миллиградусы), 2-3s цикл
- docker-compose.yml: mount ./gpu-temp:/run/gpu-temp:ro
- .gitignore: gpu-temp (живой файл сенсора)
2026-08-06 15:49:40 +03:00

25 lines
1017 B
Bash
Executable File

#!/bin/bash
# gpu_temp.sh — экспорт температуры GPU (nvidia-smi) в файл для CoolerControl
# Custom Sensor (File) в CoolerControl читает файл в sysfs-формате: миллиградусы (33000 = 33°C)
# Файл монтируется в контейнер coolercontrold как /run/gpu-temp
OUT_FILE="${GPU_TEMP_FILE:-/home/nkozobrod/docker/coolercontrol/gpu-temp}"
INTERVAL="${GPU_TEMP_INTERVAL:-3}"
if ! command -v nvidia-smi >/dev/null 2>&1; then
echo "nvidia-smi not found" >&2
exit 1
fi
# Первичная запись, чтобы файл существовал сразу
temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits 2>/dev/null | head -1)
[ -n "$temp" ] && echo $((temp * 1000)) > "$OUT_FILE"
while true; do
temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits 2>/dev/null | head -1)
if [ -n "$temp" ]; then
echo $((temp * 1000)) > "$OUT_FILE"
fi
sleep "$INTERVAL"
done