DS nach Backup ausschalten, aber die Backup Station?

Status
Für weitere Antworten geschlossen.

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
irgendwie schaffe ich es mit dem Keyfile nicht, habe mich genau an den Eintrag im Wiki gehalten es kommt aber immer eine Fehlermeldung.
Habe dich vor der Löschung schon hier nach dem Wortlaut der Fehlermeldung gefragt. Die sollten wir schon kennen.
Hast du den Key für root angelegt oder für einen anderen User? Falls ein anderer User: Hat dieser User ein gültiges Homeverzeichnis und eine gültige Shell?
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
Hallo,

habe den Key für root angelegt (auch in einer zeile) mit dem VI und folgende Fehlermeldung kommt

Server refused our key

Ich Versuche mit Putty eine Verbindung aufzubauen.

Danke für Hilfe
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Wie hast du den PrivateKey eingebunden? Mittels pageant? Oder hast du das Key File direkt in Putty angegeben? Den ssh Daemon hast du auch neugestartet? Die Abfrage nach dem PW des PrivatreKey kommt bei Putty?
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
habe das key file direkt in putty angegeben und auch des ssh neu gestartet. Auch die Änderungen an der ssh config vor dem Neustart gemacht.

Was muß ich hier genau vom Pub Key alles eintragen :

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAqpNfkYVjVlxxki93++irOdxpQlr66kV2yGEvh3JuKk+4Dp+xIsN+n8IHhLPGR62Of96i45UIu89dC8VmErP+DX+LldtoomwjIeJZ7274owgdOzFSCBPi0cF/aXZrvnNwnE6U0e4GNoPWI0NlIXPdH8baflnLN9tXdyzr9+UcdnE= rsa-key-20090520

alles oder nur der mittlere Eintrag ?

Danke für die Geduld.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Du musst alles was dir PuttyGen beim generieren des Keys als Public Key angibt kopieren. Das ist exakt der String den du brauchst. Du hast aber nicht vergessen den PrivateKey als File zu sichern? Und die PW Abfrage von Putty ist gekommen?
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
jetzt klappts, putty war das problem auf der DS war wohl alles richtig.

DANKE !!!!
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
wie kann ich mich jetzt mit dem key über ssh von der Hauptbox auf der Remotebox anmelden ? (syntax)
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Lies dir mal folgendes. Du musst den PrivateKey auf auf den Host bringen
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
habe ich schon versucht dann kommt aber die Meldung enter Passphrase for key (der Key hat keine Passphrase,habe auch key mit versucht) -- über Putty geht´s sofort

Mein Befehl:

ssh -i /root/synologyroot.ppk root@192.168.178.3 (nur zum Test)
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hast du folgendes (fettgedruckt) bereits gemacht?
If this doesn't work, I will take off the "command" restriction on the key and try again. If it asks for a password, I will check permissions on the private key file (on thishost, should be 600), on 'authorized_keys' and (on remotehost, should be 600), and on the '~/.ssh/' directory (on both hosts, should be 700). If some cryptic 'rsync' protocol error occurs mentioning the 'validate-rsync' script, I will make sure the permissions on 'validate-rsync' (on remotehost, may be 755 if every remotehost user is trusted) allow remoteuser to read and execute it.
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
ja habe ich gemacht. lt. Wiki Anleitung werden die Berechtigungen richtig gesetzt und das Private Key File habe auf 0600 geändert da sonst eine Fehlermeldung/Warnhinweis kommt und das File ignoriert wird. Wie gesagt mit Putty klappt es ohne Passphrase. Kann ich wirklich das ppk-File welches in Windows (puttykeygen) erzeugt wurde auf die DS kopieren und verwenden ? Ich habe das ppk file auch schon mit dem VI geöffnet und geprüft, schaut aber o.k. aus.

Langsam habe ich keinen Plan mehr.
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
niemand mehr eine Idee, es muß doch möglich sein eine SSH Verbindung zwischen zwei DS über ein Script herzustellen und den poweroff Befehl auszuführen.
 

juwi

Benutzer
Mitglied seit
01. Dez 2008
Beiträge
145
Punkte für Reaktionen
2
Punkte
18

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
Das ist ja zum kotz... jetzt klappt die SSH Verbindung aber der Backupjob (aus Crontab übernommen) startet und das Script welches den Job startet wartet nicht bis dieser beendet ist und schaltet die Remotestation nach 30 sek. (Sleep Timer zwischen den Befehlen) aus. Gibts eine Möglichkeit, dass gewartet wird bis der Backupjob beendet ist ?

#Script für das Netzwerkbackup und anschl. Shutdown der Remotestaton#
#
#
/usr/syno/bin/synonetbkp -a "Backup to S109"
#
#
sleep 30
#
#
#ssh -i /root/.ssh/privatekey root@192.168.178.3 /sbin/poweroff
#
#
exit
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Du könntest prüfen ob der Prozess noch läuft und erst dann den Shutdown durchführen. Wirf den Backup mal manuell an und prüfe auf der Konsole wie der Name des Prozesses ist. Diesen Namen fügst du dann unten unter SERVICE ein. Ich denke synonetbkp müsste hinhauen. Danach baust du eine Endlosschleife (while [ 1 ]) und prüfst bei jedem schleifendurchlauf ob der Service noch läuft. ps ax listet diese auf und grep $SERVICE sucht in der Rückgabe nach $SERVICE. Wichtig ist noch grep -v grep. Damit wird dafür gesorgt, dass der Suchbefehl nach $SERVICE selber nicht als Treffer gewertet wird
Code:
/usr/syno/bin/synonetbkp -a "Backup to S109"[FONT=monospace]
[/FONT]SERVICE='synonetbkp'[FONT=monospace]
[/FONT]while [ 1 ]
do
  if ps ax | grep -v grep | grep $SERVICE > /dev/null 
  then
   sleep 30
  else
   ssh -i /root/.ssh/privatekey root@192.168.178.3 /sbin/poweroff
   break
  fi
done
Gruss

tobi
 
Zuletzt bearbeitet:

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
danke für die Info, d.h. ich ersetze das Wort Service in dem Script von Dir mit rsync da dieser Prozess gestartet wird. Nur in der Zeile 2 oder immer aus Service rsync ?
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Zwei Bemerkungen zu obigem Skript:

1] Ich hab immer wieder versucht, dem ps auf der DS irgendwelche Optionen mitzugeben, bislang hat das nie auch nur ansatzweise eine Wirkung gehabt. Entweder das geht nicht, dann können wir es uns auch hier im Forum immer sparen, Optionen beim ps anzugeben, oder ich hab nur noch nicht die richtigen gefunden :D ... bitte mal um hilfe ...

2] der while in einem Shell-Skript wertet den Exit-Status eines Programms aus und macht daher keine wirkliche Logik (auch die [-Klammer ist ein Programm !!!) wie bei einer Programmiersprache, d.h. es gibt auch keine Klammer-Syntax. Von daher darf man getrost schreiben while true, weil true ein Programm ist, welche genau diesen Exit-Status liefert (true; echo $?) ... Ich fände es schön, wenn wir alle mal lernen würden, wie eine Shell tickt und die Schönheit dieses Interpreters wahrnehmen ... weil es ja auf Windows auch sowas gibt und die meisten das ja dort gar nicht kennen und erst recht nicht können ...

Itari
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Zu 1) Ja die Parameter scheinen wirklich keinen Unterschied zu machen.
Zu 2) Wäre das denn - wenn man die Klammern schreiben "will" - besser?
Code:
while [ 1 -eq 1 ]
do
done
Da die Parameter ja nix bringen müsste man wohl mit grep zusätzlich prüfen ob der Prozess überhaupt noch läuft (Status R)
Code:
if ps | grep -v grep | grep $SERVICE | grep \<R\>
 
Zuletzt bearbeitet:

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Zu 2) Wäre das denn - wenn man die Klammern schreiben "will" - besser?
Code:
while [ 1 -eq 1 ]
do
done

Ich würde es einfach ohne Klammern schreiben ... die Klammern sind ja eigentlich keine Klammern, sondern die [-Klammer ist ein Link auf das Programm test bzw. auf die Shell-Intrinsic test und die ]-Klammer einfach nur ein Optionsparameter ...

Also ich würde schlicht Shell-Dialekt schreiben:

Rich (BBCode):
while true; do
...
done

Itari
 

hagncola

Benutzer
Mitglied seit
01. Mrz 2009
Beiträge
187
Punkte für Reaktionen
0
Punkte
16
danke an die beiden Scripter, wie sollte jetzt das komplette script aussehen wenn der Prozess rsync ist ?
 
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