Penyebab kerusakan sistem file besar yang tiba-tiba? ("Root inode bukan direktori") [ditutup]

8

Saya memiliki laptop yang menjalankan Maverick (sangat bahagia sampai kemarin), dengan SSD Patriot Torx; Enkripsi LUKS untuk keseluruhan partisi; satu lvm volume fisik di atas itu; kemudian home dan root di volume logis ext4 di atas itu.

Ketika saya mencoba untuk mem-bootnya kemarin, ia mengeluh tidak bisa me-mount sistem file root. Menjalankan fsck, pada dasarnya setiap inode tampaknya salah. Sistem file home dan root menunjukkan masalah yang sama. Memeriksa superblock cadangan tidak membantu.

e2fsck 1.41.12 (17-May-2010)
lithe_root was not cleanly unmounted, check forced.
Resize inode not valid.  Recreate? no

Pass 1: Checking inodes, blocks, and sizes
Root inode is not a directory.  Clear? no   
Root inode has dtime set (probably due to old mke2fs).  Fix? no
Inode 2 is in use, but has dtime set.  Fix? no
Inode 2 has a extra size (4730) which is invalid
Fix? no
Inode 2 has compression flag set on filesystem without compression support.  Clear? no
Inode 2 has INDEX_FL flag set but is not a directory.
Clear HTree index? no
HTREE directory inode 2 has an invalid root node.
Clear HTree index? no
Inode 2, i_size is 9581392125871137995, should be 0.  Fix? no
Inode 2, i_blocks is 40456527802719, should be 0.  Fix? no
Reserved inode 3 (<The ACL index inode>) has invalid mode.  Clear? no
Inode 3 has compression flag set on filesystem without compression support.  Clear? no
Inode 3 has INDEX_FL flag set but is not a directory.
Clear HTree index? no
....

Berjalan stringsdi filesystem, saya bisa melihat ada apa yang tampak seperti nama file dan data pengguna di sana. Saya memang memiliki cadangan yang cukup baik (kayu sentuh) sehingga tidak layak meringkuk untuk menarik kembali file individual, meskipun saya mungkin menyimpan gambar dari disk yang tidak terenkripsi sebelum saya membangun kembali, untuk berjaga-jaga.

smartctltidak menunjukkan kesalahan, begitu juga log kernel. Menjalankan mode tulis badblocksmelintasi swap lv tidak menemukan masalah juga. Jadi disk mungkin gagal, tetapi tidak dengan cara yang jelas.

Pada titik ini saya pada dasarnya, seperti kata mereka, fscked? Kembali ke menginstal ulang, mungkin menjalankan badblock di atas disk, lalu memulihkan dari cadangan? Bahkan sepertinya tidak ada cukup data untuk mengajukan bug yang berarti ...

Saya tidak ingat bahwa mesin ini mogok terakhir kali saya menggunakannya.

Pada titik ini saya menduga ada bug atau kerusakan memori yang menyebabkannya menulis sampah di disk ketika terakhir kali dijalankan, atau semacam mode kegagalan halus untuk SSD.

Menurut Anda apa yang menyebabkan ini? Apakah ada hal lain yang akan Anda coba?

poolie
sumber

Jawaban:

4

Tampaknya superblok pertama Anda rusak. Ada banyak salinan superblock, karena itu adalah bagian terpenting dari sistem file. Anda dapat mencoba e2fsckdengan -bopsi untuk memeriksa apakah salinan superblok yang berbeda memiliki informasi yang benar. Periksa e2fsck (8) untuk informasi lebih lanjut tentang -bopsi ini, dan cara menentukan lokasi superblok tambahan.

IIRC, hanya ada satu salinan direktori root, jadi jika rusak, harus dibuat ulang, kosong. Direktori yang awalnya berada di bawah direktori root akan muncul di / lost + found dan Anda harus memindahkannya dari sana.

Tabel inode tersebar melalui partisi. Tidak mungkin Anda kehilangan semuanya. Yang dapat dipulihkan, jika file mereka tidak dapat dipindahkan ke direktori asli mereka, mereka juga akan berakhir dengan / hilang + ditemukan.

Juliano
sumber
Oh, jadi Anda berpikir karena superblok itu korup, petunjuk ke daerah inode sebenarnya tidak menunjuk ke inode sama sekali, sehingga mereka semua tampak korup? Itu masuk akal.
poolie
Memeriksa superblok lainnya tidak membantu.
poolie
2

Saya pernah melihat ini sebelumnya. Ini ada hubungannya dengan Ubuntu 10.10. Saya akan melihat-lihat pelacak bug karena telah diposting beberapa kali. Yang pasti, ambil snapshot dari disk, bersihkan kemudian jatuhkan di sistem sekunder untuk melihat apakah bug itu berulang (untuk menyingkirkan disk - penyebab yang tidak mungkin).

Publiccert
sumber
Saya sudah melihatnya dua kali dengan SSD ini, dan tidak sama sekali pada sistem yang sama dengan disk magnetik, atau pada sistem lain dengan SSD yang berbeda. Jadi saya curiga SSD saat ini.
poolie
1

Pembaruan: Akhirnya, saya menjadi yakin bahwa masalahnya adalah semacam kegagalan SSD yang rumit, atau saya kira mungkin interaksi antara kernel dan SSD. Saya menggantinya dengan disk magnetik, dan saya tidak mengalami kesulitan lagi.

poolie
sumber