Làm thế nào để làm hỏng một hệ thống tập tin


8

Tôi sẽ thử nghiệm 'xfs_V ngoặc' trên một số hệ thống tệp lớn (khoảng 50 TB) vì trước đây mức sử dụng bộ nhớ rất cao. Mặc dù tôi chỉ có thể kiểm tra chương trình trên các hệ thống tệp chính xác nhưng sẽ tốt khi kiểm tra chúng trên hệ thống bị hỏng.

Vì vậy, điều gì sẽ là cách tốt nhất để làm hỏng một hệ thống tập tin. Tín dụng thêm nếu phương thức liên tục đưa ra cùng một tham nhũng mỗi lần ....

Để cho mọi người biết ý tôi muốn nói gì trong năm 2006

"Để kiểm tra hoặc chạy sửa chữa thành công trên hệ thống tệp nhiều terabyte, bạn cần:

  • máy 64 bit
  • một xfs 64bit _ sửa chữa / xfs _ kiểm tra nhị phân
  • ~ 2GB RAM cho mỗi terabyte của hệ thống tập tin
  • 100-200 MB RAM trên một triệu inodes trong hệ thống tập tin.

xfs_V ngoặc thường sẽ sử dụng ít bộ nhớ hơn mức này, nhưng những con số này cung cấp cho bạn một con số trên sân bóng cho những gì một hệ thống tập tin lớn đủ> 80% có thể yêu cầu sửa chữa.

FWIW, lần trước, điều này xuất hiện trong nội bộ, hệ thống tập tin 29TB được đề cập đã lấy ~ 75GB RAM + trao đổi để sửa chữa. "


Câu hỏi thú vị, nhưng việc hình thành trích dẫn có thể được cải thiện?
Coops

Nếu vậy tôi không biết làm thế nào?
James

Hãy thử bao quanh nó với `
Brad Gilbert

Đây là một thử nghiệm thú vị. Tôi đang lên kế hoạch đăng kết quả ở bất cứ đâu?
3dinfluence

Vâng, tôi có thể sẽ đăng lên danh sách gửi thư xfs và tôi luôn có thể chỉnh sửa câu hỏi này với kết quả.
James

Câu trả lời:


12

xfs_db có một blocktrash tùy chọn

Thùng rác được chọn ngẫu nhiên các khối siêu dữ liệu hệ thống tập tin. Rác xảy ra với các bit được chọn ngẫu nhiên trong các khối được chọn. Lệnh này chỉ khả dụng trong các phiên bản gỡ lỗi của xfs_db. Nó rất hữu ích để thử nghiệm xfs_repair(8)xfs_check(8).

Ví dụ

xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/xfstest/testfs


2

khối dd đến thiết bị nơi hệ thống tập tin cư trú. Bạn có thể kịch bản này để nó có thể lặp lại. Chỉ cần một vài khối ngẫu nhiên tại các vị trí ngẫu nhiên, sau đó di chuyển trên.


Trong một hệ thống tập tin 50TB mà hầu như trống rỗng, chắc chắn bạn sẽ phải im lặng may mắn để làm hỏng hệ thống?
James

Chà, bạn chỉ cần sử dụng đủ các khối ngẫu nhiên :-). Dù bằng cách nào, một "va chạm" có thể xảy ra nhiều hơn bạn nghĩ, do Nghịch lý sinh nhật: en.wikipedia.org/wiki/Bapt_Paradox .
sleske

0

Bạn có thể thử ghi đè 512 byte đầu tiên (MBR và bảng phân vùng) của thiết bị khối.

Sao lưu nó trước:

dd if=/dev/device bs=512 count=1 of=backup.bin

Và không có nó sau:

dd if=/dev/zero bs=512 count=1 of=/dev/device

Máy của bạn không nên khởi động sau đó, bạn có thể kiểm tra sửa chữa XFS bằng đĩa CD trực tiếp.


Tôi muốn có một tham nhũng tương đối nhỏ vì thời gian chạy và việc sử dụng bộ nhớ phụ thuộc vào số lượng tệp và kích thước của hệ thống tệp
James

Đây chỉ là 512 byte tham nhũng. Điều này chỉ kiểm tra xem hệ thống tập tin có thể phục hồi mà không có bất kỳ thông tin nào về cách hệ thống tập tin sẽ trông như thế nào - nếu xfs không cất đi một số siêu khóa dự phòng ở đâu đó.
TOWO
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.