Di macOS, seberapa sering / tmp dihapus?

95

Seberapa sering / tmp dihapus? Saya pikir sudah dibersihkan waktu boot dan setiap tiga hari jika Anda tidak me-reboot, tapi saya tidak dapat menemukan sumber otoritatif untuk ini.

Saya menjalankan 10.6 terbaru. (Saya kira saya akan tertarik pada perubahan perilaku ini di versi OS sebelumnya.)

zekel
sumber
2
Bagaimana dengan folder sementara per pengguna /var/folders/?
adib

Jawaban:

117

Jawaban singkat: secara default, file yang tidak diakses dalam tiga hari dihapus dari / tmp

Jawaban panjang:

  1. launchdmengatur /usr/sbin/periodic dailyuntuk menjalankan setiap hari pada 3:15 (definisi dalam /System/Library/LaunchDaemons/com.apple.periodic-daily.plist).
  2. /usr/sbin/periodic dailymenjalankan skrip /etc/periodic/daily, termasuk 110.clean-tmps.
  3. 110.clean-tmpsgunakan finduntuk menghapus file yang tidak diakses (menggunakan -atimedan -mtimeparameter untuk find) di $daily_clean_tmps_dayshari-hari yang tidak terdaftar di $daily_clean_tmps_ignore.
  4. Kedua variabel (dan variabel terkait lainnya) didefinisikan dalam /etc/periodic.conf. (Karena OS 10.7 ada file /etc/defaults/periodic.confyang mendefinisikan default , tetapi untuk menimpa default ini Anda masih harus membuat /etc/periodic.conf- lihat halaman manual periodic.conf (5).) Jika Anda belum memodifikasi file ini, $daily_clean_tmps_daysatur ke 3.
Doug Harris
sumber
10
Catatan dalam 10.7 periodic.conf telah pindah ke / etc / defaults.
Dan
1
Apakah hal yang sama berlaku untuk $ TMPDIR?
ccnokes
1
Tidak, saya tidak percaya itu benar. Tidak ada referensi $TMPDIRdi salah satu file konfigurasi yang disebutkan.
Doug Harris
3
nb Jawaban ini sudah 7,5 tahun pada saat ini, macOS sekarang pada 10,13 dan saya menggunakan 10,11. Meskipun jawaban singkatnya masih benar (3 hari), beberapa detail sudah pasti berubah. Misalnya, pada 10.11, saya tidak melihat garis yang menjadwalkan ini untuk 3:15 di /System/Library/LaunchDaemons/com.apple.periodic-daily.plist. Saya belum punya waktu untuk mempelajari lebih lanjut tentang proses boot untuk menentukan bagaimana /tmpmenghapus pada saat boot (per komentar oleh @ Reb.Cabin di atas)
Doug Harris
1
Menggunakan OSX 10.14.5, dapat mengkonfirmasi bahwa / tmp tampaknya terhapus saat reboot.
karlos