แน่นอนว่าดิสทริบิวชั่นต่างกัน แต่ฉันคาดหวังว่าไฟล์ชั่วคราวจะได้รับการจัดการโดยอัตโนมัติโดยระบบที่ล้าสมัย พวกเขาต้องการใช้งาน cron หรือบริการ systemd-tmpfiles-clean หากคุณกังวลเกี่ยวกับพื้นที่ดิสก์นี่เป็นคำสั่งที่มีประโยชน์ในการดูว่าแต่ละโฟลเดอร์รูทนั้นมีพื้นที่ว่างเท่าใด:
du -hs /* | sort -h
หากต้องการดูว่าระบบของคุณใช้บริการ systemd เพื่อจัดการไฟล์ชั่วคราวหรือไม่คุณสามารถลอง:
systemctl status systemd-tmpfiles-clean
ที่ด้านล่างคุณจะเห็นสิ่งต่อไปนี้ซึ่งจะแจ้งให้คุณทราบเมื่อบริการถูกเรียกใช้ครั้งสุดท้าย:
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.
โปรดทราบว่าบริการนี้จะออกทันทีที่เสร็จสิ้นการล้างข้อมูล บริการจับเวลามีหน้าที่ในการเรียกมันเป็นประจำ คุณสามารถตรวจสอบกับ:
systemctl status systemd-tmpfiles-clean.timer
และคุณควรคาดหวังสิ่งต่อไปนี้:
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.
หากคุณดูอีกครั้งที่บริการจริงที่รับผิดชอบในการล้างไฟล์คุณจะเห็นว่ามันทำงานทั้งหมด:
/usr/bin/systemd-tmpfiles --clean
ดังนั้นคุณสามารถเรียกใช้คำสั่งนั้นโดยตรงหรือทำอย่างถูกต้องเพียงแค่:
systemctl start systemd-tmpfiles-clean
ซึ่งจะรันคำสั่งที่เหมาะสมสำหรับระบบของคุณ อย่างไรก็ตามคุณควรทราบว่านี่ไม่ใช่คำสั่ง "ลบไฟล์ชั่วคราวทั้งหมดตอนนี้" มีไฟล์กำหนดค่าหลายไฟล์ที่ควบคุมสิ่งที่ถูกลบจริงและเมื่อใดเพื่อให้แอปพลิเคชันสามารถกำหนดค่าไฟล์ชั่วคราวได้
ที่เดียวที่จะมองหาการจัดการไฟล์ชั่วคราวทั่วไป/usr/lib/tmpfiles.d/tmp.conf
ซึ่งอาจมีบรรทัดที่เกี่ยวข้องดังต่อไปนี้:
# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d
คุณสามารถเปลี่ยนสิ่งเหล่านี้ให้สั้นลงได้หากระบบของคุณมีที่ว่างเหลืออยู่ตัวอย่างเช่นเป็น:
v /tmp 1777 root root 12h
v /var/tmp 1777 root root 1d
เพื่อให้แน่ใจว่าคุณกำลังทำอะไรอยู่man tmpfiles.d
ให้อ่านคู่มือ อีกครั้งฉันได้พบวิธีการนำเสนอที่นี่เพื่อให้มีความเกี่ยวข้องกับ CentOS (RedHat based) และระบบ Ubuntu แต่ฉันไม่ทราบมากเกี่ยวกับการแจกแจงอื่น ๆ
/tmp
ได้รับการทำความสะอาดหลังจากรีบูตเครื่อง แต่สิ่งนี้ขึ้นอยู่กับระบบไฟล์ที่ติดตั้งที่นั่น สิ่งที่ไม่df -h
พูด?