Rsync-Befehl für Synchronisation zwischen Notebook und Desktop

Der_Da_93

Der_Da_93

irgendwie
Hi,
Wollte ich eigentlich schon länger machen, habs aber immerwieder verschoben.
Also ich suche eine Lösung mit rsync, bei der:
-nur auf dem Desktop läuft sshd
-auf dem NB erstellte Dateien auf den Desktop kopiert werden
-auf dem NB bearbeitete Dateien auf dem Desktop geupdaten werden
- wie oben nur mit vertauschten Rollen

Also hab ich mir man die manpage zu rsync angeschaut, und würde das jetzt so machen:
auf dem Laptop: ( imladris ist der Desktop)
Code:
rsync --archive --recursive --verbose --update --times --links --partial --progress --rsh=ssh /home/klinch/ klinch@imladris:/home/klinch && 
rsync --archive --recursive --verbose --update --times --links --partial --progress --rsh=ssh klinch@imladris:/home/klinch /home/klinch/
Denkt ihr das funktioniert so ? Oder habe ich etwas übersehen ?
Was mir noch einfällt, gibt es eine Möglichkeit Dateien zu löschen, und dann dass sie auch auf dem anderen gelöscht werden ?
 
Was mir noch einfällt, gibt es eine Möglichkeit Dateien zu löschen, und dann dass sie auch auf dem anderen gelöscht werden ?
--delete

Und bei denen Zeilen müsste,wenn ich des richtig seh, auch auf dem Laptop der sshd laufen...

/Edit: meine rsync-Zeile für Laptop -> Desktop:
Code:
rsync -avPe "ssh -p${SSH_PORT}" --exclude=.gvfs --delete $SRCDIR $SSH_USER@$SSH_IP:$DESTDIR
(Die Var's setz ich weiter oben im Script...)
 
Zuletzt bearbeitet:
Also beide Zeilen werden vom Laptop aufgerufen.
Zu --delete :
Folgendes Szenario:
00:01 :Desktop: Datei bla1 wird erstellt
00:02 :Laptop: rsync wird mit --delete gestartet
Würde es dann nicht bla1 löschen ? Da es ja auf dem Laptop nicht vorkommt ?
 
Hm... ich nehm mal an: ja. Aber wenn du die, auf der einen Seite gelöschten Dateien auch auf der anderen Seite gelöscht haben willst, kenn ich da nur den --delete-Schalter. (Allerdings bin ich auch nicht so der kreative rsync-crack :) . Obige Zeile sichert halt das Laptop/$HOME auf'm Netzerkserver, da kommt dein Fall nicht wirklich vor ;) )
 
Lösch manuell. Oder alle paar Monate mit einem Testlauf vorher. Ansonsten garantiere ich dir, dass du irgendwann aus Versehen was wichtiges killst...
 
man rsync schrieb:
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)

Wenn du --archive einsetzt benhaltet das bereits:
--recursive
--links
--times
--progress
--partial

Ein simples :
Code:
rsync -avuz -e ssh $USER@$IP:$REMOTE_QUELL_VZ $LOKAL_ZIEL_VZ
zum runterladen reicht.
 
Zuletzt bearbeitet:
Ich bin noch am überlegen, welche Ordner ich ausschließen soll, also eigentlich würde ich so ziemlich alles syncen wollen, aber z.B. bestimmte Sachen sind ja doch unterschiedlich z.B. die Gnome-Einstellungen zum Tastaturlayout o.ä.
Welche Verzeichnisse oder Dateien schließt ihr aus ?
/Edit: Da fällt mir z.B. noch die eMail-Sammlung von Thunderbird ein, da Thunderbird dummerweise alle eMail in einer Datei abspeichert, und wenn diese dann durch --update geändert wird, dann fehlen welche. Aber für die eMails muss ich mir sowieso noch einen anderen Weg suchen.
 
Zuletzt bearbeitet:
So, ich habs jetzt probiert.
Also alle neuen Dateien liegen jetzt auch auf dem Desktop.
Aber die neuen Dateien des Desktops kamen nicht zurück.
Das zweite Problem ist das auch beim 2. Durchlauf, es ziemlich lange gebraucht hat (obwohl da nur "sending incremental file list" stand)
Ich verstehe jetzt nicht ganz wieso ? Kann es damit zusammenliegen, dass die Uhrzeiten der Computer etwa 40s Differenz haben ?
 
Zurück
Oben