очистить систему в Linux - PullRequest
0 голосов
/ 27 марта 2012

Я использую Ubuntu. Я хочу автоматически очищать файлы журналов в моей системе, которые хранятся в / var / log каждые 3 месяца. Как мне написать скрипт для этого

Спасибо

Ответы [ 2 ]

4 голосов
/ 27 марта 2012

Стандартная утилита logrotate(8), вероятно, является лучшей отправной точкой.

Файл конфигурации /etc/logrotate.conf определяет некоторые значения по умолчанию, включая ежедневную, еженедельную, ежемесячную ротацию, количество сохраняемых вращений, разрешения на использованиепри создании новых файлов журнала (wtmp и btmp в моей системе; возможно, также utmp в других системах).Он также может определять каталог для чтения файлов конфигурации - что значительно упрощает дистрибутивам пакетирование файлов ротации с пакетами.

Возможно, вы можете сделать то, что хотите, просто изменив rotate 4 на rotate 2сократить количество файлов в два раза.Отредактируйте файлы в /etc/logrotate.d/, если любой из них задает свои собственные ограничения rotate.

1 голос
/ 27 марта 2012

Вам не нужно самостоятельно писать скрипт bash, чтобы сделать это.Все среды Linux поставляются с инструментом под названием Cron, который позволяет вам выполнять команды расписания, сценарии и т. Д.

Это хорошо объяснено здесь на этой странице http://www.adminschoice.com/crontab-quick-reference

Удаление всех файлов журнала каждыйНапример, 3 месяца можно было бы открыть, открыв файл Cron пользователя с помощью:

sudo crontab -e

, а затем добавив строку

* * * 1,4,7,10 * rm /var/log/*.{1,2,3,4}

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...