Seite 1 von 1

Aufnahme per Kommandozeile feststellen?

Verfasst: Sa 16 Mär 2013, 11:07
von thomasbernd2
Hallo,

Nach mehreren "Kein System"-Anfällen habe ich nun keine Lust mehr, ständig alle Configs durchzugehen.
Ich würde daher gern ein Skript basteln, dass alle Images von allen Boxen regelmäßig backupt.

Das möchte ich aber nur machen, wenn die Box gerade nichts aufnimmt.
Kann ich irgendwie per KOmmandozeile (mit Telnet auf Box eingeloggt) feststellen, ob diese Box gerade aufnimmt / gleich aufnehmen wird?

Danke,
Marc

Re: Aufnahme per Kommandozeile feststellen?

Verfasst: Sa 16 Mär 2013, 21:15
von Gaucho316
Du kannst

Code: Alles auswählen

http://dbox/control/setmode?status
per wget abfragen und den Rückgabewert on bzw. off auswerten, um festzustellen, ob die Box gerade aufnimmt.

Re: Aufnahme per Kommandozeile feststellen?

Verfasst: Mi 20 Mär 2013, 13:09
von Pedant
Hallo Marc,

ergänzend zu Gaucho316s Antwort:

Ein Beispiel wie man die WGet-Ausgabe per Batch auswerten kann:

Code: Alles auswählen

@echo off

wget.exe http://dbox/control/setmode?status -O ausgabe.txt -o nul
set /p status=< ausgabe.txt
if exist ausgabe.txt del ausgabe.txt

echo.
echo Status: %status%

if "%status%"=="on" goto status_on
if "%status%"=="off" goto status_off

:Fehler
echo.
echo Status wurde nicht ermittelt.
goto ende

:status_on
echo.
echo Backups werden nicht erstellt
goto ende

:status_off
echo.
echo Backups werden erstellt...
call backup.cmd
goto ende

:ende
echo.
echo Beliebige Taste zum Beenden.
pause > nul
Imagebackup per Skript:
Flashen und Backup per Kommandozeile
Ob das noch ganz aktuell ist solltest Du prüfen.

Für diese Lösung brauchst Du noch einen Telnet-Client der skriptbar ist.
Beispielsweise Tera Term Pro ver. 2.3 for Windows 95/NT
Ist zwar schon etwas älter, funktionier aber noch.

Macros werden so aufgerufen:
ttpmacro.exe beispiel.ttl
Macros können per Notepad geschrieben werden.
Hier ein Beispielmacro:

Code: Alles auswählen

; Konfiguration:
Servername = 'dbox'
Username = 'root'
Password = 'dbox2'
; Fragen des Telnet-Servers
UsernamePrompt = 'login:'
PasswordPrompt = 'Password:'
; Verbinden
connect Servername
wait UsernamePrompt
sendln Username
wait PasswordPrompt
sendln Password
; Befehle:
sendln 'cd /'
sendln 'ls'
sendln 'exit'
Servername (DNS-Name oder IP), Password und die Befehlsliste müsstest Du dann noch anpassen.

Gruß Frank

Re: Aufnahme per Kommandozeile feststellen?

Verfasst: Sa 20 Apr 2013, 17:25
von thomasbernd2
Tausend Dank, war genau das, was ich gesucht habe!

Von den Antworten inspiriert habe ich gegoogelt und kann nur die yWeb-controlApi-Doku empfehlen, da lässt sich noch anderes "automatisieren":

http://www.yjogol.com/sdk/nhttpd-api-tuxbox-api.html


Nochmal vielen Dank!