ubuntuusers.de

rsync in cron - Permission denied auf entfernter Maschine

Status: Gelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

speiche

Anmeldungsdatum:
12. Oktober 2009

Beiträge: 60

Wohnort: Halle

Hallo, ich möchte stündlich mit rsync ein Verzeichnis (mit Unterverzeichnissen) auf einen Remote-Server synchronisieren. /etc/cron.d/backup sieht so aus:

00 18-23 * * * joerg /usr/bin/rsync -vvae ssh /home/joerg/Eigene-Dateien-Joerg/ root@192.168.1.19:/backup/papa-lappi/home/joerg/Eigene-Dateien-Joerg/ >> /var/log/backup.log # JOB_ID_1

Die entfernte Maschine ist ein Gentoo-Server. Puplic/Privat-Key ist eigenrichtet, ich kann mit per ssh ohne Login verbinden. Der rsync-Befehl läuft auf der Shell. Als cron-Befehl erhalte ich (als Mail) folgende Meldung:

From joerg@papa-lappi  Tue Oct  5 16:21:02 2010
Return-Path: <joerg@papa-lappi>
X-Original-To: joerg
Delivered-To: joerg@papa-lappi
Received: by papa-lappi (Postfix, from userid 1000)
        id F111E101170; Tue,  5 Oct 2010 16:21:01 +0200 (CEST)
From: root@papa-lappi (Cron Daemon)
To: joerg@papa-lappi
Subject: Cron <joerg@papa-lappi> /usr/bin/rsync -vvae ssh /home/joerg/Eigene-Dateien-Joerg/ 192.168.1.19:/backup/papa-lappi/home/joerg/Eigene-Dateien-Joerg/ >> /var/log/backup.log # JOB_ID_1
Content-Type: text/plain; charset=ANSI_X3.4-1968
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/home/joerg>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=joerg>
Message-Id: <20101005142101.F111E101170@papa-lappi>
Date: Tue,  5 Oct 2010 16:21:01 +0200 (CEST)

Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password,keyboard-interactive).
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.7]

Auch der Versuch, ein separates Script zu bauen und dieses zu starten, klappt nicht. Hier das Script:

#!/bin/bash
source /etc/profile
rsync -vvae ssh /home/joerg/Eigene-Dateien-Joerg/ root@192.168.1.19:/backup/papa-lappi/home/joerg/Eigene-Dateien-Joerg/ >> /var/log/backup.log

Das Script ist auch ausführbar:

-rwxr-xr-x 1 joerg joerg 199 2010-10-05 16:14 backup-home.sh

Und nun bin ich am Ende meines Lateins. Könnt Ihr mir weiterhelfen? Danke! Speiche

Moderiert von redknight:

Vershcoben, als das Backupforum neu erstellt wurde.

uname

Anmeldungsdatum:
28. März 2007

Beiträge: 6030

Wohnort: 127.0.0.1

Bau mal die Fehlerumleitung aus (verstehe ich auch nicht ganz) und poste mal den Fehler des Scriptes. Führe die Aktion incl. Aufruf und Meldungen auch noch mal manuell aus. Stell zudem sicher, dass der Ursprungsuser (joerg) jeweils identisch ist.

Am Rande:

Ich backupe in die umgekehrte Richtung (naja, die Richtung nicht, sondern eher der Aufruf), um auch inkrementell backupen zu können. In deinem Fall führt eine fehlerhafte Dateiänderung auf "papa-lappi" und die Sicherung auch zu einem Fehler im Ziel. Das korrekte Original ist nach dem Backup verloren. Da wären vielleicht ein paar Sicherungsgenerationen angebrachter.

Schau evtl. hier: Skripte/Backup mit RSYNC

speiche

(Themenstarter)

Anmeldungsdatum:
12. Oktober 2009

Beiträge: 60

Wohnort: Halle

Hallo, also, ich habe die Umleitung der Fehlermeldung herausgenommen. Die letzten Zeilen beim Ausführen des Scriptes sehen so aus (alle Ausgaben ist zu viel zum posten):

shopdaten/Uhlenbrock/Werbe_06.pdf
shopdaten/Uhlenbrock/busch.dat
shopdaten/Uhlenbrock/preis06-Import-CAO.csv
shopdaten/Uhlenbrock/preis06-fuer-CAO-Import.xls
shopdaten/Uhlenbrock/preis06.xls
shopdaten/Uhlenbrock/preis1.txt
shopdaten/Uhlenbrock/preis2.txt
shopdaten/Uhlenbrock/preis3.txt
shopdaten/Uhlenbrock/uhlenbrock.gif
total: matches=0  hash_hits=0  false_alarms=0 data=13826

sent 35306 bytes  received 1574 bytes  14752.00 bytes/sec
total size is 1380623371  speedup is 37435.56

Und so sehen die letzten Ausgaben aus, wenn ich den rsync-Befehl direkt auf der Konsole eingebe:

shopdaten/Uhlenbrock/busch.dat is uptodate
shopdaten/Uhlenbrock/preis06-Import-CAO.csv is uptodate
shopdaten/Uhlenbrock/preis06-fuer-CAO-Import.xls is uptodate
shopdaten/Uhlenbrock/preis06.xls is uptodate
shopdaten/Uhlenbrock/preis1.txt is uptodate
shopdaten/Uhlenbrock/preis2.txt is uptodate
shopdaten/Uhlenbrock/preis3.txt is uptodate
shopdaten/Uhlenbrock/uhlenbrock.gif is uptodate
total: matches=0  hash_hits=0  false_alarms=0 data=0

sent 21440 bytes  received 1558 bytes  45996.00 bytes/sec
total size is 1380623371  speedup is 60032.32

Das habe ich nicht verstanden:

Stell zudem sicher, dass der Ursprungsuser (joerg) jeweils identisch ist.

Mit Generationen bei der Sicherung will ich zu Hause nicht arbeiten. Das lohnt nicht, es geht hier "nur" um Dokus, Schriftstücke und so. Da sind Fehler höchsten orthographischer Art. ☺ Speiche

uname

Anmeldungsdatum:
28. März 2007

Beiträge: 6030

Wohnort: 127.0.0.1

Verstehe ich noch nicht. Poste doch mal die genauen Befehlseingaben und lasse dann die Ausgabe weg. Poste dabei auch jeweils den ausführenden Benutzer, also einfach die ganze Kommandozeilen hier posten.

speiche

(Themenstarter)

Anmeldungsdatum:
12. Oktober 2009

Beiträge: 60

Wohnort: Halle

Ach so, da habe ich Dich wohl falsch verstanden.

joerg@papa-lappi:~$ whoami
joerg

Und der Befehl:

rsync -vvae ssh /home/joerg/Eigene-Dateien-Joerg/ root@192.168.1.19:/backup/papa-lappi/home/joerg/Eigene-Dateien-Joerg/

Ich hoffe, das meintest Du. Speiche

speiche

(Themenstarter)

Anmeldungsdatum:
12. Oktober 2009

Beiträge: 60

Wohnort: Halle

Das Hauptproblem war, daß beim Erstellen des Keys keine leere Passphrase verwendet wurde. Das muß aber so sein, um ein nicht-interaktives Login via ssh zu realisieren.

Dann kann man den rsync-Befehl nicht direkt aus der Crontab heraus aufrufen. Man sollte sich also ein Script basteln, in welchem der rsync-Befehl aufgerufen wird.

Hier die Details: http://www.gentooforum.de/artikel/19237/2/rsync-als-cronjob-permission-denied.html#post136496 Jörg

Antworten |