Sau khi xóa một tệp lớn, mất bao lâu để nhận được thay đổi?


12

Tôi đã xóa một tệp nhật ký 2,3 GB trên máy chủ Ubuntu của mình và dfdường như không nhận được sự thay đổi. Có thường có độ trễ trước khi dfcó thể phát hiện ra rằng một tệp lớn đã bị xóa không?

Câu trả lời:


20

Có vẻ như các tập tin vẫn được mở bởi một số quá trình. Bạn sẽ cần phải khởi động lại dịch vụ đó để giải phóng không gian đĩa.


1
Đặc biệt có khả năng đúng với các tệp nhật ký. Nhiều chương trình mở filse log của chúng khi chúng bắt đầu và không đóng chúng cho đến khi thoát.
mattdm

1
Và bạn có thể tìm hiểu xem nó có còn được sử dụng không và do ai sử dụng lsof
Joris

Câu hỏi tuyệt vời và câu trả lời tuyệt vời. Tôi đã tự hỏi điều này một thời gian. Ngoài ra, bạn có thể yêu cầu đóng tệp xử lý tệp bằng cách gửi SIGHUP. Ví dụ: nếu quy trình 12345 mở tệp "đã xóa", thì sudo kill -HUP 12345có thể lấy quy trình đó để đóng. (Tất nhiên, nó phụ thuộc vào cách quá trình đó xử lý tín hiệu SIGHUP. Nhưng nhiều tệp định hướng daemon sẽ đóng và mở lại xử lý tệp khi chúng nhận được SIGHUP.)
Đánh dấu E. Haase

Tôi nghĩ rằng chúng tôi không thể xóa các tập tin đã mở!
Ashish Karpe

1
@AshishKarpe Không, bạn có thể xóa một tệp đã mở, nhưng quá trình mở nó sẽ giữ nội dung của tệp trên đĩa. Tập tin hiện không thể nhìn thấy đối với các quy trình khác, do không được đánh giá bởi bất kỳ tên tệp hiện có nào, nhưng quá trình đã mở vẫn có thể đọc và ghi nó. Khi quá trình đó đóng tệp, nội dung sẽ bị xóa, lấy lại không gian đĩa.
Jonathan Hartley

2

Nếu hệ thống tập tin hết dung lượng, bạn có thể chạy vào không gian dành riêng trên hệ thống tập tin. Các hệ thống tập tin ext2 / 3/4 có một số không gian dành riêng được dành riêng cho root. Theo mặc định, đây là 5%. Vì vậy, nếu nó đã đầy và 2,3GB là ít hơn 5% dung lượng trên ổ đĩa, hệ thống tập tin sẽ vẫn đầy.

Trong tình huống này, bạn có hai lựa chọn. Để tiếp tục giải phóng không gian đến mức bạn có không gian trống có thể sử dụng hoặc sửa đổi dung lượng mà hệ thống tập tin đã dành riêng. Để sửa đổi lượng không gian dành riêng, sử dụng tune2fs -m 0 /dev/sda1thay thế 0 bằng tỷ lệ phần trăm không gian dành riêng mà bạn muốn có và / dev / sda1 bằng thiết bị phù hợp.

Xem câu trả lời được chấp nhận cho câu hỏi này để biết thêm chi tiết.


0

Không lâu. Rất có thể là tập tin vẫn đang được sử dụng. Sẽ không có giải phóng không gian đĩa cho đến khi bạn chấm dứt quá trình tương ứng.


0

Ngoài ra kiểm tra thư mục .trash của bạn.


thư mục .trash này ở đâu?
Ashish Karpe

Trên Ubuntu 14.04 tôi thấy tôi có một ~/.local/share/Trashthứ chứa đầy rác tôi đã xóa trong Nautilus.
Jonathan Hartley
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.