Bir Linux sisteminde, dosya yöneticisindeki bir dosyanın dosya özellikleri yalnızca dosyaya son erişim tarihi ve değişiklik tarihi hakkında bilgi gösterir. Ancak oluşturma tarihi orada gösterilmez. Bazen, örneğin günlüğün ne zaman kaydedildiğini öğrenmek için buna bakmanız gerekir. Bu talimatta size Linux dosya sistemlerinde hangi verilerin saklandığını nasıl göreceğinizi ve bir Linux dosyasının oluşturulma tarihini nasıl bulacağınızı anlatacağız. Her biri kendine özgü özelliklere sahip iki uygun yoldan hemen bahsedilecektir.
POSIX standardı, bir dosya sisteminin saklaması gereken yalnızca 3 tür zaman damgası belirtir:
Bu nedenle eski dosya sistemlerinde dosya oluşturma tarihi hakkında bilgi görmek genellikle imkansızdır. Ancak modern dosya sistemlerinde (ext4, zfs, XFS ve benzeri) zaten saklanmaktadır.
Oluşturma tarihi ile ilgili veriler özel bir alana kaydedilir:
Bu bilgiyi görüntülemek için iki yöntem vardır: stat ve debugfs. Ancak, ilk yöntem her Linux dağıtımının kullanıcıları için uygun değildir. İkinci yöntem evrenseldir, ancak kullanımı o kadar kolay değildir. Her birini ayrı ayrı ele alalım.
Stat yardımcı programı bir dosya hakkında ayrıntılı bilgi görüntüler. Diğer şeylerin yanı sıra, Linux dosyasının oluşturulduğu tarihi de görüntüler. Terminalde çalıştırmak için dosyanın yolunu belirtmeniz yeterlidir. Örneğin, /home/root-user/Pictures
kataloğunda saklanan pic_1.jpeg
resmi hakkındaki bilgilere bakalım:
$ stat /home/root-user/Pictures/pic_1.jpeg
Gerekli bilgiler Oluşturuldu sütununa kaydedilir. Ve -c seçeneğini kullanarak bilgi çıktısı için belirli biçimlendirme kuralları belirleyebilirsiniz, örneğin yalnızca gerekli sütunu bırakabilirsiniz:
$ stat -c '%w' /home/root-user/Pictures/pic_1.jpeg
Ancak küçük bir zorluk var. Bazı Linux dağıtımlarında stat yardımcı programı kullanılırken bu alan boş olacaktır.
Bunun temel nedeni, çıktının statx(2)'de görüntülenmesidir. Kabuk, glibc kütüphanesine 2.28 sürümünde eklenmiştir. Yani, bu kabuk için destek GNU coreutils 8.31 temel sistem yardımcı programları setinde ortaya çıkmıştır. Sürümü kontrol etmek için bu komutu çalıştırın:
$ stat --version
Sonuç olarak, stat
yalnızca yukarıda açıklanan belirli koşullar mevcutsa dosya oluşturma verilerinin çıktısını alabilecektir. Örneğin, Ubuntu 21.10 dağıtımında her şey sorunsuz çalışır, ancak Ubuntu 20.04'te alan boş olacaktır.
DebugFS yardımcı programının sürüm kısıtlaması yoktur. Her zaman çalışacaktır. Ancak kullanım prosedürü biraz daha karmaşıktır. Çünkü debugfs aracılığıyla bir dosyanın oluşturulma tarihini görüntülemek için dosyanın inode numarasını ve dosya sistemini bilmeniz gerekir. İnode numarasını öğrenmek için ls
komutunu -i
seçeneği ile dosyanın yolunu belirterek kullanın:
$ ls -i /home/root-user/scripts/main_script.txt
Dosya sistemini görüntülemek için df
komutu kullanışlı olacaktır:
$ df /home/root-user/scripts/main_script.txt
Artık gerekli tüm verilere sahipsiniz ve debugfs yardımcı programına geçebilirsiniz. Bu komuta -R
seçeneğini aktarmanız, inode
numarasını ve ardından dosya sisteminin adını belirtmeniz gerekir:
$ sudo debugfs -R 'stat <28>' /dev/sda5
Bundan sonra, terminalde oluşturma tarihinin depolandığı alanı bulabileceksiniz. Bizim durumumuzda bu crtime'dır.
Bu talimatları tamamlar.