Как добавить пользовательские файлы конфигурации logrotate в ядро ​​Ubuntu?

Да.

Для тех, у кого есть несколько баз данных, можно сказать, что 50-100, введя его один за другим, будет больно.

Вам придется создать bash / файл оболочки, то есть файл с расширением «.sh», после которого вы сделаете его выполнимым, изменив его mod

chmod 777 <file_name>.sh

, затем введите свой код выше с помощью этих нескольких изменений:

то, что мы делаем здесь, - это запрос mysql для списка баз данных и помещает вывод в цикл для каждого поворота

database=`mysql --user=<enter username> --password=<enter password> -e "SHOW DATABASES"`
for db in $database; do
    echo "$db"
    mysqldump --user="<enter username>" --password="<enter password>" --databases "$db" > <path_to_store_your_database>/"$db".sql
    gzip "$db"
done

Наконец, вы добавите файл в crontab и расставьте резервную копию время. Вы также можете запустить команду вручную, набрав:

bash <name of the file>.sh

или

sh <name of the file>.sh
0
задан 11 June 2017 в 07:51

4 ответа

Это лучший ответ, который я придумал, предполагая среду докеров. Я был бы признателен, если бы у кого-то был лучший ответ:

Оказывается, для Ubuntu Core /etc/logrotate.d не доступен для записи. Похоже, что сторонние скрипты не поддерживаются для logrotate. Такая же проблема с cron.

Я использую докер, поэтому я создал контейнер докеров, который периодически вызывает logrotate в моем скрипте. Немного взлома, но с «перезагрузкой: всегда» кажется надежным.

0
ответ дан 18 July 2018 в 11:51

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

Вот моя система по умолчанию:

$ ls /etc/logrotate.d/ apache2 consolekit jockey-common rsyslog unattended-upgrades apport cups pm-utils speech-dispatcher upstart apt dpkg ppp ufw

Удачи!

0
ответ дан 18 July 2018 в 11:51

Это лучший ответ, который я придумал, предполагая среду докеров. Я был бы признателен, если бы у кого-то был лучший ответ:

Оказывается, для Ubuntu Core /etc/logrotate.d не доступен для записи. Похоже, что сторонние скрипты не поддерживаются для logrotate. Такая же проблема с cron.

Я использую докер, поэтому я создал контейнер докеров, который периодически вызывает logrotate в моем скрипте. Немного взлома, но с «перезагрузкой: всегда» кажется надежным.

0
ответ дан 24 July 2018 в 19:52

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

Вот моя система по умолчанию:

$ ls /etc/logrotate.d/ apache2 consolekit jockey-common rsyslog unattended-upgrades apport cups pm-utils speech-dispatcher upstart apt dpkg ppp ufw

Удачи!

0
ответ дан 24 July 2018 в 19:52
  • 1
    Привет, Грейсон, спасибо за продолжение. Оказывается для Ubuntu Core, что /etc/logrotate.d не доступен для записи. Похоже, что сторонние скрипты не поддерживаются. Такая же проблема с cron. Я использую докер, поэтому я создал контейнер докеров, который периодически вызывает logrotate в моем скрипте. Немного взлома, но с перезапуском: всегда кажется надежным. – Dave Koberstein 11 July 2017 в 03:08

Другие вопросы по тегам:

Похожие вопросы: