Jak mogę zwolnić miejsce z ogromnego folderu 39,5 GB / var / log /?

46

Właśnie dostałem wiadomość z domyślnego oprogramowania do analizy dysku (Baobab), że mam tylko 1 GB na dysku twardym. Po kilku poszukiwaniach odkryłem, że /var/log/przyczyną tego jest folder.

Niektóre pliki / rozmiary w /var/log/:

  • kern.log = 12,6 GB
  • ufw.log = 12,5 GB
  • kern.log.1 = 6.1 GB
  • ufw.log.1 = 6,0 GB

Et cetera et cetera. /var/logJest wielki.

Czy mogę usunąć te pliki lub cały /var/logfolder? A może to WIELKI NIE NIE w Ubuntu?

blade19899
źródło

Odpowiedzi:

39

Nie możesz usunąć całego folderu, ale możesz usunąć pliki dziennika „Old-Packed” bez szkody dla systemu.

Dla typowego użytkownika domowego można bezpiecznie usunąć dowolny plik dziennika, który jest skompresowany i ma rozszerzenie .gz (jak widać na zdjęciu).

Te skompresowane pliki dzienników są starymi dziennikami, które są zgzipowywane w celu zmniejszenia przestrzeni dyskowej i jako przeciętny użytkownik nie potrzebujesz ich.

Wybierz rozszerzenie .gz

Salih Emin
źródło
7
find / var / log -type f -name "* .gz" -exec rm -f {} \;
diyizm
@diyism próbowałem kodu, ale niewiele pomocy. mój dziennik nadal używa 6 GB miejsca @ _ @
GusDeCooL
1
find /var/log -type f -name "*.gz" -delete, Usunąłem skompresowane pliki i uwolniłem tylko około 1 GB miejsca. Nie wystarczy 50 GB na /reż i resztę mojego dysku /home!
Muhammad Gelbana
Komputer mojej matki miał plik kern.log o wielkości 21 GB. Duży plik kern.log wskazuje na problem w samym jądrze Linuksa lub coś, z czym ma problemy w radzeniu sobie. W obu przypadkach zaleca się przejście do terminalu powłoki Linux i uruchomienie cat /var/log/kern.loglub nano /var/log/kern.log(w GUI uruchomić coś takiego jak np. gedit /var/log/kern.logLub mousepad /var/log/kern.log) i sprawdzenie, co może być problemem. Gdy dowiesz się, co jest nie tak, możesz uruchomić sudo rm /var/log/kern.log ; sudo telinit 6, aby usunąć taki (duży) plik i ponownie uruchomić system operacyjny.
Yuri Sucupira
W moim przypadku spowoduje to usunięcie jedynie 15,7 MB z 41 plików. Prawdziwe problemy to messages(7,7 GB), user.log(7,7 GB), syslog(4,1 GB) i syslog.1(3,5 GB). Te cztery pliki sumują 23 GB. Jakiś sposób, aby je usunąć, a przynajmniej zmniejszyć ich rozmiar?
Rodrigo
32

Nie usunąłbym całego folderu / var / log - to zepsuje wszystko.

Możesz po prostu zniszczyć dzienniki, jak sugeruje @jrg - ale chyba, że ​​rzeczy zapisujące się do plików dziennika (głównie syslogd) nie zostaną zrestartowane, to tak naprawdę nie odzyskasz miejsca na dysku, ponieważ pliki będą istnieć w stanie usuniętym, dopóki uchwyty plików są zamknięte.

Lepiej byłoby dowiedzieć się, dlaczego dzienniki nie są obracane (a później usuwane). Logrotate ma to dla ciebie zrobić i podejrzewam, że nie jest uruchamiany każdej nocy tak, jak powinien.

Pierwszą rzeczą, którą bym zrobił, to:

sudo /etc/cron.daily/logrotate

To powinno obrócić pliki dziennika (więc kern.log staje się kern.log.1); i możesz następnie usunąć kern.log.1 itp., aby zwolnić miejsce na dysku.

Jeśli do tej pory wszystko jest w porządku, kolejnym pytaniem jest, dlaczego nie dzieje się to automatycznie. Jeśli wyłączysz komputer w nocy, upewnij się, że masz zainstalowany anakron .

richvdh
źródło
17

Powinieneś spojrzeć na dzienniki i zobaczyć, co się do nich zapisuje. Domyślam się, że ufw / iptables (rejestrujesz cały ruch sieciowy).

ufw - po zalogowaniu wszystkich pakietów otrzymasz duże dzienniki. Jeśli nie zamierzasz przeglądać dzienników, wyłącz logowanie. Jeśli chcesz monitorować swoją sieć, użyj snort. Snort przefiltruje tysiące odebranych pakietów i ostrzeże Cię o potencjalnie problematycznym ruchu.

Sądzę, że winowajcą jest ufw i dostajesz duży log do kern.log, ponieważ logujesz tam również pakiety.

Czasami występuje problem z jądrem lub sprzętem, który wypełnia dzienniki. W takim przypadku najlepiej naprawić problem lub zgłosić błąd. Aby to zrobić, musisz przejrzeć dzienniki.

Jeśli nie możesz rozwiązać problemu, możesz skonfigurować syslog, aby nie wypełniał dzienników.

Zobacz http://manpages.ubuntu.com/manpages/precise/man5/syslog.conf.5.html

Jeśli podasz więcej szczegółów na temat problemu, możemy pomóc w lepszym debugowaniu.

Pantera
źródło
2
To bardzo dobra uwaga. Warto dowiedzieć się, co blokuje dzienniki, a nie tylko je usuwać. +1.
richvdh
6

Usunięcie /var/logjest prawdopodobnie złym pomysłem, ale usunięcie pojedynczych plików dziennika powinno być OK.

Na moim laptopie z małym dyskiem SSD skonfigurowałem /var/log( /tmpi /var/tmp) jako tmpfspunkty montowania, dodając następujące wiersze do /etc/fstab:

temp        /tmp        tmpfs   rw,mode=1777    0   0
vartmp      /var/tmp    tmpfs   rw,mode=1777    0   0
varlog      /var/log    tmpfs   rw,mode=1777    0   0

Oznacza to, że nic w tych katalogach nie przetrwa ponownego uruchomienia. O ile wiem, ta konfiguracja działa dobrze. Oczywiście tracę możliwość przeglądania starych dzienników w celu zdiagnozowania problemów, które mogą się pojawić, ale uważam, że jest to sprawiedliwy kompromis w zakresie zmniejszonego zużycia dysku.

Jedyny problem, jaki miałem, to to, że niektóre programy (w szczególności APT) chcą zapisywać swoje dzienniki w podkatalogach /var/logi nie są wystarczająco inteligentne, aby utworzyć te katalogi, jeśli nie istnieją. Dodanie linii mkdir /var/log/aptdo /etc/rc.localnaprawiło dla mnie ten konkretny problem; w zależności od zainstalowanego oprogramowania może być konieczne utworzenie innych katalogów.

(Inną możliwością byłoby utworzenie prostego tararchiwum zawierającego tylko katalogi i rozpakowanie go /var/logpodczas uruchamiania, aby utworzyć wszystkie potrzebne katalogi i ustawić ich uprawnienia naraz.)

Ilmari Karonen
źródło
1
ufw był problemem najwyraźniej ustawiłem rejestrowanie na FULL, więc logde wszystko. dzięki za pomoc :)
blade19899