Очищення старих логів.
Для підтримання чистоти та оптимальної роботи системи необхідно періодично очищати старі логи. Нижче наведені дії, які можуть бути вжиті для цієї мети.
1. Очищення системних логів:
Необхідно видалити тільки старі архіви логів, в той час як самі логи не слід видаляти, щоб уникнути помилок з роботою деяких служб. Бажано стискати або очищати логи наступними командами:
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 {} \;
Якщо на Вашому сервері щодня накопичується безліч логів, і недостатньо вільного місця на диску, можна виконувати щоденне очищення застарілих архівів логів. Для цього можна додати наступну команду в кронтаб:
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. Очищення кешу репозиторію:
Рекомендується використовувати спеціальні команди для очищення кешу локального репозиторію від отриманих файлів пакета, замість ручного видалення кешу в директорії /var/cache/. Ось деякі з них:
Для систем CentOS/RedHat на основі yum:
yum clean all
Для Ubuntu/Debian систем на основі apt-get:
apt-get clean
3. Видалення тимчасових файлів:
При видаленні тимчасових файлів за допомогою наступних команд, слід бути обережним, щоб не видалити важливі дані, такі як резервні копії конфігів, сайтів або баз даних, які можуть зберігатися у тимчасових папках. Спочатку варто перевірити вміст цих папок за допомогою команди `ls -la`:
ls -la /tmp/
ls -la /var/tmp/
Якщо Ви перевірили, і там немає нічого важливого, для видалення тимчасових файлів можна використовувати наступні команди:
rm -rf /tmp/*
rm -rf /var/tmp/*
4. Додаткові дії для серверів з різними панелями управління серверами:
ISPmanager:
Очислити (обнулити) всі файли логів ISP:
find /usr/local/mgr5/var/logs -type f -exec sed -i 'd' "{}" \;
Очислити архіви логів у директорії /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 {} \;
Папки з тимчасовими файлами в ISPmanager:
rm -rf /var/www/www-root/data/tmp/*
Де www-root - дефолтний користувач, або інший, що використовується на сервері.
VestaCP:
Видалити тимчасові файли та незавершені архіви в директорії VestaCP:
rm -rf /home/admin/tmp*
rm -rf /backup/tmp.*
При цьому видаляються незавершені або невдало виконані архіви користувача admin. Для іншого користувача вказати його в команді.
В VestaCP також можна використовувати наступну команду для видалення застарілих архівів логів:
rm -rf /var/log/*-2023*.gz
Де вказуєте замість 2023 - поточний рік.
Висновки.
Ці дії допоможуть очистити систему від застарілих і непотрібних логів та тимчасових файлів, підтримуючи її працездатність та оптимізацію.
Також пропонуємо розглянути інші корисні статті: