Ich möchte rsync verwenden, um Dateien von einem Remote-Server zu kopieren. Ich würde gerne
- Kopieren Sie nur Dateien vom Server, und drücken Sie keine Dateien zurück.
- Kopieren Sie nicht vorhandene Dateien. Wenn die Remote-Datei neuer ist, möchte ich sie nicht kopieren
- habe es automatisch. Dies fordert mich jedes Mal zur Eingabe meines Passworts auf und ich möchte, dass es von cron ausgeführt wird. Wie führe ich es in einem von cron ausgeführten Bash-Skript aus?
--password-file
würde die Option das Passwort für die Server-Eingabeaufforderung bereitstellen. Die Datei sollte nur die Passphrase im Klartext enthalten und anderen Benutzern keinen Lesezugriff gewähren.Antworten:
Punkte 1 und 2: Wie Sie angeben, was kopiert werden soll, lesen Sie am besten in der rsync- Manpage . Schauen Sie sich in Ihrem Fall insbesondere das Flag --ignore-existent an.
Punkt 3: Dieses Tutorial soll Ihnen helfen, passwortloses ssh mit rsync zu verwenden. Zusammenfassung: Richten Sie ssh ohne Passwort ein und verwenden Sie '-e ssh', um rsync anzuweisen, ssh anstelle von rsh zu verwenden, um eine Verbindung zum Remote-Host herzustellen.
quelle
Für den zweiten Teil, da pjz den Rest beantwortet hat, können Sie den Schalter --ignore-existent verwenden, um nur neue Dateien abzurufen.
Von http://www.samba.org/ftp/rsync/rsync.html :
quelle