2009-03-19 28 views

Trả lời

21

Đó là do file system tunnelling, như được giải thích bởi Raymond Chen:

"Tại sao đường hầm tồn tại ở tất cả các

Khi bạn sử dụng một chương trình để chỉnh sửa một tập tin hiện có, sau đó lưu nó, bạn mong đợi ban đầu? Tuy nhiên, nội bộ, nhiều chương trình lưu tệp bằng cách thực hiện kết hợp các thao tác lưu, xóa và đổi tên (chẳng hạn như các tệp được liệt kê trong bài viết được liên kết) và không có đường hầm, thời gian tạo tệp có vẻ thay đổi ngay cả khi điểm của người dùng cuối, không có tệp nào được tạo.

Một ví dụ khác về tầm quan trọng của đường hầm, hãy xem xét tệp "Tệp có tên dài.txt", có tên ngắn là "FILEWI ~ 1.TXT". Bạn tải tệp này vào một chương trình không nhận biết tên tệp dài và lưu nó. Nó xóa "FILEWI ~ 1.TXT" cũ và tạo một tệp mới có cùng tên. Nếu không có đường hầm, tên liên kết của tệp sẽ bị mất. Thay vì một cái tên thân thiện, tên tập tin đã bị hỏng vào thứ này với những dấu hiệu nguệch ngoạc. Không tốt. "

+1

+1 cho lời giải thích thực tế về những gì đang diễn ra. Và để liên kết với Raymond Chen. – OregonGhost

0

Hệ thống tệp NT không xóa tệp khi bạn nghĩ. Khi bạn xóa một tập tin trên một hệ thống tập tin NT hệ điều hành chỉ đơn giản là đánh dấu không gian đĩa mà tập tin chiếm đóng như có sẵn. Tệp sẽ không thực sự bị xóa cho đến khi một tệp khác được ghi vào vị trí đó trên đĩa.

Tại sao Windows lại cho rằng đó là cùng một tệp chính xác, tôi tin rằng điều này là do tệp bị trống khi bạn xóa tệp để tạo tệp mới ở cùng một vị trí có cùng tên và giống nhau (trống) nội dung làm cho Windows nghĩ rằng đó là trong thực tế, cùng một tập tin. Tôi sẽ coi đây là một lỗi.

Lưu ý rằng Windows thực hiện xóa tệp theo cách này là lý do chính khiến bạn có thể sử dụng các tiện ích khôi phục tệp để khôi phục các tệp đã xóa.

Các vấn đề liên quan