Uitleg van tijdstempels van Linux-bestanden voor: atime, mtime en ctime
Wanneer betekent ‘verandering’ niet ‘wijzigen’? Als we het hebben over tijdstempels van Linux-bestanden. In deze handleiding leggen we uit hoe het systeem deze bijwerkt en hoe u deze zelf kunt wijzigen.
Het verschil tussen atime, mtime en ctime
Elk Linux-bestand heeft drie tijdstempels: de toegangstijdstempel (atime), de gewijzigde tijdstempel (mtime) en de gewijzigde tijdstempel (ctime).
De toegangstijdstempel is de laatste keer dat het bestand is gelezen. Dit betekent dat iemand een programma heeft gebruikt om de inhoud van het bestand te bekijken of er enkele waarden uit te lezen. Er is niets gewijzigd of toegevoegd aan het bestand. Er wordt naar de gegevens verwezen, maar deze zijn ongewijzigd.
De gewijzigde tijdstempel geeft de laatste keer aan dat de inhoud van het bestand is gewijzigd. Een programma of proces bewerkt of manipuleert het bestand. “Gewijzigd” betekent dat er iets in het bestand is gewijzigd of verwijderd, of dat er nieuwe gegevens zijn toegevoegd.
Gewijzigde tijdstempels geven geen wijzigingen aan die in de bestandsinhoud zijn aangebracht. Het is eerder het tijdstip waarop de metagegevens met betrekking tot het bestand zijn gewijzigd. Wijzigingen in bestandsrechten zorgen er bijvoorbeeld voor dat de gewijzigde tijdstempel wordt bijgewerkt.
Het standaard Linux ext4-bestandssysteem wijst ook ruimte toe voor de tijdstempel voor het maken van bestanden in de interne bestandssysteemstructuren, maar dit is nog niet geïmplementeerd. Soms is deze tijdstempel gevuld, maar kun je niet vertrouwen op de waarden erin.
Gedetailleerde tijdstempel
Linux-tijdstempels bevatten een getal in plaats van datum en tijd. Dit getal is het aantal seconden geleden Unix-tijdperk, dat was middernacht (00:00:00) op 1 januari 1970, Gecoördineerde universele tijd (UTC). Schrikkelseconden worden genegeerd in Linux-tijdstempels, dus ze lijken in niets op realtime.
Wanneer Linux een tijdstempel moet weergeven, vertaalt het het aantal seconden in een datum en tijd. Dit maakt het voor mensen makkelijker te begrijpen. De locatie en tijdzone waarin de computer het bestand bekijkt, instrueert de computer om het aantal seconden om te zetten in een datum en tijd. Het zorgt er ook voor dat de maand in de juiste taal is.
Hoeveel seconden kunnen er in een tijdstempel worden opgeslagen? Veel – 2,147,483,647 om precies te zijn. Dit is een groot aantal, maar is het genoeg? Als je dat aan het Unix-tijdperk toevoegt en het vervolgens vertaalt naar een datum en tijd, krijg je dinsdag 19 januari 2038 om 03:14:07 uur. Vóór die tijd hebben we een ander systeem voor tijdstempels nodig.
Tijdstempels weergeven
Wanneer de optie -l (longlist) wordt gebruikt met ls, zoals hieronder weergegeven, U kunt de gewijzigde tijdstempel zien:
ls -l dp.c
Als u de tijdstempel van de toegang wilt zien, gebruikt u de optie -lu (toegangstijd) als volgt:
ls -lu dp.c
Ten slotte kunt u, om de tijdstempel van de wijziging te zien, de optie -lc (change time) gebruiken; Schrijf het volgende:
ls -lc dp.c