–navigation–
Beitragsdatum | 01.01.2018 |
---|---|
Letzte Aktualisierung | 17.12.2019 |
Betrifft | rsnapshot 1.3.1 u.a., Raspbian/Debian verschiedene Versionen u.a. |
Ein Backup-Job über rsnapshot lief nicht mehr. Dies stellte ich bei einer Routinekontrolle fest - die Timestamps der daily.*
-Verzeichnisse waren alle veraltet - eigentlich müsste daily.0
immer vom aktuellen Tag sein.
Bei der Prüfung des Logs von rsnapshot
(unter /var/log/rsnapshot
) stieß ich dann auf folgende Fehlermeldungen:
[22/Dec/2017:01:03:14] /usr/bin/rsnapshot -c /etc/rsnapshot_backup.conf daily: started [22/Dec/2017:01:03:14] Setting locale to POSIX "C" [22/Dec/2017:01:03:14] echo 16933 > /var/run/rsnapshot.pid [22/Dec/2017:01:03:14] /bin/rm -rf /media/backup/s00151_nas/daily.6/ [22/Dec/2017:01:03:14] /usr/bin/rsnapshot -c /etc/rsnapshot_backup.conf daily: ERROR: Warning! /bin/rm failed. [22/Dec/2017:01:03:14] /usr/bin/rsnapshot -c /etc/rsnapshot_backup.conf daily: ERROR: Error! rm_rf("/media/backup/s00151_nas/daily.6/") [22/Dec/2017:01:03:14] rm -f /var/run/rsnapshot.pid
Nach manuellen Löschversuchen (Problem blieb bestehen) und Versuchen die Berechtigung der Freigabe (/media/backup
ist eine Freigabe über Samba) (auch keine Lösung) testete ich den rsnapshot-Job manuell.
Dabei wurden weitere Fehler angezeigt - nämlich die Verzeichnisse, die sich nicht löschen ließen.
Ich prüfte die Inhalte der Verzeichnisse und stellte fest, dass Dateinamen mit Anführungszeichen enthalten waren, also z.B.:
datei1 "datei2" datei3
rm
kann diese Dateinamen nicht löschen.
Auf dem Client, der eine samba-Freigabe eingebunden hatte und darüber rsnapshot laufen ließ, konnte Verzeichnisse nicht löschen, da diese nicht leer seien.
Ein rm -rf
löscht rekursiv die Inhalte von Verzeichnissen und dann mittels rmdir
das leere Verzeichnis selbst.
Befindet sich im Verzeichnis nun ein Softlink auf eine Datei, der nicht mehr aufgelöst werden kann (das Ziel des Softlinks existiert nicht), dann kann unter Umständen dieser Link nicht gelöscht werden.
Für beide Ursachen gilt: die problematischen Dateien/Links müssen direkt auf dem Server, der die Freigabe bereitstellt, gelöscht werden. Daher ist ein Zugriff z.B. via ssh
erforderlich.
Ich wechselte direkt auf das NAS, das die Freigaben erzeugt und löschte dort manuell als root alle Dateien mit Anführungszeichen.
Dies wiederholte ich auch auf der Backup-Freigabe (das fehlgeschlagene Backup ist selbst auch eine Freigabe vom NAS).
Nun konnte rsnapshot wieder korrekt durchlaufen.
Die Dateien mit Anführungszeichen waren allesamt obsolet und konnten weg. Hätte ich sie noch gebraucht, hätte ich die Dateien umbenennen können. Dann aber ebenfalls auf der zu sichernden Freigabe und in den Backups.
Auch hier muss auf den NAS direkt gelöscht werden.
Alle Softlinks lassen sich wie folgt finden:
# find [path] -type l # z.B.: find /mnt/freigabe -type l # direkt loeschen: # find [path] -type l -delete # z.B.: find /mnt/freigabe -type l - delete
Danach kann rm
vom Client aus wieder richtig löschen.
Ähnliche Themen im blog:
rsnapshot, freigabe
IT-MÜCKE - Richard Mücke - Ihr zuverlässiger EDV-Partner aus Mannheim
home - beratung - it-mücke kms - kontakt - blog - richard mücke - zertifizierungen - impressum - datenschutzerklärung