시놀로지 디스크 직접 조회 중지

This commit is contained in:
seo committed 2026-08-03 03:03:07 +09:00
1 parent 0a29bee803
commit d975b5d6be
2 files changed
+3 -52

No files matched your search

+2 -51
View File
@@ -70,26 +70,6 @@ while :; do
sleep 0.1
done
"""
SYNOLOGY_DISK_TEMP_SCRIPT = r"""
for disk in /dev/sata1 /dev/sata2 /dev/sata4; do
temp="-"
if [ -b "$disk" ]; then
temp="$(
/usr/bin/timeout 3 sudo -n /usr/bin/smartctl -A "$disk" 2>/dev/null |
awk '/Temperature_Celsius|Airflow_Temperature_Cel/ {print $10; exit}'
)"
case "$temp" in
''|*[!0-9]*) temp="-" ;;
esac
fi
printf '%s=%s\n' "${disk##/dev/}" "$temp"
done |
awk -F= '
$1 == "sata1" {printf "SATA1_TEMP=%s\n", $2 ? $2 : "-"}
$1 == "sata2" {printf "SATA2_TEMP=%s\n", $2 ? $2 : "-"}
$1 == "sata4" {printf "SATA4_TEMP=%s\n", $2 ? $2 : "-"}
'
"""
SYNOLOGY_HEALTH_SCRIPT = r"""
cpu="$(cat /sys/class/hwmon/hwmon0/temp1_input 2>/dev/null)"
fan="$(cat /sys/class/hwmon/hwmon1/fan2_input 2>/dev/null)"
@@ -116,7 +96,6 @@ DISK_TEMP_INTERVAL_MS = TEMP_INTERVAL_MS
DISK_TEMP_CACHE_FILE = "/run/control-rpi-disk-temp"
DISK_TEMP_CACHE_MAX_AGE_SECONDS = 30
RPI_THROTTLE_INTERVAL_MS = SAMPLE_INTERVAL_MS
SYNOLOGY_DISK_TEMP_INTERVAL_MS = TEMP_INTERVAL_MS
SYNOLOGY_HEALTH_INTERVAL_MS = FAN_INTERVAL_MS
@@ -588,7 +567,6 @@ class TouchPanel(QMainWindow):
self.last_synology_net_rate = {}
self.synology_buffer = ""
self.synology_values = {}
self.synology_disk_temps = {}
self.synology_cpu_temp = 0.0
self.synology_fan_rpm = 0
self.last_io = None
@@ -642,12 +620,6 @@ class TouchPanel(QMainWindow):
self.synology_timer.timeout.connect(self.update_synology_status)
self.synology_timer.start(SYNOLOGY_RESTART_INTERVAL_MS)
self.synology_disk_temp_proc = QProcess(self)
self.synology_disk_temp_proc.finished.connect(self.synology_disk_temp_finished)
self.synology_disk_temp_timer = QTimer(self)
self.synology_disk_temp_timer.timeout.connect(self.update_synology_disk_temp)
self.synology_disk_temp_timer.start(SYNOLOGY_DISK_TEMP_INTERVAL_MS)
self.synology_health_proc = QProcess(self)
self.synology_health_proc.finished.connect(self.synology_health_finished)
self.synology_health_timer = QTimer(self)
@@ -677,7 +649,6 @@ class TouchPanel(QMainWindow):
self.ping_pc()
self.update_disk_temp()
self.update_synology_status()
self.update_synology_disk_temp()
self.update_synology_health()
self.ping_synology()
self.update_rpi_throttle()
@@ -943,29 +914,11 @@ class TouchPanel(QMainWindow):
self.synology_values = {}
self.synology_proc.start(SYNOLOGY_SSH[0], SYNOLOGY_SSH[1:] + [SYNOLOGY_STATUS_SCRIPT])
def update_synology_disk_temp(self):
if self.synology_disk_temp_proc.state() != QProcess.NotRunning:
return
self.synology_disk_temp_proc.start(SYNOLOGY_SSH[0], SYNOLOGY_SSH[1:] + [SYNOLOGY_DISK_TEMP_SCRIPT])
def update_synology_health(self):
if self.synology_health_proc.state() != QProcess.NotRunning:
return
self.synology_health_proc.start(SYNOLOGY_SSH[0], SYNOLOGY_SSH[1:] + [SYNOLOGY_HEALTH_SCRIPT])
def synology_disk_temp_finished(self, exit_code, exit_status):
del exit_status
if exit_code != 0:
return
output = bytes(self.synology_disk_temp_proc.readAllStandardOutput()).decode("utf-8", "ignore").strip()
temps = {}
for line in output.splitlines():
if "=" not in line:
continue
key, value = line.split("=", 1)
temps[key.strip()] = value.strip()
self.synology_disk_temps = temps
def synology_health_finished(self, exit_code, exit_status):
del exit_status
if exit_code != 0:
@@ -1097,10 +1050,8 @@ class TouchPanel(QMainWindow):
)
def synology_disk_temp_detail(self, disk):
value = self.synology_disk_temps.get(f"{disk}_TEMP", "")
if not value or value == "-" or value == "0":
return ""
return f"{value} C"
del disk
return "조회 중지"
def set_synology_net_tile(self, key, rx, tx, errors, drops, detail):
previous = self.last_synology.get(key)