Kích thước tệp rất lạ (hơn 600 PB) trên một hệ thống tệp nhỏ


21

Tôi đã có một tệp trên hệ thống tệp XFS có kích thước khoảng 200 GB. Đó là hình ảnh QCOW2 chứa một đĩa ảo của máy ảo điều khiển KVM. Đã xảy ra lỗi (có thể đó là một trục trặc của qemu-kvm, tôi không chắc chắn), máy ảo đã bị sập và bây giờ tôi có một tệp trông như thế:

191090708 -rwxr--r--. 1 root root 737571587400425984 Oct 10 10:03 973d10e0-a5e3-4a59-9f98-4b9b9f072ade

Vì vậy, nó vẫn chiếm 191090708 khối, nhưng lshiển thị là 656 petabyte.

Hơn nữa, tôi có một tệp khác có cùng tiền sử, nhưng trên một hệ thống tệp khác (không phải XFS, mà là GFS2):

410855320 -rwxr--r--. 1 root root 7493992262336241664 Dec 13  2014 ac2cb28f-09ac-4ca0-bde1-471e0c7276a0

Nó chiếm 410855320 khối, nhưng lshiển thị là ~ 6,6 exabyte.

Bạn nghĩ gì, có an toàn để loại bỏ các tập tin này? Cảm ơn bạn!

PS Thật tốt khi có những bức ảnh chụp thường xuyên! :) Tôi không biết mình sẽ làm gì nếu không có họ.


Cảm ơn bạn rất nhiều vì đã trả lời của bạn. Tất nhiên, tôi biết về các tệp thưa thớt, nhưng câu hỏi quan trọng nhất đối với tôi là như sau: có an toàn khi xóa các tệp này không? Như tôi thấy bây giờ, có thể mất một số dữ liệu nếu hệ thống tập tin bị hỏng. Tôi không thể chắc chắn rằng các hệ thống tập tin vẫn ổn, bởi vì việc hủy kết nối và kiểm tra chúng là điều không mong muốn, nhưng lần xuất hiện đầu tiên đã xảy ra cách đây 4 tháng, lần thứ hai - 14 tháng trước, vì vậy tôi hy vọng rằng tôi sẽ thấy rằng có bất kỳ hệ thống tập tin nào tham nhũng nếu có. Bạn nghĩ sao?
Volodymyr Melnyk

Câu trả lời:


31

Tôi có thể thấy hai lý do có thể khiến bạn thấy các kích thước tệp đó:

  • Tập tin thưa thớt
  • Hệ thống tập tin tham nhũng

Các tệp thưa thớt là một tính năng trên một số hệ thống tệp, theo đó bạn có thể tạo một tệp có lỗ hổng trong đó. Không có không gian vật lý được phân bổ cho các lỗ. Đọc qua các lỗ sẽ trả về byte NUL tất cả các cách.

Nếu lý do cho những gì bạn đang thấy là các tệp thưa thớt, thì việc xóa chúng cũng an toàn như với một tệp không thưa thớt.

Nếu lý do cho những gì bạn đang thấy là hỏng hệ thống tệp, thì việc xóa các tệp mà không kiểm tra hệ thống tệp là không an toàn. Nếu một hệ thống tệp bị hỏng theo cách mà nhiều tệp tuyên bố chiếm cùng một không gian, thì việc xóa một trong hai tệp sẽ khiến các khối đó được giải phóng. Một khi những khối được giải phóng được tái sử dụng, tham nhũng trở nên tồi tệ hơn.

Nếu bạn đã thấy bất kỳ triệu chứng nào khác khiến bạn nghĩ rằng hệ thống tệp có thể bị hỏng, bạn nên buộc kiểm tra toàn bộ hệ thống tệp trước khi xóa các tệp.

Nếu không có bằng chứng cho thấy hệ thống tệp bị hỏng và các tệp dường như thưa thớt, tôi sẽ chỉ xóa các tệp một khi tôi không cần chúng nữa.


6

Vấn đề là cách bạn tính kích thước tệp.

Một cách là nó nhìn phần bù của byte cuối cùng (như ls). Cách khác là tính tổng các khối thực sự được phân bổ (như du).

Những gì bạn thấy nếu có thể là một tệp có dữ liệu được ghi ở mức bù rất lớn. Có nghĩa là các phần chính của không gian địa chỉ tệp của bạn không được phân bổ. Nhưng bạn vẫn có thể đọc nó.


Cảm ơn bạn. Bạn nghĩ gì, nó sẽ không sụp đổ bất cứ điều gì nếu tôi chỉ loại bỏ các tập tin này?
Volodymyr Melnyk

1
Google "tập tin thưa thớt" để biết chi tiết.
Kondybas
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.