Unix hält 3 Zeitstempel für jede Datei: mtime, ctime als auch atime. Die meisten Leute scheinen zu verstehen, atime (access time) ist es, wenn die Datei zuletzt gelesen. Es scheint eine gewisse Verwirrung zwischen mtime und ctime wenn. ctime ist die
Inode ändern, während mtime ist die Datei, Zeitpunkt der letzten Änderung. "Change" und "Veränderung" sind ziemlich synonym. Es gibt keine Ahnung zu haben von grübeln diese Worte. Stattdessen müssen Sie auf das konzentrieren, was wird geändert. mtime ändert sich, wenn Sie in die Datei schreiben. Es ist das Alter der Daten in der Datei. Wenn mtime Änderungen, so hat ctime. Aber ctime Änderungen ein paar mal. Zum Beispiel, es wird sich ändern, wenn Sie der Eigentümer oder die Berechtigungen für die Datei.
Lassen Sie uns ein konkretes Beispiel. Wir führen Sie ein Paket mit dem Namen, mit dem Samba-PC Zugriff auf Dateien. So ändern Sie die Samba-Konfiguration, ich bearbeiten Sie eine Datei mit dem Namen smb.conf. (Diese Änderungen mtime und ctime.) Ich brauche wohl nicht zu einer anderen zu sagen, dass ich Samba, dass die Datei verändert. Hin und wieder Samba befasst sich mit der mtime auf die Datei. Wenn die mtime hat sich der Samba-Server liest die Datei. Später in der Nacht unsere Backup-System läuft. Es verwendet ctime, die sich auch geändert, es sichert die Datei. Aber sagen wir mal, dass ein paar Tage später habe ich bemerkt, dass die Berechtigungen für smb.conf sind 666. Das ist nicht gut .. jeder kann die Datei editieren. So bin ich ein "chmod 644 smb.conf". Dies ändert sich nur ctime. Samba wird die Datei nicht lesen. Aber später, dass die Nacht, unsere Backup-Programm stellt fest, dass ctime hat Änderungen, so dass es sichert die Datei. Auf diese Weise, wenn wir verlieren und müssen unsere Backups neu laden, erhalten wir das neue, verbesserte Genehmigung Einstellung.
Hier ist ein zweites Beispiel. Lassen Sie uns sagen, dass Sie eine Datei namens employees.txt das ist eine Liste der Mitarbeiter. Und Sie haben ein Programm, drucken Sie es aus. Das Programm druckt nicht nur die Daten, aber es erhält die mtime und druckt das auch. Jetzt hat jemand ein Mitarbeiter aus der Ende des Jahres 2000 und eine Backup-Band, hat diese Datei. Viele Programme Wiederherstellung Wiederherstellung der mtime auch. Wenn Sie dieses Programm wird es ausdrucken mtime ab Ende des Jahres 2000. Aber die ctime heute. Also noch einmal, unseren Backup-Programm finden Sie in der Datei müssen gesichert werden.
Nehmen wir an, Ihre Wiederherstellung Programm nicht wieder die mtime. Sie wollen nicht, dass Ihr Programm, um das heutige Datum. Auch kein Problem. mtime ist unter Ihrer Kontrolle. Sie können es zu dem, was immer Sie wollen. So einfach:
$ Touch-t 200012311800 employees.txt
Dies wird mtime zurück zu dem Tag, Sie wollen, und es wird jetzt zu ctime. Sie haben die vollständige Kontrolle über die mtime, aber das System bleibt in der Kontrolle der ctime. Mtime, so ist ein bisschen wie das Datum, an einem Schreiben, während ctime ist wie das Datum des Poststempels auf dem Umschlag.