Ich verwende diesen rsync-Aufruf, um mein Home-Verzeichnis zu sichern:
rsync -aARrx --info= --force --delete --info=progress2 -F "$USER_HOME" "$BACKUP_MNTPOINT"
In der rsync-Manpage heißt es, dass -a -g und -o (neben anderen Optionen) impliziert, wodurch der Besitz erhalten bleiben soll. Allerdings ist mir aufgefallen, dass ein Verzeichnis, unter dem $BACKUP_MNTPOINT/$USER_HOME
es nicht existiert , mit root: root-Besitz erstellt wird, anstatt mit dem richtigen. (Dies geschieht nur mit Verzeichnissen direkt darunter $BACKUP_MNTPOINT/$USER_HOME
). Warum das?
$BACKUP_MNTPOINT
ist ein lokales Laufwerk. $BACKUP_MNTPOINT/$USER_HOME
hat die richtigen Eigentumsrechte und Berechtigungen. Weder mit einem Schrägstrich beenden $USER_HOME
noch $BACKUP_MNTPOINT
.
Sowohl das Quell- als auch das Zieldateisystem sind XFS und das Ausführen mkdir $BACKUP_MNTPOINT/$USER_HOME
erstellt ein Verzeichnis mit dem erwarteten Eigentümer.
quelle
$BACKUP_MNTPOINT
und mit welchen Optionen ist es gemountet? Tritt dies nur für das übergeordnete ($BACKUP_MNTPOINT/$USER_HOME
) Verzeichnis oder für alle erstellten Verzeichnisse auf? Tun$BACKUP_MNTPOINT
und$USER_HOME
enden mit einem/
?/home
und das Backup-Laufwerk. Bisher denke ich, dass es nur für die übergeordneten Verzeichnisse passiert ist. Weder mit einem Schrägstrich beenden$BACKUP_MNTPOINT
noch$USER_HOME
. BEARBEITEN: Ich kann jetzt bestätigen, dass es nur in den Verzeichnissen unten passiert$BACKUP_MNTPOINT/$USER_HOME
$BACKUP_MNTPOINT/$USER_HOME
das die richtigen Berechtigungen, aber keine Unterverzeichnisse? Bitte bearbeiten Sie Ihre Frage und fügen Sie diese Details hinzu. Stellenmkdir $BACKUP_MNTPOINT/$USER_HOME/foo
Sie außerdem klar , ob ein Verzeichnis erstellt wird, das Ihrem Benutzer gehört, wenn Sie dies manuell tun.mkdir $BACKUP_MNTPOINT/$USER_HOME/foo
erstellt ein Verzeichnis mit dem Besitz des Benutzers.strace
(wie in einer Pseudo-Antwort angegeben).Antworten:
Ich hatte ein ähnliches Problem beim
rsync
Sichern meines Systems auf meinem Server. Ich benutzte:Die Lösung ist, dass es nicht wirklich ein Problem gibt. Ich vermute, dass Sie den
rsync
Vorgang abgebrochen haben , nachdem Sie festgestellt haben, dass Ordner mit falschen Berechtigungen erstellt wurden. Der springende Punkt ist, dassrsync
nur dann die Berechtigungen eines übergeordneten Ordners festgelegt werden, wenn alle Unterordner und Dateien davon synchronisiert wurden.quelle
Führen Sie möglicherweise rsync über strace / truss aus und prüfen Sie, ob Sie einen Fehler vom Systemaufruf chown () erhalten, und bestätigen Sie, dass chown () den richtigen Pfad und die richtige UID / GID hat.
quelle