Konsistenz von Dateiattributen bei Backups

Bei der Sicherung von Dateien von einem PC oder Server werden die sogenannten Dateiattribute nicht immer erhalten. Dateiattribute sind u.a. Berechtigungen oder Zeitstempel, wie z.B. die letzte Zugriffszeit.

Auf Linux- oder Mac-Rechnern unterscheidet man zwischen 3 Zeitstempeln einer Datei:

  • access time (atime): Zeitpunkt des letzten Zugriffs, also z.B. wann eine Datei geöffnet oder gelesen wurde
  • modified time (mtime): Zeitpunkt der letzten Änderung, also wann der Inhalt einer Datei zuletzt geändert wurde, z.B. durch Hinzufügen neuer Zeilen
  • change time (ctime): gibt an, wann Dateiattribute zuletzt geändert wurden, z.B. Rechte oder Besitzer

Viele Backup-Programme modifizieren die access time, da die Dateien für das Backup eingelesen werden müssen. Dies ist aber normalerweise nicht erwünscht, da die access time z.B. Aufschluss darüber geben kann, ob eine Datei lange nicht mehr verwendet wurde. Dateien, die lange nicht mehr geöffnet worden sind, könnten archiviert und gelöscht werden, um Plattenplatz zu sparen. Um ein korrektes Backup durchzuführen, kann man die access time vor dem Backup einlesen und nach dem Backup wieder zurück schreiben.

Im folgenden Beispiel zeigen wir, wie die Zugriffszeit einer Datei geändert werden kann. Zunächst zeigen wir alle Zeitstempel der Datei test.txt mit dem stat-Befehl an:
rein@deb9:~$ stat test.txt
Datei: test.txt
...
Zugriff : 2017-08-21 13:59:33.475960848 +0200
Modifiziert: 2017-08-21 13:59:33.487961068 +0200
Geändert : 2017-08-21 13:59:33.487961068 +0200

Nun modifizieren wir die Zugriffszeit mit dem touch-Befehl:
rein@deb9:~$ touch -a --date="2017-08-21 13:00" test.txt

Ein erneutes Ausführen des stat-Befehls zeigt, dass die Zugriffszeit erfolgreich auf 13.00 Uhr gesetzt wurde, jedoch gleichzeitig auch die ctime auf den Zeitpunkt gesetzt wurde, zu dem der touch-Befehl ausgeführt wurde:

rein@deb9:~$ stat test.txt
Datei: test.txt
...
Zugriff : 2017-08-21 13:00:00.000000000 +0200
Modifiziert: 2017-08-21 13:59:33.487961068 +0200
Geändert : 2017-08-21 14:07:12.780936304 +0200

Hat also beispielsweise ein Backup-Programm die atime erfolgreich wieder auf den ursprünglichen Zeitpunkt zurück gesetzt, so müsste es eigentlich auch noch die ctime wieder korrigieren. Bei der ctime ist das aber über einen einfachen Befehl nicht möglich. Es kann also vorkommen, dass ein Backup-Programm Dateiattribute ändert, auch wenn das nicht erwünscht ist.

Auch beim Zurückspielen des Backups sollten bestimmte Dateiattribute wieder hergestellt werden, insbesondere die Dateirechte, also z.B. Benutzer- oder Gruppenrechte sowie Besitzer der Datei. Der Backup-Administrator sollte je nach Anwendungsfall die Wiederherstellung der korrekten Attribute überprüfen.

 

 

Dieser Beitrag wurde unter Allgemein veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Du kannst diese HTML Tags und Attribute benutzen:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>