Tại sao việc đổ thùng rác ở nautilus lại mất nhiều thời gian như vậy?


15

Đối với mục đích của câu hỏi này, "thư mục lớn" có nghĩa là kho lưu trữ git kernel của Linux hoặc nguồn Chromium.

Nếu tôi có rm -rfmột thư mục lớn như thế này từ shell, nó sẽ bị xóa chỉ trong vài giây.

Nếu tôi di chuyển nó vào thùng rác trước và sau đó đổ rác, thao tác đầu tiên sẽ diễn ra trong một giây, sau đó việc xóa thực tế sẽ mất vài phút (chúng ta đang nói về hai con số.)

Tại sao đổ rác lại chậm như vậy? Nó đang làm gì khi nó nói "chuẩn bị." Cần bao nhiêu sự chuẩn bị để chạy rm -rf ~/.local/share/Trash/?

Tôi đã xem xét điều này hơn 20 phút rồi.


Nếu bạn có thời gian rảnh, bạn có thể xem libnautilus-private/nautilus-file-operations.ctrong nguồn ( apt-get source nautilus). Tôi không có sự siêng năng và kiên nhẫn để đọc C. Mặc dù câu hỏi thú vị. +1
phipsalabim

3
rm -rf ~/.local/share/Trashcó thể nhanh hơn Xem Askubfox.com/a/468722/2273
Adam Monsen

Câu trả lời:


5

Khi hoạt động đầu tiên xảy ra, nó chỉ di chuyển các tập tin vào thùng rác.

Khi bạn "dọn rác" các tệp đó, nó sẽ tải toàn bộ tệp cây vào bộ nhớ và sau đó xóa từng tệp một. Điều này cho phép tính toán thời gian để biết mất bao lâu để xóa tệp, bao nhiêu tệp sẽ bị xóa, các tệp đó lớn như thế nào, mặc dù hầu hết các tham số không được sử dụng ở đây và cho phép bạn nhấn chữ thập đỏ nhỏ đó để dừng quá trình

Đó là lý do tại sao tôi luôn xóa khỏi shell


Khi tôi truy cập thùng rác nautilus, nó đóng băng nautilus trong một thời gian dài mà tôi không thể nhấn bất cứ thứ gì; Tôi tự hỏi liệu có cách nào để vô hiệu hóa nó hoặc bật lên nếu tôi thực sự muốn xem nó trên nautilus vì tôi sử dụng nó cho nhiều thứ khác và sau đó, đột nhiên tôi phải đợi 3 phút để có thể sử dụng nautilus một lần nữa nếu tôi không muốn khởi động lại nó :(
Sức mạnh của Bảo Bình
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.