Cloud Station Wie frage ich den Status von CloudSync ab? (Teminal/Bash)

Status
Für weitere Antworten geschlossen.

rumknapser

Benutzer
Mitglied seit
02. Mai 2013
Beiträge
329
Punkte für Reaktionen
6
Punkte
24
Hallo,

weiss jmd. wie ich den momentanen Status des CloudSync-Dienstes abfragen kann?
Ich bin interessiert daran, in einem Bash-Script abzufragen, ob er läuft, oder nicht. (nicht, ob er Synct, nur, ob er gestartet ist)

Der herkömmliche Weg will nicht:
Rich (BBCode):
> /var/packages/CloudSync/scripts/start-stop-status
/var/packages/CloudSync/scripts/start-stop-status: exit: line 72: Illegal number: -1
> /var/packages/CloudSync/scripts/start-stop-status status
/var/packages/CloudSync/scripts/start-stop-status: line 72: /var/packages//target/bin/cloud-sync-starter: not found

Habe dann etwas in dem Script rumgestöbert und eine Executable gefunden, doch damit wird mir leider auch nur ausgegeben, welche Dienste aktiv sind, allerdings unabhängig, ob das Paket gestartet ist oder nicht.
Rich (BBCode):
> /var/packages/CloudSync/target/bin/cloud-sync-starter --collect

Beim Versuch über die Diagnose kommt das:
Rich (BBCode):
> /var/packages/CloudSync/target/bin/cloud-sync-starter --diagnose

zip error: Invalid command arguments (cannot write zip file to terminal)

Ergo stehe ich jetzt auf dem Schlauch.

Ich möchte gerne via Shell-Script etwas nur ausführen lassen, wenn der Dienst nicht gestartet ist.
Ich könnte ihn natürlich in meinem Script stoppen, aber das ist unschön und steht nicht zur Debatte :)

Weiss jmd. Rat?
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.684
Punkte für Reaktionen
2.086
Punkte
829
Es gibt vermutlich elegantere Ansätze, aber Du könntest einmal in /var/lock schauen, ob dort ein lock-Datei angelegt ist, wenn der Dienst läuft. Wenn nicht, könntest Du mit ps | grep <Dienstname> testen, ob <Dienstname> läuft.
 

rumknapser

Benutzer
Mitglied seit
02. Mai 2013
Beiträge
329
Punkte für Reaktionen
6
Punkte
24
Dank Dir,
an ps hatte ich auch schon gedacht, allerdings wird mir da auch immer auch meine Abfrage mit angezeigt, so das mein Script den Dienst immer gestartet findet ;-/

Rich (BBCode):
 ps w|grep Cloud
 1214 root      204m S    /var/packages/CloudSync/target/sbin/syno-cloud-syncd /volume1/@cloudsync/config/daemon.conf
 2617 root      1760 R    grep Cloud

In /var/lock liegt leider nichts was mir hilft. Hab reingeguckt, wenn CS gestartet und gestoppt ist. Beides Mal gleicher Inhalt.
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.684
Punkte für Reaktionen
2.086
Punkte
829
In dem Fall sollte
Rich (BBCode):
ps | grep Cloud | wc -l
2 liefern, wenn der Prozess läuft, und 1, wenn er nicht läuft.
 

rumknapser

Benutzer
Mitglied seit
02. Mai 2013
Beiträge
329
Punkte für Reaktionen
6
Punkte
24
Oh, das war ja einfach :)

Der Code für meine Funktion schaut so aus:

Rich (BBCode):
isCSrunning () { 
if [ `ps | grep syno-cloud-syncd | wc -l` == 2 ] ; then
	echo CloudSync is running. Stop it, before mounting, we don\'t want funny things to happen...
exit
fi
}

Vielen Dank!
 
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