Festplattenauslastung eines entfernten Linux-Rechners übertragen

Begonnen von subseven, 04 April 2019, 22:48:45

Vorheriges Thema - Nächstes Thema

subseven

Für alle die die paar Zeilen gebrauchen können.
Das Script liest den Festplattenfüllstand aus und übermittelt ihn an FHEM.

#!/bin/bash
### Konfiguration ###
FHEMSVR="192.168.16.7:8083"     #FHEM Server inkl. Port
DEVICE="KE_DataBackup"         #Name des Devices


# Lese Anzahl Zeilen aus
ln=$(df | grep -vE '^Filesystem|tmpfs|run|cdrom' | wc -l)

#Schleife mit x(Anzahl Zeilen) Durchläufen
for ((i=1;i<ln;i++))
do
  #Auslesen Filesystemname/Filesystemauslastung (Für Einhängepunkt $6 statt $1 angeben')
  fsdata=$(df -H | grep -vE '^Filesystem|tmpfs|run|cdrom' | awk '{ print $1"%20"$5 }'| sed -n "$(($i+1))p")
  setreading+="setreading%20$DEVICE%20${fsdata%\%};"
done

# Absetzen der Readings an den FHEM-Server
/bin/curl --data "fwcsrf=$(/bin/curl -s -D - http://$FHEMSVR/fhem?XHR=1 | /bin/awk '/X-FHEM-csrfToken/{print $2}')" http://$FHEMSVR/fhem?cmd=$setreading


Anschließend können die Daten per FHEM weiterverarbeitet werden.

edit: Script gekürzt und optimiert

Benni


Wernieman

wobei sysmon pullt, dieses Script (in der Kurzansicht) pusht ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

subseven

#3
Es erfordert kein telnet, was auf meinem Host nicht läuft und auch nicht extra deswegen installiert werden sollte.
Habe eh ein Script mit Cron(bzw. systemd) laufen wo ich das mit untergebracht habe.