opened image

Czyszczenie starych logów i plików tymczasowych na serwerach Linux

Usuwanie starych logów.

 

Aby utrzymać czystość i optymalną pracę systemu, należy okresowo usuwać stare logi. Poniżej przedstawiono działania, które można podjąć w tym celu.

 

1. Usuwanie logów systemowych:


Należy usunąć tylko stare archiwa logów, podczas gdy same logi nie powinny być usuwane, aby uniknąć błędów w działaniu niektórych usług. Zaleca się kompresowanie lub czyszczenie logów za pomocą następujących poleceń:

find /var/log \( -name "*.[0-9]" -o -name "*.*.[0-9]" -o -name "*.gz" \) -exec rm {} \;
find /var/log/ -type f -name "*log" -exec cp /dev/null {} \;

 

Jeśli na Twoim serwerze codziennie gromadzi się wiele logów, a wolne miejsce na dysku jest niewystarczające, można przeprowadzać codzienne czyszczenie przestarzałych archiwów logów. W tym celu można dodać następujące polecenie do crontaba:

0 0 * * * find /var/log \( -name "*.[0-9]" -o -name "*.*.[0-9]" -o -name "*.gz" \) -exec rm {} \; && find /var/log/ -type f -name "*log" -exec cp /dev/null {} \;

 

2. Czyszczenie pamięci podręcznej repozytoriów:


Zaleca się używanie specjalnych poleceń do czyszczenia pamięci podręcznej lokalnego repozytorium z pobranych plików pakietów, zamiast ręcznego usuwania pamięci podręcznej w katalogu /var/cache/. Oto niektóre z nich:

Dla systemów CentOS/RedHat opartych na yum:

yum clean all

Dla systemów Ubuntu/Debian opartych na apt-get:
 

apt-get clean

 

3. Usuwanie plików tymczasowych:

​​​​​​​
Podczas usuwania plików tymczasowych za pomocą następujących poleceń, należy być ostrożnym, aby nie usunąć ważnych danych, takich jak kopie zapasowe konfiguracji, stron internetowych lub baz danych, które mogą być przechowywane w folderach tymczasowych. Na początku warto sprawdzić zawartość tych folderów za pomocą polecenia `ls -la`:

ls -la /tmp/
ls -la /var/tmp/

Jeśli sprawdziłeś i nie ma tam nic ważnego, do usunięcia plików tymczasowych można użyć następujących poleceń:

rm -rf /tmp/*
rm -rf /var/tmp/*

 

4. Dodatkowe działania dla serwerów z różnymi panelami zarządzania serwerami:

ISPmanager:

 

Wyczyść (zresetuj) wszystkie pliki logów ISP:

find /usr/local/mgr5/var/logs -type f -exec sed -i 'd' "{}" \;

 

Wyczyść archiwa logów w katalogu /var/www/httpd-logs:

find /var/www/httpd-logs \( -name "*.[0-9]" -o -name "*.*.[0-9]" -o -name "*.gz" \) -exec rm {} \; && find /var/www/httpd-logs/ -type f -name "*log" -exec cp /dev/null {} \;

Foldery z plikami tymczasowymi w ISPmanager:

rm -rf /var/www/www-root/data/tmp/*

Gdzie www-root to domyślny użytkownik lub inny używany na serwerze.

 

VestaCP:

 

Usuń pliki tymczasowe i niedokończone archiwa w katalogu VestaCP:

rm -rf /home/admin/tmp*
rm -rf /backup/tmp.*

Przy tym usuwane są niedokończone lub nieudane archiwa użytkownika admin. Dla innego użytkownika należy go wskazać w poleceniu.

W VestaCP można również użyć następującego polecenia do usunięcia przestarzałych archiwów logów:

rm -rf /var/log/*-2023*.gz

Gdzie zamiast 2023 należy podać bieżący rok.

Wnioski.

Te działania pomogą oczyścić system z przestarzałych i niepotrzebnych logów oraz plików tymczasowych, utrzymując jego sprawność i optymalizację.


Zalecamy również zapoznanie się z innymi przydatnymi artykułami: