Câu hỏi hay. Có vẻ như hiện tại không có cách nào dễ dàng để nói.
Một vấn đề là một tệp chỉ có thể chia sẻ một phần dữ liệu thông qua Copy-on-Write. Đây được gọi là phạm vi vật lý và một số hoặc tất cả các phạm vi vật lý có thể được chia sẻ giữa các tệp CoW.
Không có gì tương tự với cái inode
mà khi so sánh giữa các tệp sẽ cho bạn biết rằng các tệp có cùng mức độ vật lý. (Chỉnh sửa: xem câu trả lời khác của tôi ).
Câu trả lời ở mức độ thấp là bạn có thể yêu cầu nhân mà mức độ vật lý được sử dụng cho các tập tin bằng cách sử dụng , được ghi nhận ở . Về nguyên tắc, nếu tất cả các phạm vi vật lý đều giống nhau, thì tệp phải được chia sẻ cùng một bộ lưu trữ bên dưới.FS_IOC_FIEMAP
ioctl
Documentation/filesystems/fiemap.txt
Vài điều thực hiện một cách để xem thông tin này ở mức cao hơn. Tôi tìm thấy một số mã đi ở đây . Rõ ràng filefrag
tiện ích được cho là hiển thị phạm vi với -v. Ngoài ra, btrfs-debug-tree
hiển thị thông tin này.
Tuy nhiên, tôi sẽ thận trọng vì những thứ này có thể ít được sử dụng trong mục đích này, bạn có thể thấy các lỗi đưa ra câu trả lời sai, vì vậy hãy cẩn thận khi dựa vào dữ liệu này để quyết định các hoạt động có thể gây ra hỏng dữ liệu.
Một số câu hỏi liên quan:
btrfs-debug-tree
để liệt kê các phạm vi trên một tên tệp nhất định?