Чистим Логи (*.log) на linux серверах

В последнее время на сервере мало места свободного, и если за ним не следить часов 12-20 - место может закончится, что приходится не только чистить все бэкапы БД на сайтах, но и логи. Чтобы постоянно не гуглить - добавлю заметку для себя в блоге, как через SSH быстро можно почистить логи сервера. Удалять файлы нельзя. Файлы требуется «обнулять» (удалять содержимое). При удалении файла некоторые службы у Вас не запустятся. Обнулить log файл Вы можете командой:
cat /dev/null > /var/log/mysqld.log
где /var/log/ — путь к файлу лога, и mysqld.log файл лога
Обнулить все log файлы в папке: перейдите в требуемую папку командой cd
cd /var/log
cd /var/log/audit
cd /var/log/exim
cd /var/log/ConsoleKit
cd /var/log/httpd
cd /var/log/nginx
cd /var/log/ntpstats
cd /var/log/pmta
cd /var/log/qemu-ga
cd /var/log/roundcubemail
cd /var/log/sa
cd /usr/local/vesta/log
выполните в ней примерно следующую команду:
find -maxdepth 1 -type f -name '*' -exec dd if=/dev/null of={} 2>/dev/null \;
Архивы *.gz в лог папках — можно смело удалят.
Для регулярного обнуления логов Вы можете создать задание Cron. Перед обнулением файла Вы можете архивировать его текущее содержимое, например, командой
gzip -v9f $log_file > $log_file.gz
Источник
Ещё информация
Похожие статьи:
Комментарии: