
매우 유사한 질문을 하는 다른 질문이 있다는 것을 알고 있지만 내 문제에 대한 답변은 없는 것 같습니다. nextcloud 인스턴스를 위해 armbian과 함께 odroid hc2 sbc를 실행하고 있습니다. 이틀 전, 1년 넘게 안정적으로 운영된 후 처음으로 충돌이 발생했습니다. 과열이 원인이 되는 것을 배제하기 위해 온도를 모니터링하는 스크립트를 작성하고 싶습니다. 즉, 다음과 같은 지속적인 출력을 생성하는 내장 함수 "armbianmonitor"를 실행하는 것입니다.
Stop monitoring using [ctrl]-[c]
Time big.LITTLE load %cpu %sys %usr %nice %io %irq CPU C.St.
09:52:33: 600/ 600MHz 0.23 12% 1% 10% 0% 0% 0% 53.0°C 0/13
09:52:38: 1400/ 600MHz 0.21 2% 0% 1% 0% 0% 0% 53.0°C 0/13
09:52:43: 1400/ 600MHz 0.20 2% 0% 1% 0% 0% 0% 53.0°C 0/13^C
와 함께:
sudo armbianmonitor -m | awk '$11 ~ "°C" {print $1; print $1;exit1}' ORS=' '
나는 다음과 같은 결과를 얻습니다.
09:57:48: 53.0°C 09:57:53: 51.0°C 09:57:58: 51.0°C 09:58:03: 51.0°C
하지만... 스크립트 실행당 한 쌍(시간 및 온도)만 갖고 싶습니다. 즉, awk 및/또는 (?) armbianmonitor는 첫 번째 쌍을 반환한 후에 중지되어야 합니다. 또한 이 명령을 호출하는 스크립트의 출력을 파일로 파이프하려고 시도했지만 파일이 비어 있습니다. armbianmonitor가 연속 출력을 생성하기 때문일 수 있습니다.
답변1
나는 약간 다른 길을 택했고 이제 다음을 수행합니다.
1분마다 실행:
#!/bin/bash
dttm=$(date +"%d.%m.%Y %H:%M;")
temp=$(echo $(cat /sys/devices/virtual/thermal/thermal_zone0/temp) /1000 | bc)
echo $dttm $temp
답변2
이에 따르면페이지, 이 파일에 액세스합니다.
/etc/armbianmonitor/datasources/soctemp
1초 시계의 예:
watch -n 1 cat /etc/armbianmonitor/datasources/soctemp