Soru / Tmp ne zaman temizlenir?


Çeşitli dosyaları koyarak alıyorum /tmpve bunları silmeyle ilgili kuralları merak ettim?

Farklı dağıtımlar için farklı olduğunu hayal ediyorum ve özellikle Ubuntu ve Fedora masaüstü sürümleriyle ilgileniyorum.

Ama güzel bir genel yol bulma yöntemi harika bir şey olurdu.

Daha da iyisi, onu kontrol etmenin güzel bir genel yolu olurdu! (Sabah saat 3'te her gün gibi bir şey silin) /tmp 60 günden eski dosyalar, ancak yeniden başlatmadaki dizini temizlemeyin ')


118
2018-04-06 15:09


Menşei




Cevaplar:


Bu senin dağıtımına bağlı. Bazı sistemlerde, yalnızca önyükleme yapıldığında silinir, diğerleri daha eski öğeleri silmeye çalışan cronjobs var n saatler.

  • Debian benzeri sistemlerde: önyükleme /etc/default/rcS).
  • RedHat benzeri sistemlerde: yaşa göre (RHEL6 /etc/cron.daily/tmpwatch ; RHEL7 ve RedHat benzeri sistemd ile yapılandırıldı /usr/lib/tmpfiles.d/tmp.conftarafından çağrıldı systemd-tmpfiles-clean.service).
  • Gentoo'da /etc/conf.d/bootmisc.

133
2018-04-06 15:12



Ve ne zaman olursa olsun, tek güvenli an, genellikle, kurulumdan hemen sonra, önyükleme işleminde olur, çünkü çalışan işlemlerin orada kilitlenmiş dosyaları olabilir ve bunlar silinmemelidir. - adaptr
Bunları periyodik olarak kaldırabilen paketler de vardır. - Samuel Edwin Ward
RedHat benzeri sistemlerde (centos7 / rhel7), /usr/lib/tmpfiles.d/tmp.conf dosyasında yapılandırılmıştır. Systemd'nin hedefi tarafından çağrıldı systemd-tmpfiles-clean.service. - Franklin Piat
Eski Debian hakkında, düşünebilirsiniz tmpreaper paket, bu çatallı sürümü tmpwatch. - Věroš K.


CentOS'ta (ve Fedora'yı varsayalım), /etc/cron.daily adlı bir iş var. tmpwatch. Bu çalışır /usr/sbin/tmpwatchbelirtilen saatte erişilmemiş dosyaları silen, yani varsayılan davranış, atime Son zamanlarda kullanılıp kullanılmadığını değerlendirmek için dosya için.

http://linux.die.net/man/8/tmpwatch

Diğer dağıtımlar (ve yüklemeler) bir bellek içi dosya sistemi olan tmpfs olarak / tmp'ye sahip olabilir. Bu, önyüklemede silinecek.


23
2018-04-06 16:01



CentOS 7.4'de buna sahip değilim. - Kevin Lemaire
@KevinLemaire İşlevsel bir sistem hizmetine taşındı. lists.centos.org/pipermail/centos/2014-October/147155.html - cjc


Kullanmakta olduğum Ubuntu 11.10'da bir sonradan görme komut dosyası /etc/init/mounted-tmp.conf. Bunun başlangıcı şöyle der:

# mounted-tmp - Clean /tmp directory
#
# Cleans up the /tmp directory when it does not exist as a temporary
# filesystem.

description "Clean /tmp directory"

start on (mounted MOUNTPOINT=/tmp) or (mounted MOUNTPOINT=/usr)

Bununla birlikte, daha ayrıntılı olarak okuyabilirsiniz. /tmp ya monte edildiğinde ya da /usr monte edilir. Bu düzenli olarak bagajda olur, bu yüzden /tmp temizlik her botta çalışır.

İçinde /etc/default/rcS var TMPTIME ikisini beslemek için yukarıdaki init betiğinde kullanılan set find Sonunda komutlar - temelde dosya silme işlemlerini zamanlarına göre (değiştirilmiş, değiştirilmiş, erişilmiş) kontrol eder.


12
2018-04-06 15:31





RHEL 6.2'de / tmp'deki dosyalar 10 gün içinde erişilmedikleri takdirde tmpwatch ile silinir.

/Etc/cron.daily/tmpwatch dosyası, tmpwatch'ın çağrılma şeklini tanımlar.

#! /bin/sh
flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
    -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
    -X '/tmp/hsperfdata_*' 10d /tmp

-X argümanları dışlanacak dosyalardır. Sonuncudan sonuncuya kadar geçen süre, son erişilen süreden sonra beklemek için geçen zamandır. Son argüman incelemek için dizin.


5
2018-05-29 21:31





Fedora 18'den itibaren, /tmp üzerine monte edilmiş tmpfs (yani RAM) varsayılan olarak ve bu nedenle güç kapalı olarak silinir.

Bu davranış, yayınlayarak devre dışı bırakılabilir systemctl mask tmp.mount ve yeniden başlatın (ve yayınlayarak yeniden etkinleştirin systemctl unmask tmp.mount ve yeniden başlat) ve sonra /tmp üzerine monte edilecek / dosya sistemi ve tarafından kontrol edilebilir /usr/lib/tmpfiles.d/tmp.conf ayarlar.

Görmek http://fedoraproject.org/wiki/Features/tmp-on-tmpfs ve man tmpfiles.d Her dava hakkında daha fazla bilgi için.


4
2018-01-10 14:15





OpenSUSE 13.2'de, takas davranışı, sysconfig'te aşağıdaki değişkenle kontrol edilebilir.

  • MAX_DAYS_IN_TMP
  • MAX_DAYS_IN_LONG_TMP
  • TMP_DIRS_TO_CLEAR
  • LONG_TMP_DIRS_TO_CLEAR
  • OWNER_TO_KEEP_IN_TMP
  • CLEAR_TMP_DIRS_AT_BOOTUP

Bu değişkenleri şu şekilde değiştirebilirsiniz: (her bir değişkenin kullanımı da orada bulunabilir)

  1. Düzenle /etc/sysconfig/cron komut satırında el ile dosya.
  2. Yast'ı açın ve Sistem -> / etc / sysconfig Editör -> Sistem -> Cron'a gidin

3
2017-11-15 13:45





Daha da iyisi, onu kontrol etmenin güzel bir genel yolu olurdu! ('Her gün saat 3'te bir şey gibi, 60 günden eski / tmp dosyalarını silin, ancak yeniden başlatma dizini temizlemeyin')

Önyüklemede temizlenmesini istemediğiniz sorta-tempy dosyaları / var / tmp dizinine gider

Bu :-) için böyle


2
2018-04-07 05:01