rizhas@rizhas-laptop:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda7 67G 58G 5,2G 92% /
none 4,0K 0 4,0K 0% /sys/fs/cgroup
udev 1,5G 12K 1,5G 1% /dev
tmpfs 303M 1,2M 302M 1% /run
none 5,0M 0 5,0M 0% /run/lock
none 1,5G 348K 1,5G 1% /run/shm
none 100M 80K 100M 1% /run/user
overflow 1,0M 1,0M 0 100% /tmp
overflow 1,0M 1,0M 0 100% /tmp
Jak posprzątać /tmp
?
Odpowiedzi:
/ tmp powinien zostać wyczyszczony przy ponownym uruchomieniu, ale jeśli nie uruchomisz ponownie (co jest normalne dla serwerów), czyszczenie nie nastąpi
find /tmp -ctime +10 -exec rm -rf {} +
usunie wszystkie pliki i foldery starsze niż 10 dni. możesz chcieć dodać go do codziennego crona.
AKTUALIZACJA
W komentarzach poniżej @sfussenegger zaleca nieco inny format tego polecenia, który może być lepiej dostosowany do twoich potrzeb i systemu, na którym pracujesz.
sudo find /tmp -type f -atime +10 -delete
Tutaj polecenie służy
sudo
do upewnienia się, że wszystko zostało usunięte (lub możesz uruchomić go jako root), działając na plikach, do których nie było dostępu przez ponad 10 dni i usuwa tylko pliki, a nie foldery . Używa również,-delete
aby uniknąć konieczności wykonywaniarm
poleceniaźródło
-type f
). w przeciwnym razie może się okazać, że rodzic drzewa katalogów nie był dostępny od dłuższego czasu i usuń całą jego zawartość, która potencjalnie może być nadal używana. więc ostateczne polecenie, które poleciłbym tosudo find /tmp -type f -atime +10 -delete
Możesz założyć, że wszystko w katalogu tmp (/ tmp / / usr / tmp itp.) Może zostać usunięte. PRZED rozpoczęciem usuwania zatrzymaj wszystkie programy i usługi, z których korzystasz, ponieważ / tmp / mogą być używane przez programy do tymczasowego przechowywania informacji dla tej sesji. Zrób to,
sudo service mysql stop
asudo service apache2 stop
jeśli masz uruchomiony mysql i / lub apache. Nazwy plików w katalogu / tmp / najczęściej wskazują na to, do jakiego programu należą.Więc z wiersza poleceń ...
opróżni katalog / tmp / i usunie wszystkie pliki i podkatalogi. Uważaj, aby wpisać go poprawnie. Polecenie
pwd
tam nie jest konieczne, ale powinno zostać wyświetlone/tmp
.Jeśli chcesz to interaktywnie (więc musisz potwierdzić usunięcie):
Warto również zauważyć, że ponowne uruchomienie wyczyści również / tmp, jak pokazano tutaj: Jak wyczyszczony jest katalog / tmp? Więc jeśli / tmp / jest pełen plików po restarcie, musisz sprawdzić, skąd pochodzą te pliki.
Chciałbym również powiedzieć, że 1 Mb dla / tmp to mało miejsca. Czy używasz MySQL? Zobacz https://unix.stackexchange.com/a/76058/10017, jak to naprawić (dzięki @drc)
źródło
who –b
(data ostatniego rozruchu), a następnie utworzenie pliku / czasu przestoju z datą rozruchu (touch ....... /boottime
), pozwoli na bezpieczne wykonaniefind /tmp -type f \( ! -newer /boottime \) -delete \;
operacji usuwania tylko plików starszych niż ostatni rozruchmktemp
regularnie korzystająca z moich skryptów zdecydowanie nie zgadzam się ze stwierdzeniem „bez szkody”./tmp
zawiera coś starszego niż ostatni restart, skrypty startowe nie wykonały swoich zadań.tmpreaper
Program może być używany do czyszczenia / tmp okresowo. Ten program usuwa wszystko, co nie było dostępne w danym przedziale czasowym, zwykle dwa tygodnie. Aby to działało poprawnie, system plików, na którym działa, powinien miećatimes
włączoną opcję. Jeśli używasz tmpfs , co wydaje się, że robisz, to powinno być w porządku.Oczywiście ponowne uruchomienie powoduje również wyczyszczenie / tmp , ale byłoby to nudne.
źródło
Katalog
/tmp
oznacza tymczasowy.W tym katalogu przechowywane są dane tymczasowe. Nie musisz niczego z niego usuwać, dane w nim zawarte są usuwane automatycznie po każdym ponownym uruchomieniu.
Nadal jeśli chcesz usunąć obecne w nim dane, użyj
sudo rm -r /tmp/*
usunięcie z niego nie spowoduje żadnego problemu, ponieważ są to pliki tymczasowe.
źródło
Uważaj przed uruchomieniem polecenia typu
rm -r ./*
. Po uruchomieniu odzyskiwanie danych będzie bardzo trudne lub niemożliwe.Wszystko zostanie usunięte. Upewnij się, że katalog, który usuwasz, jest poprawny.
Istnieje bezpieczniejszy sposób radzenia sobie z różnymi rzeczami.
W ten sposób, jeśli przypadkowo uruchomisz to polecenie z poziomu powłoki
history
, nie usunie to niewłaściwych plików (chyba że je trzymasz/tmp
).źródło
/tmp
Katalog zdaje się domyślnie przy każdym rozruchu, ponieważTMPTIME
jest0
domyślnie.źródło
Jeśli montowanie „/ tmp” w systemie plików Linux jest zamontowane jako przepełnienie (często ma wielkość 1 MB), jest to prawdopodobnie spowodowane tym, że nie określiłeś „/ tmp” jako własnej partycji, a główny system plików został zapełniony, a „/ tmp” było ponownie zamontowane jako awaryjne. Aby to naprawić po wyczyszczeniu miejsca, wystarczy odmontować awarię i powinno zostać ponownie zamontowane w pierwotnym punkcie:
jeśli urządzenie jest zajęte, użyj
źródło