Điểm:0

btrfs - lỗi tổng kiểm tra do đĩa tạo ra, đĩa được thay thế, vẫn còn lỗi

lá cờ ng

Tôi có một cặp đĩa 3TB trong mảng btrfs Raid1.

Một trong những đĩa này bắt đầu bị lỗi (smartd hiển thị các thành phần xấu) và vì vậy tôi đã mua một cặp ổ đĩa 8TB mới để thay thế cả hai đĩa trong mảng.

Tôi đã thay thế cả hai bằng btrfs thay thế, và chạy một số dư btrfs sau đó - không thành công với thông báo sau:

[ 5063.136378] Lỗi BTRFS (thiết bị sdc): xác minh chuyển đổi gốc không thành công trên 5153170751488 muốn 1433374 tìm thấy 1417912
[ 5063.140428] Lỗi BTRFS (thiết bị sdc): xác minh chuyển đổi gốc không thành công trên 5153170751488 muốn 1433374 tìm thấy 1417912

Bây giờ, tôi đã nhìn thấy những tin nhắn này một cách chính xác trước thay thế các đĩa, nhưng bây giờ vì cả hai đĩa đã được thay thế, tôi tin rằng nó có liên quan đến btrfs.

Dữ liệu của tôi được sao lưu đầy đủ và hệ thống tập tin đang trực tuyến và hoạt động bình thường, nhưng tôi không thể thực hiện số dư do lỗi này.Việc chạy chương trình xóa sẽ tạo ra một số lỗi nhỏ không thể sửa được, giống như trước khi tôi thay thế các đĩa.

Tôi đã tự hỏi làm thế nào tôi có thể, có lẽ:

  1. Tìm ra tập tin nào bị hỏng và khôi phục chúng từ bản sao lưu
  2. Đặt lại giao dịch trên hệ thống tệp để xóa lỗi
  3. Bỏ qua các lỗi trong khi cân bằng

...hoặc bất kỳ giải pháp hợp lý nào khác.

Cảm ơn!

paladin avatar
lá cờ id
Có thể hơi muộn, nhưng tôi muốn giải thích một chút về btrfs mà bạn dường như không biết. Trái ngược với nhiều hệ thống tệp khác, btrfs có thể thực hiện tổng kiểm tra không chỉ cho siêu dữ liệu mà còn cho chính dữ liệu. Thông thường, khi btrfs phát hiện bất kỳ lỗi hệ thống tập tin nào, nó sẽ tự động cố gắng sửa các lỗi đó. Sửa lỗi có nghĩa là sử dụng bản sao lưu từ DUP hoặc RAID1. Nếu không có bản sao như vậy, btrfs sẽ chỉ thông báo hệ thống rằng tệp bị hỏng. Thông thường, quản trị viên hệ thống nên sử dụng bản sao lưu thực để khôi phục dữ liệu bị mất. Những gì bạn đã làm là bỏ qua việc mất dữ liệu.
paladin avatar
lá cờ id
Lần tới khi bạn gặp lỗi như vậy, đó không phải là lỗi btrfs mà là dữ liệu của bạn bị hỏng và bạn nên khôi phục từ bản sao lưu, nếu có thể. Ngược lại, ext4 và các hệ thống tệp khác chỉ cố gắng hài lòng với trạng thái siêu dữ liệu đó. Việc mất dữ liệu khi sử dụng ext4 mà không biết là hoàn toàn có thể xảy ra. mặt khác, btrfs biết khi nào nó bị mất dữ liệu, đó là một lợi thế chính so với ext4.
dkd6 avatar
lá cờ ng
Xin chào, Cảm ơn đã làm rõ. Điều cuối cùng tôi đã làm là khôi phục dữ liệu từ bản sao lưu vào hệ thống tệp mới được định dạng. Khi xem các bài đăng tương tự trực tuyến, tôi có thể thấy rằng trong hầu hết các trường hợp, `dmesg` hiển thị đường dẫn của các tệp bị hỏng được phát hiện - nhưng trong trường hợp của tôi, tôi chỉ có thể thấy lỗi`parent transtrans verify fail`, điều mà tôi thấy khó hiểu...
Điểm:0
lá cờ ng

Tôi đã thực hiện thêm một vài nỗ lực để giải quyết vấn đề này và cuối cùng chỉ có một định dạng lại hệ thống tệp sạch mới giải quyết được sự cố.

Khi tôi chuyển dữ liệu ra khỏi đĩa, tôi đã thử hai lệnh nguy hiểm - kiểm tra btrfs --init-csum-tree và một kiểm tra btrfs --repair - cả hai đều không gây hại nhưng không giải quyết được vấn đề.

Sau khi định dạng lại, tôi đã chuyển lại dữ liệu trên hệ thống tệp, chạy một cân bằng hệ thống tập tin btrfs và một xóa hệ thống tập tin btrfs, và bây giờ mọi thứ đã hoạt động trở lại.

Chúc mừng!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.