Script und Telnet

Status
Für weitere Antworten geschlossen.

Ringostar1982

Benutzer
Mitglied seit
18. Aug 2017
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Guten Morgen Zusammen,

ich würde gerne diverse Werte meiner DS211j wie CPU-Auslastung, Temperatur usw... auslesen und anschließend die Werte über Telnet an meinen Raspberry Pi senden.

Gibt es solch eine Möglichkeit? (per Aufgabenplaner ein Script aufrufen?)
Jemand Erfahrungen damit?

Vielen Dank!
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.141
Punkte für Reaktionen
1.112
Punkte
314
Ja, das geht durchaus, jedoch würde ich SSH, Telnet den Vorzug geben.

Ablauf wäre dann wohl so...

Script zum erfassen der Werte ausführen (hiebei sollten die Ergebnisse in einer externen (Protokoll)-Datei ausgelagert werden). Eine SSH-Verbindung zum Pi öffnen und das eben erstellte Protokoll dorthin kopieren/verschieben.

Es gibt in hiesigen Wiki bereits eine Anleitung zum Auslesen der Werte *klick*, wobei ich nicht weiß ob das alles noch Gültigkeit hat. Auch wird hier das Protokoll per Mail verschickt, das müsstest du dann auf SSH umschreiben.

Tommes
 

Ringostar1982

Benutzer
Mitglied seit
18. Aug 2017
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Hallo Tommes,

danke.

Ich dachte an folgendes:

- Script anlegen (Ist das in der Weboberfläche möglich oder muss ich mich per SSH anmelden und z.B. ein Script in /usr/bin anlegen?)
und Werte abfragen z.B:

Rich (BBCode):
temperatur1=`/usr/syno/bin/smartctl -A /dev/hda | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`
temperatur2=`/usr/syno/bin/smartctl -A /dev/hdb | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`
temperatur3=`/usr/syno/bin/smartctl -A /dev/hdc | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`
temperatur4=`/usr/syno/bin/smartctl -A /dev/hdd | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`

und dann direkt per Telnet in meinen Dummy(FHEM) schicken:

z.B.:
Rich (BBCode):
cmd1="setreading NASTemp temperature $temp\r"

Rich (BBCode):
echo ${cmd1};
sleep $sleep;
echo ${cmd2};
sleep $sleep;
#echo -e "exit\r"
echo "^]";
) | telnet ${host} ${port}

- Script dann regelmäßig per crontab aufrufen.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.141
Punkte für Reaktionen
1.112
Punkte
314
Scripte sollte man am besten im Vorfeld auf der Konsole testen um zu sehen, ob diese auch tun was sie sollen. Erst dann würde ich ein Script über den Aufgabenplaner ausführen lassen.

Nichts desto trotz kannst du z.B. über das DSM-Paketzentrum den Text-Editor laden und dein gewünschtes Script darüber schreiben. Speichern kannst du es in einem gemeinsamen Ordner deiner Wahl. Danach kannst du das Script über den Aufgabenplaner automatisiert oder manuell ausführen lassen. Hierfür mußt du das Script i.d.R. noch nicht mal ausführbar machen. That's all!

Gehst du jedoch über die Konsole, dann muss das Script im Vorfeld natürlich ausführbar (755 o.ä.) sein und du kannst das Ganze im Linux-Dateisystem-Baum unterbringen und mittels CRON automatisiert ausführen.

Im Prinzip ist es also Wurscht, wie du vorgehst, ich würde wohl den Weg über die Konsole wählen und erst nach Funktionsprüfung das alles über den DSM-Aufgabenplaner steuern.

Tommes
 

hvkls

Benutzer
Mitglied seit
23. Dez 2012
Beiträge
463
Punkte für Reaktionen
0
Punkte
22
@Ringostar1982
Lass das doch per crontab in eine Datei auf einem Share schreiben, den du auf dem Raspi mountest.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat