Tất nhiên các bản phân phối là khác nhau, nhưng tôi hy vọng các tệp tạm thời sẽ được quản lý tự động bởi hệ thống bên ngoài. Họ có thể sử dụng các công việc định kỳ hoặc dịch vụ dọn dẹp systemd-tmpfiles. Nếu bạn lo lắng về dung lượng ổ đĩa, đây là một lệnh hữu ích để xem dung lượng của mỗi thư mục gốc:
du -hs /* | sort -h
Để xem hệ thống của bạn có đang sử dụng dịch vụ systemd để quản lý các tệp tạm thời hay không, bạn chỉ cần thử:
systemctl status systemd-tmpfiles-clean
Ở phía dưới, bạn sẽ thấy một cái gì đó như sau, cho bạn biết khi nào dịch vụ được chạy lần cuối:
systemd-tmpfiles-clean.service - Cleanup of Temporary Directories
Loaded: loaded (/usr/lib/systemd/system/systemd-tmpfiles-clean.service; static; vendor preset: disabled)
Active: inactive (dead) since Wed 2018-07-18 15:43:36 IST; 18h ago
Docs: man:tmpfiles.d(5)
man:systemd-tmpfiles(8)
Process: 30495 ExecStart=/usr/bin/systemd-tmpfiles --clean (code=exited, status=0/SUCCESS)
Main PID: 30495 (code=exited, status=0/SUCCESS)
Jul 18 15:43:36 host-name systemd[1]: Starting Cleanup of Temporary Directories...
Jul 18 15:43:36 host-name systemd[1]: Started Cleanup of Temporary Directories.
Lưu ý rằng dịch vụ này sẽ thoát ngay khi hoàn thành việc dọn dẹp. Một dịch vụ hẹn giờ có trách nhiệm thường xuyên kích hoạt nó. Bạn có thể kiểm tra nó với:
systemctl status systemd-tmpfiles-clean.timer
Và bạn nên mong đợi một cái gì đó như sau:
systemd-tmpfiles-clean.timer - Daily Cleanup of Temporary Directories
Loaded: loaded (/usr/lib/systemd/system/systemd-tmpfiles-clean.timer; static; vendor preset: disabled)
Active: active (waiting) since Tue 2018-07-03 10:56:59 IST; 2 weeks 1 days ago
Docs: man:tmpfiles.d(5)
man:systemd-tmpfiles(8)
Jul 03 10:56:59 host-name systemd[1]: Started Daily Cleanup of Temporary Directories.
Jul 03 10:56:59 host-name systemd[1]: Starting Daily Cleanup of Temporary Directories.
Nếu bạn nhìn lại dịch vụ thực tế chịu trách nhiệm làm sạch các tệp, bạn sẽ thấy tất cả những gì nó làm là chạy:
/usr/bin/systemd-tmpfiles --clean
Vì vậy, bạn có thể chạy lệnh đó trực tiếp hoặc thực hiện đúng cách, chỉ cần làm:
systemctl start systemd-tmpfiles-clean
Mà sẽ chạy lệnh thích hợp cho hệ thống của bạn. Tuy nhiên, bạn cần lưu ý rằng đây không phải là lệnh "xóa tất cả các tệp tạm thời ngay bây giờ". Có một số tệp cấu hình kiểm soát những gì thực sự bị xóa và khi nào các ứng dụng có thể định cấu hình các tệp tạm thời của chúng.
Một nơi để tìm cách xử lý chung các tệp tạm thời có /usr/lib/tmpfiles.d/tmp.conf
thể có các dòng liên quan sau:
# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d
Bạn có thể thay đổi chúng thành thời gian ngắn hơn, ví dụ, nếu hệ thống của bạn hết dung lượng, chẳng hạn như:
v /tmp 1777 root root 12h
v /var/tmp 1777 root root 1d
Để chắc chắn về những gì bạn đang làm, hãy làm man tmpfiles.d
để đọc hướng dẫn. Một lần nữa, tôi đã tìm thấy cách tiếp cận được trình bày ở đây có liên quan trên CentOS (dựa trên RedHat) và hệ thống Ubuntu, nhưng tôi không biết nhiều về các bản phân phối khác.
/tmp
được làm sạch sau khi khởi động lại, nhưng điều này phụ thuộc vào hệ thống tập tin được gắn ở đó. Nódf -h
nói gì