Sysinfo-plugin
Aus VDR Wiki
(Unterschied zwischen Versionen)
(→Konfiguration) |
|||
Zeile 75: | Zeile 75: | ||
Adapter: SMBus Via Pro adapter at e800 | Adapter: SMBus Via Pro adapter at e800 | ||
Algorithm: Non-I2C SMBus adapter | Algorithm: Non-I2C SMBus adapter | ||
− | VCore 1: | + | VCore 1: 1.72 V (min = 1.53 V, max = 1.87 V) |
− | VCore 2: | + | 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 | -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) | -5V: -5.06 V (min = -5.48 V, max = -4.50 V) | ||
Zeile 85: | Zeile 85: | ||
fan2: 0 RPM (min = 3000 RPM, div = 2) ALARM | fan2: 0 RPM (min = 3000 RPM, div = 2) ALARM | ||
fan3: 0 RPM (min = 3000 RPM, div = 2) ALARM | fan3: 0 RPM (min = 3000 RPM, div = 2) ALARM | ||
− | temp1: | + | temp1: 33°C (limit = 60°C) |
− | temp2: | + | temp2: 224.0°C (limit = 120°C, hysteresis = 100°C) (beep) |
− | temp3: | + | temp3: 224.4°C (limit = 120°C, hysteresis = 100°C) |
− | vid: | + | vid: 1.700 V |
alarms: | alarms: | ||
beep_enable: | beep_enable: | ||
Zeile 110: | Zeile 110: | ||
<pre> | <pre> | ||
- sensors | grep -i 'CPU TEMP' | cut -c 10-18 | tr -d ' ' | - sensors | grep -i 'CPU TEMP' | cut -c 10-18 | tr -d ' ' | ||
− | + | sensors | grep -i '^temp1:' | cut -c 10-18 | tr -d ' ' | |
</pre> | </pre> | ||
Zeile 117: | Zeile 117: | ||
<pre> | <pre> | ||
bash> sysinfo.sh cputemp | bash> sysinfo.sh cputemp | ||
− | + | 33°C | |
</pre> | </pre> | ||
Zeile 130: | Zeile 130: | ||
<pre> | <pre> | ||
// Calculate cpu free | // Calculate cpu free | ||
− | ExecShellCmd("CPU=0; for I in `ps -eo ""%C"" | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 | + | ExecShellCmd("CPU=0; for I in `ps -eo ""%C"" | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 $2 }'`; done; echo $CPU", cTemp); |
^^^^^^^^^^^^^ | ^^^^^^^^^^^^^ | ||
</pre> | </pre> | ||
Zeile 141: | Zeile 141: | ||
<pre> | <pre> | ||
// Calculate cpu free | // Calculate cpu free | ||
− | - ExecShellCmd("CPU=0; for I in `ps -eo ""%C"" | grep ""\\.""`; do CPU=`echo $CPU $I | awk '{ print $1 | + | - 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); | |
</pre> | </pre> | ||
Version vom 22. April 2007, 21:10 Uhr
Inhaltsverzeichnis |
Beschreibung
Autor: Alberto Pachera
Plugin zeigt Systeminformationen:
- kernel version
- cpu type
- cpu frequenc
- cpu usage
- cpu free
- total memory
- memory free
- memory usage
- video disk space
Bilder
Softwareanforderungen
- sensors (optional)
Installation
Source
Arch-Linux
pacman -S lm_sensors
Crux
prt-get depinst lm_sensors
Debian
apt-get install lm-sensors
Gentoo
emerge lm_sensors
SuSE
yast -i sensors
Konfiguration
Link setzen.
ln -s $SOURCEDIR/VDR/PLUGINS/src/sysinfo/script/sysinfo.sh /usr/local/bin
Laut README muß die sysinfo.sh nur dann angepasst werden, 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> sysinfo.sh Usage: sysinfo.sh {cputemp|cpufan|mbtemp|mbfan}
Bsp:
bash> sysinfo.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> sysinfo.sh cputemp 33°C
Bei den anderen Daten ist ähnlich zu verfahren.
Sonstiges
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);
Links
- Sensors Projekt
- Sensors Howto
- Homepage des Plugins tw. eng. Rest italienisch