Ich möchte mein Ubuntu-System sichern und muss zwei Partitionen beachten: Eine ist /
, eine andere ist /home
.
Ich werde wahrscheinlich ein Backup machen wollen /
. Dies ist nicht einmal so groß, so dass ich es auf meiner SD-Karte tragen kann, während ich schnell genug reagieren kann, um ein Image davon zu haben (deshalb versuche ich gerade, rsync zu verwenden).
Und über /home
, es hat viele Unterverzeichnisse , dass ich nicht zu viel kümmern , damit ich nicht wahrscheinlich sind sie, aber ich möchte darauf achten , um Dateien auf dort, so wie .bash_history
, .bashrc
, .face
, und so weiter.
Ich möchte also alle Unterverzeichnisse ausschließen, während ich Dateien einbinde /home
. Wie kann ich das erreichen?
--exclude "*/"
hat nicht funktioniert. "/*/"
, "/**/"
, --include "*" --exclude */
Nicht zeigen Sie mir nicht , was ich will. Zumindest kopierte es den Quellordner, ohne irgendetwas darin zu kopieren.
rsync -r -t -p -o -g -v --progress --delete --modify-window=1 -l -H -b -s --exclude home/dinir/ --exclude media/ --exclude proc/kcore / /home/dinir/Temporal Site for Storing Backups
-f" */" -f"+ *"
es sicher , das in meinen Code einzufügen? Vielleicht wäre es so-f"- home/dinir/*/" -f"+ home/dinir/*"
?-f"- home/dinir/*/" -f"+ home/dinir/*"
Wenn Sie dies mit
--include
und--exclude
-Parametern lösen möchten , sollten Sie deren Reihenfolge ändern: Schließen Sie zuerst aus, was Sie möchten, und schließen Sie dann alles ein. Ich mache es normalerweise mit diesem Befehl:quelle
Kopiert standardmäßig
rsync
keine Verzeichnisse. Vielleicht benutzen Sie die-a
Flagge. Wenn dies der Fall ist, bekannt , dass gemäß der Manpage ,-a
äquivalent ist-rlptgoD
, wenn Sie also nicht Rekursion wollen, verwenden Sie einfach-lptgoD
.quelle
Versuche dies:
Quelle: https://lists.samba.org/archive/rsync/2008-September/021746.html
quelle