Wenn ich die Option -a verwende, wie in Berechtigungen mit rsync beibehalten gefragt und beantwortet, wird häufig der Fehler "rsync: Berechtigungen konnten nicht festgelegt werden" angezeigt.
rsync: failed to set permissions on "/ata/text/RCS/jvlc,v": Operation not permitted (1)
rsync: failed to set permissions on "/ata/text/RCS/jvm,v": Operation not permitted (1)
rsync: failed to set permissions on ...
Warum ist das? Die Dateien sind normale Dateien mit der Erlaubnis von 0664.
permissions
rsync
Prosseek
quelle
quelle
Antworten:
Höchstwahrscheinlich wird rsync auf der Zielseite nicht als Benutzer ausgeführt, der über die Berechtigung für
chmod
diese Dateien verfügt (die entweder der Eigentümer oder der Stamm der Datei sein müssten).quelle
Dieser Fehler tritt auf, weil der Vorgang zum Ändern der Berechtigungen nicht zulässig ist. Prüfen Sie daher entweder, ob Ihr Benutzer, der die Befehle ausführt, über die richtigen Berechtigungen verfügt (z. B. er ist nicht der Eigentümer), oder ob Ihr Dateisystem dies nicht unterstützt.
Sie können die Warnungen ignorieren, indem Sie die zusätzlichen Argumente für rsync to
--no-perms
und-O
(--omit-dir-times
) angeben, um zu vermeiden, dass Sie versuchen, Berechtigungen und Änderungszeiten für Dateien / Verzeichnisse festzulegen. Dies sollte die Fehler beheben. Alternativ vermeiden Sie die Verwendung von-a
.quelle
Wie bereits erwähnt, tritt das Problem immer dann auf, wenn Sie nicht über die Berechtigung zum Ändern der Dateiberechtigungen für das Ziel von verfügen
rsync
. Sie können diese Fehlermeldung jedoch vermeiden, indem Sie die beiden zusätzlichen Argumente--no-o
und verwenden--no-g
.Beispiel:
quelle
--no-owner
und--no-group
steuern Sie nicht Berechtigungen. Das würdest du wollen--no-perms
. Wenn Sie nicht versuchen möchten, die Eigentümerschaft zu ändern, benötigen Sie wahrscheinlich alle drei Flags.Hintergrund
In der Regel werden bei
rsync
Warnungen angezeigt, wenn:rsync
Server am anderen Ende verfügt nicht über die Berechtigungen zum Ausführen einer Aktion, die den folgenden Elementen zugeordnet ist:Diese Probleme
Inhaber Gruppe Berechtigungenrsync
treten auf,rsync
wenn der Client versucht, mit dem Server zu kommunizieren , und beim Versuch, Dateien / Verzeichnisse auf einen Empfänger zu kopieren, als solche Meldungen angezeigt werden:In Fällen, in denen die empfangende Seite diese Vorgänge nicht ausführen kann, können Sie den
rsync
Versuch, sie auszuführen , einfach überspringen, und dabei feststellen, dass das Ziel nicht genau mit den Metadaten des Absenders in den Dateien übereinstimmt. Dadurch werden weiterhin identische Kopien der binären Teile der Dateien und Verzeichnisse erstellt.Damit Sie sich
rsync man pagersync
keine Sorgen um die Metadaten machen müssen, können Sie--no-OPTION
die entsprechenden Optionen deaktivieren.In unserem Fall möchten wir also so etwas verwenden, um Dinge zu deaktivieren:
Beispiel
Alternative
Ein weiterer Grund dafür ist die Verwendung des
-a
Schalters.-a
enthält eine Familie von Schaltern:Anstatt
Dies sind die einzelnen Optionen, die in enthalten sind-a
die einzelnen Schalter zu verwenden , können Sie auch auf die Verwendung der Schalter verzichten--no-OPTION
.-a
Wenn Sie die Dinge so machen, würde das obige Beispiel stattdessen so aussehen:
quelle