Sysinfo-plugin
Aus VDR Wiki
Version vom 16. November 2004, 16:14 Uhr von 213.6.77.80 (Diskussion)
Inhaltsverzeichnis |
Beschreibung
Plugin zeigt Systeminformationen:
- kernel version
- cpu type
- cpu frequenc
- cpu usage
- cpu free
- total memory
- memory free
- memory usage
Hardwareanforderungen
Softwareanforderungen
- sensors (optional)
Installation
ln -s $SOURCEDIR/VDR/PLUGINS/src/sysinfo/script/sysinfosensors.sh /usr/local/bin
Konfiguration
Laut README ist die sysinfosensors.sh anzupassen, nur Notwendig wenn keine Daten im zweiten Block der OSD Ausgabe zu sehen sein sollten.
Cpu Temp: xxxxxx Fan1: xxxxxx M/B Temp: xxxxxx Fan2: xxxxxx
bash> sysinfosensors.sh Usage: sysinfosensors.sh {cputemp|cpufan|mbtemp|mbfan}
Bsp:
bash> sysinfosensors.sh cputemp
Bekommt man hier keine Ausgabe, ist sensors aufzurufen.
bash> sensors as99127f-i2c-0-2d Adapter: SMBus Via Pro adapter at e800 Algorithm: Non-I2C SMBus adapter VCore 1: +1.72 V (min = +1.53 V, max = +1.87 V) VCore 2: +0.08 V (min = +1.53 V, max = +1.87 V) +3.3V: +3.37 V (min = +2.97 V, max = +3.63 V) +5V: +4.99 V (min = +4.50 V, max = +5.48 V) +12V: +11.86 V (min = +10.79 V, max = +13.11 V) -12V: -12.08 V (min = -15.06 V, max = -12.32 V) ALARM -5V: -5.06 V (min = -5.48 V, max = -4.50 V) fan1: 3792 RPM (min = 3000 RPM, div = 2) fan2: 0 RPM (min = 3000 RPM, div = 2) ALARM fan3: 0 RPM (min = 3000 RPM, div = 2) ALARM temp1: +33°C (limit = +60°C) temp2: +224.0°C (limit = +120°C, hysteresis = +100°C) (beep) temp3: +224.4°C (limit = +120°C, hysteresis = +100°C) vid: +1.700 V alarms: beep_enable: Sound alarm enabled
Wir nehmen das mal auseinander.
sensors | grep -i 'CPU TEMP' | cut -c 10-18 | tr -d ' ' ^ ^ ^ ^ ^ Löschen der Leerzeichen ^ ^ ^ Gibt 'characters' aus, zeichen 10 bis 18 ^ Suchphrase lautet 'CPU TEMP', '-i' steht für 'ignore case distinctions' GROß/klein Schreibung
Folgende Änderung:
- sensors | grep -i 'CPU TEMP' | cut -c 10-18 | tr -d ' ' + sensors | grep -i '^temp1:' | cut -c 10-18 | tr -d ' '
Nun sollte sensors den gewünschten Wert ausgeben:
bash> sysinfosensors.sh cputemp +33°C
Bei den anderen Daten ist ähnlich zu verfahren.
Probleme
- Bei älteren Versionen von "ps" (welches genutzt wird um "cpu free" anzuzeigen), kann es Probleme mit der Syntax geben sysinfoosd.c:
// Calculate cpu free ExecShellCmd("CPU=0; for I in `ps -eo ""%C"" | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 + $2 }'`; done; echo $CPU", cTemp); ^^^^^^^^^^^^^
- Sieht man am besten auf der Konsole, anstatt einzelne WERTE... wird (not found) ausgegeben:
~# ps e%C spec value %C not found
- Änderung:
// Calculate cpu free - ExecShellCmd("CPU=0; for I in `ps -eo ""%C"" | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 + $2 }'`; done; echo $CPU", cTemp); + ExecShellCmd("CPU=0; for I in `ps xu | awk '{ print $3 }' | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 + $2 }'`; done; echo $CPU", cTemp);
- Script zum einlesen der Daten von Sensors, wird nur unter /usr/bin ausgeführt, nicht unter /usr/local/bin
sed -i "s/sysinfosensors/\/usr\/local\/bin\/sysinfosensors/" *
- Plugin wurde nicht nach den konventionen gepackt... Siehe
Links
[1] | http://secure.netroedge.com/~lm78 | Sensors Projekt |
[2] | http://www.antbear.org/linux24_lm_sensors.html | Sensors Howto |
[1] | http://kikko77.altervista.org | Homepage des Plugins |