Sistem file apa di Linux yang menyimpan waktu pembuatan?


32

Apakah ada sistem file (terkenal, dapat diandalkan) di Linux yang menyimpan waktu pembuatan file dan direktori dalam tabel i-node?

Jika ada, apakah waktu "yang diubah" diganti dengan waktu pembuatan i-simpul dalam panggilan stat?



Ada yang tampaknya menjadi cara untuk mendapatkan waktu pembuatan file di Linux jika file pada sistem file ext4. Lihat: unix.stackexchange.com/a/131347/182996
kaartic

Jawaban:


16

Sistem file ext4 menyimpan waktu pembuatan. stat -c %W myfiledapat menunjukkannya kepada Anda.


6
Terima kasih. Dalam sistem saya stat -c %Wmengembalikan 0 (waktu pembuatan tidak diketahui), tetapi itu adalah pertanyaan lain ...
franziskus

1
Tetapi perhatikan bahwa karena cara file ditangani oleh banyak program, nilai waktu pembuatan mungkin tidak berguna .
mattdm

15
@Legate: jika editor teks berfungsi dengan menyalin file ke lokasi sementara, mengedit copy pekerjaan sementara, dan kemudian memindahkan salinan sementara dari aslinya pada save, kapan waktu pembuatan?
mattdm

1
Apakah ini perlu diaktifkan, entah bagaimana? Saya mencoba untuk mendapatkan crtime untuk file pada sistem file ext4 dan mendapat nol. Setelah sebelumnya membaca posting blog ini , saya juga mencoba menggunakan debugfsdan statyang mengungkapkan bahwa tidak ada crtime. Jadi saya ingin tahu apakah itu perlu diaktifkan? (FWIW saya menggunakan Arch Linux )
starfry

2
Tampaknya memang ada cara untuk mendapatkan waktu pembuatan file di Linux. Lihat: unix.stackexchange.com/a/131347/182996
kaartic

30

Beberapa sistem file menyimpan waktu pembuatan file, meskipun tidak ada nama standar untuk bidang ini:

  • ufs2 → st_birthtime
  • zfs → crtime
  • ext4 → crtime
  • btrfs → otime
  • jfs → di_otime

5
Secara eksplisit, pada 2015-03, XFS tidak mendukung (lihat xfs_dbhalaman manual atau dalam Struktur Sistem File XFS
Franklin Piat

4

Sejauh yang saya tahu sistem file ext4, JFS dan BTRFS semua mendukung bidang tambahan dalam inode file untuk menyimpan waktu pembuatan, meskipun penamaan mungkin berbeda.

Sumber: LWN File Creation Times


//, Apakah Anda dapat memverifikasi ini? AFAIK agak lemah, setidaknya untuk selera saya.
Nathan Basanese

5
@NathanBasanese AFAIK melaporkan ke JFS dan BTRFS. Untuk ext4, ya itu mendukungnya. Periksa debugfsstat perintah. Contoh: Anda perlu memasang perangkat tempat sistem file ext4 Anda dipasang (misalnya / dev / sda3) dan Anda perlu mendapatkan nomor inode file dalam sistem file tersebut (gunakan ls -i, katakanlah 42000 adalah nomornya), maka Anda cukup mengetik: debugfs -R 'stat <42000>' /dev/sda3. Jalankan ini sebagai root, atau dengan hak istimewa yang cukup. Cari crtimebidangnya, itu dia. Untuk JFS dan BTRFS, Anda perlu menemukan perintah debugfs yang setara ...
Huygens

//, NIIICE. Saya mencoba $ ls -i | grep dump.rdb 656376 dump.rdb dan $ sudo debugfs -R 'stat <656376>' / dev / sda2, tapi saya rasa saya belum memiliki ext4 di sana, belum. Jika saya mencobanya pada ext4, saya akan mengatakannya.
Nathan Basanese

@NathanBasanese Anda bisa lakukan df -Tuntuk mendapatkan tipe partisi atau cukup mengetik mount. Pastikan inode file milik partisi yang benar. Inode (sesuai sifatnya) khusus untuk partisi.
Huygens
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.