Các hệ thống tập tin ext (4?) Về bản chất có lưu trữ dữ liệu mới hơn theo kiểu dễ bị tham nhũng hơn không?


7

Gần đây tôi đã có một hệ thống tệp ext4 bị lỗi ném các lỗi sau:

kubuntu@kubuntu:~$ sudo mount -t ext4 /dev/sdc2 c1
mount: wrong fs type, bad option, bad superblock on /dev/sdc2,
  missing codepage or helper program, or other error
  In some cases useful info is found in syslog - try
  dmesg | tail  or so

kubuntu@kubuntu:~$ sudo fsck.ext4 -v /dev/sdc2
e2fsck 1.42.5 (29-Jul-2012)
    fsck.ext4: Attempt to read block from filesystem resulted in short read while trying to open /dev/sdc2
Could this be a zero-length partition?

kubuntu@kubuntu:~$ dmesg | tail
[ 2684.532855] Descriptor sense data with sense descriptors (in hex):
[ 2684.532858]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
[ 2684.532876]         05 3f c8 b0 
[ 2684.532885] sd 5:0:0:0: [sdc]  
[ 2684.532893] Add. Sense: Unrecovered read error - auto reallocate failed
[ 2684.532898] sd 5:0:0:0: [sdc] CDB: 
[ 2684.532902] Read(10): 28 00 05 3f c8 b0 00 00 08 00
[ 2684.532917] end_request: I/O error, dev sdc, sector 88066224
[ 2684.532927] Buffer I/O error on device sdc2, logical block 22
[ 2684.532973] ata6: EH complete

Sau khi khôi phục phân vùng e2fsck -f -b 32768, tôi nhận thấy rằng các tệp cũ nhất trên đĩa hầu hết được bảo tồn và hầu hết các tệp không được khôi phục là các tệp mới nhất và do đó không có bản sao lưu.

Là tài sản của việc mất các tệp mới nhất và bảo tồn các tệp cũ nhất nội tại cho ext4, hay đây chỉ là sự xui xẻo? Có bất kỳ hệ thống tập tin nào, khi tham nhũng, có xu hướng mất các tập tin cũ hơn và để bảo vệ các tập tin mới hơn?


1
Đến đây từ bài viết gốc của bạn; thất vọng khi thấy không có câu trả lời nào. Tôi đang ở trong một chiếc thuyền rất giống nhau!
EnemyBagJones

Bao nhiêu tuổi là "cũ" và "mới" như thế nào?
Kusalananda

Nếu đó là lỗi I / O từ chính ổ đĩa, thì có lẽ nó không liên quan gì đến hệ thống tệp. Và nếu chỉ có một phần của ổ đĩa bị lỗi và không thể nhận ra, bạn sẽ thấy nó khi bạn cố gắng sử dụng nó, tức là với các tệp mới hơn ...
ilkkachu

1
@Kusalananda: Các tệp "cũ" là các tệp đã có trên đĩa nhiều thời gian nhất. Trong trường hợp cụ thể của tôi, nó có lẽ là khoảng 2-3 năm. Các tệp "mới" là các tệp đã có trên đĩa ít thời gian nhất, dưới ba tháng.
dotancohen

3
Nếu ổ đĩa hoặc hệ thống tập tin của bạn phát triển một vấn đề bằng văn bản (nhưng không đọc), bạn sẽ thấy nó trên các phần bạn viết sau khi vấn đề xuất hiện. Vì vậy, 1) kiểm tra lỗi ổ đĩa của bạn (smartmontools) và 2) nếu SMART ổn, sau đó kiểm tra hệ thống tập tin (fsck).
xenoid

Câu trả lời:


2

Câu trả lời một phần:

Siêu khối trên hệ thống tập tin của bạn đã trở nên không thể đọc được. Superblock là khối quan trọng nhất, bởi vì nó chứa thông tin về cách hệ thống tập tin được thiết lập.

Tất cả các hệ thống tập tin mới hơn sử dụng một tạp chí được gọi là : các khối mới hoặc đã thay đổi được ghi vào một khu vực tiếp giáp trước và cuối cùng thay thế các khối trong khu vực "bình thường". Điều này giúp phục hồi dễ dàng hơn: chương trình khôi phục xem tạp chí, kiểm tra xem giao dịch nào đã hoàn thành trước khi thất bại và sau đó có thể khôi phục hệ thống tệp về trạng thái nhất quán từ giao dịch thành công cuối cùng. Điều này cũng có nghĩa là những thay đổi mới nhất bị mất sau khi phục hồi, nhưng thường thì đây chỉ là những thay đổi nhỏ.

Thật khó để nói những gì đã xảy ra trong trường hợp của bạn bởi vì bạn đã không cung cấp thông tin về quá trình phục hồi đã diễn ra như thế nào. Hệ thống tệp chứa các bản sao của siêu khối, do đó bạn sẽ có thể sử dụng một bản sao thay vì bản bị hỏng, truy cập nhật ký từ bản sao và khôi phục hệ thống tệp về trạng thái gần như trước khi bạn gặp sự cố.

Như bạn đã nói rằng bạn đã mất khá nhiều tệp mới hơn, tôi đoán là chương trình khôi phục không thể khôi phục siêu khối, và do đó đã đưa ra một số giả định và vì lý do đó hoặc vì một số lý do khác không thể tìm thấy tạp chí, vì vậy bạn đã mất tất cả các thay đổi trong tạp chí, thay vì chỉ giao dịch chưa hoàn tất cuối cùng.

Nói chung, hệ thống tệp mới hơn như ext4 sẽ phục hồi tốt hơn (có thể với một số đầu vào thủ công trong quá trình khôi phục) so với các hệ thống tệp cũ hơn như ext2 hoặc FAT. Nếu những thứ này bị hỏng, bạn mất bất cứ thứ gì bị hỏng. Trong các hệ thống tập tin được ghi nhật ký, gần như luôn luôn có thể quay trở lại trạng thái nhất quán không quá xa trạng thái khi xảy ra sự cố. Vì vậy, câu trả lời cho câu hỏi trong chủ đề là "hoàn toàn không, hoàn toàn ngược lại".

Bạn có thể sử dụng tùy chọn gắn kết để ảnh hưởng đến tần suất và cách viết nhật ký và giao dịch được cam kết, do đó bạn có thể giao dịch tăng cơ hội phục hồi cho hiệu suất.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.