/tmp และไฟล์ชั่วคราว
/tmp คือไดเรกทอรีสำหรับไฟล์ชั่วคราวที่โปรแกรมต้องการใช้เพียงช่วงเวลาสั้นๆ ส่วน /var/tmp มีไว้สำหรับไฟล์ชั่วคราวที่ควรคงอยู่หลังจากการรีบูต ในหลายดิสทริบิวชัน /tmp จะถูกล้างเมื่อบูตเครื่องหรือเป็น tmpfs ในหน่วยความจำ และไฟล์เก่าในทั้งสองไดเรกทอรีจะถูกลบโดย systemd-tmpfiles
1/tmp เทียบกับ /var/tmp
มาตรฐาน Filesystem Hierarchy Standard ระบุว่าโปรแกรมต้องไม่คาดหวังว่าไฟล์ใน /tmp จะถูกเก็บไว้ระหว่างการรันโปรแกรม ในขณะที่ /var/tmp จะถูกเก็บรักษาไว้หลังจากการรีบูต ทั้งสองไดเรกทอรีสามารถเขียนได้โดยผู้ใช้ทุกคนและมี sticky bit ดังนั้นผู้ใช้จึงสามารถลบได้เฉพาะไฟล์ของตนเองเท่านั้น
2การล้างข้อมูลอัตโนมัติ
systemd-tmpfiles จะอ่านกฎจากไดเรกทอรี tmpfiles.d เช่น /usr/lib/tmpfiles.d/tmp.conf ซึ่งโดยทั่วไปจะกำหนดอายุไว้ที่ 10 วันสำหรับ /tmp และ 30 วันสำหรับ /var/tmp การล้างข้อมูลจะทำงานทุกวันผ่าน systemd-tmpfiles-clean.timer
3tmpfs
เมื่อ /tmp ถูกเมาท์เป็น tmpfs ไฟล์ของมันจะอยู่ใน RAM และ swap และจะหายไปทุกครั้งที่รีบูต คำสั่ง findmnt /tmp จะแสดงให้เห็นว่ามันเป็น tmpfs หรือไม่
วิธีการตรวจสอบและล้าง /tmp
- ตรวจสอบขนาด:
sudo du -sh /tmp /var/tmp - ดูว่ามันอยู่ในหน่วยความจำหรือไม่:
findmnt /tmp - รันการล้างข้อมูลที่กำหนดค่าไว้ทันที:
sudo systemd-tmpfiles --clean - แสดงรายการไฟล์เก่าก่อนที่จะลบด้วยตนเอง:
sudo find /tmp -type f -atime +10
ข้อควรระวัง
- การลบไฟล์ใน
/tmpที่โปรแกรมกำลังใช้งานอยู่อาจทำให้โปรแกรมทำงานผิดพลาดได้ ควรเลือกใช้การล้างข้อมูลด้วย systemd-tmpfiles หรือการรีบูตเครื่อง - ห้ามลบซ็อกเก็ตและไฟล์ล็อกของบริการที่กำลังทำงานอยู่
บทความที่เกี่ยวข้อง
- การค้นหาไฟล์ขนาดใหญ่และไฟล์เก่าด้วย findวิธีใช้คำสั่ง find เพื่อแสดงรายการไฟล์ขนาดใหญ่หรือไฟล์เก่าบน Linux ดูตัวอย่างไฟล์อย่างปลอดภัย และลบเฉพาะไฟล์ที่คุณตรวจสอบแล้วเท่านั้น
- การใช้งานดิสก์ด้วย du และ ncduวิธีค้นหาว่าสิ่งใดทำให้ดิสก์ Linux เต็มด้วย du และ ncdu แบบโต้ตอบ พร้อมตัวเลือกที่จำกัดการทำงานอยู่ภายในระบบไฟล์เดียว
- สิทธิ์การเข้าถึงไฟล์: chmod และ chownวิธีการทำงานของสิทธิ์การอ่าน การเขียน และการเรียกใช้งานบน Linux ความหมายของ 755 และ 644 รวมถึงวิธีการเปลี่ยนเจ้าของและโหมดอย่างปลอดภัย
แหล่งอ้างอิง
- หน้าคู่มือ tmpfiles.d(5) man7.org
- มาตรฐาน Filesystem Hierarchy Standard 3.0: /tmp refspecs.linuxfoundation.org
หมายเหตุ: RainServer นำเสนอการตรวจสอบและการล้างข้อมูลอย่างปลอดภัยสำหรับเซิร์ฟเวอร์ Linux โดยจะแสดงรายการสิ่งที่กำลังจะเปลี่ยนแปลงและขออนุญาตก่อนดำเนินการ
ตรวจสอบล่าสุด: