Bagaimana cara melakukan pemeriksaan penuh terhadap struktur sistem file ext4?

25

Saya memiliki partisi 2TB ext4 dengan setengah juta file di atasnya.
Saya ingin memeriksa apakah partisi ini mengandung kesalahan atau tidak.
Saya tidak ingin mencari blok buruk, hanya struktur logis yang harus diperiksa.

Saya telah melepas partisi dan menjalankannya fsck /dev/sda2, tetapi fsck segera kembali dengan kode keluar 0 tanpa benar-benar memeriksa keseluruhan sistem file.
Saya berharap pemeriksaan partisi penuh akan memakan waktu berjam-jam untuk diselesaikan.
Saya telah membaca man fscktetapi tidak menemukan opsi untuk "pengujian menyeluruh".

Saya khawatir partisi saya mungkin memiliki beberapa sektor yang secara tidak sengaja ditimpa oleh data sampah.
HDD saya sebelumnya terhubung ke OS lain, dan partisi ext4 mungkin dirugikan oleh perilaku yang salah dari OS itu.
Itu sebabnya saya ingin memastikan seluruh struktur pohon sepenuhnya benar.

Dengan kata lain, saya ingin melakukan pemeriksaan yang mirip dengan utilitas apa yang chkdsk.exedilakukan pada Windows.
Apa yang harus saya gunakan pada Debian untuk sepenuhnya memeriksa sistem file ext4?

Egor Skriptunoff
sumber
2
@SatoKatsura - Terima kasih! Saya hanya ingin tahu mengapa e2fsck -fcek begitu cepat - hanya perlu beberapa detik? Ini luar biasa dibandingkan dengan perilaku Windows (butuh berjam-jam).
Egor Skriptunoff

Jawaban:

27

Seperti yang disebutkan oleh Satō Katsura , jalankan e2fsckdalam mode "force":

e2fsck -f /dev/sda2

Ini akan memaksa pemeriksaan bahkan jika sistem berpikir sistem file bersih. Opsi "verbose" juga membantu:

e2fsck -vf /dev/sda2

Sebagai catatan tambahan, dan tidak berlaku dalam kasus Anda, tetapi jika Anda menggunakan LVM untuk penyimpanan Anda, Anda dapat menggunakan lvcheckalat kecil yang rapi untuk menjalankan pemeriksaan sistem file "offline" pada sistem file yang terpasang (menggunakan snapshot LVM dan pembaruan metadata sistem file jika centang tidak menemukan kesalahan).

Stephen Kitt
sumber
7

Anda juga dapat menambahkan -ytanda untuk menghindari menjawab pertanyaan.

Dari manual :

-y menerima jawaban yesuntuk semua pertanyaan; memungkinkan e2fsckuntuk digunakan secara non-interaktif.

Jadi, rentangkan jawabannya (karena saya belum bisa berkomentar) dari @Sato - Anda bisa menjalankan:

e2fsck -vfy /dev/sda2
impalle
sumber
6
Itu bisa berisiko, karena Anda tidak tahu sebelumnya apa yang mungkin Anda tanyakan, dan memaksakan jawaban ya untuk semuanya bisa dalam kasus terburuk menyebabkan hilangnya data yang dapat dipulihkan.
Alex
0

Anda juga dapat memeriksa sistem file langsung dalam mode hanya baca dengan ini:

e2fsck -vfn /dev/sda2
Attila
sumber
Dari bantuan e2fsck: "Namun, meskipun aman untuk melakukannya, hasil yang dicetak oleh e2fsck tidak valid jika sistem file di-mount." Tidak yakin apa tujuannya seperti memeriksa ...: /
joaerl