выскочка, пишущая в системный журнал простым способом

Кажется, что так и должно быть:

Из журнала изменений selinux-policy-3.12.1-139:

- Разрешить ввод systemd_cronjob_t через, bin_t

Do у вас есть какие-либо ошибки в /var/log/audit/audit.log , относящиеся к mariadb ? Быстрая и простая проверка состоит в том, чтобы setenforce = 0 и запустить задания cron . Если им лучше, то это был SELinux, вызвавший проблему.

-121--230623-

Если в системе имеется systemd, для этого можно использовать события таймеров. Просто определите новую службу , которая должна содержать команду/задачу, которую необходимо выполнить, а затем создайте событие таймера с параметром OnUnitActiveSec :

[Unit]
Description=daily + 1 hour task

[Timer]
OnUnitActiveSec=25h # run 25 hours after service was last started
AccuracySec=10min

[Install]
WantedBy=timers.target

Используйте то же имя для файлов, за исключением того, что вместо .service используется .timer .

Синтез:

  1. Создайте файл с именем job.service в каталоге /etc/systemd/system/.
  2. Заполните его необходимой информацией. Проверить конфигурацию можно с помощью systemctl status job.service .
  3. Создайте файл с именем job.timer в /etc/systemd/system/.
  4. Заполните его необходимой информацией:

      [Единица измерения]
    Описание = ежедневная + 1 часовая задача
    
    [Таймер]
    OnUnitActiveSec = 25h # запуск через 25 часов после последнего запуска службы
    Рс = 10мин
    
    [Установить]
    PaydBy = timers.target
    
  5. Проверьте таймер, используя systemctl list-timers
  6. Done.

-121--26842-

Использование массивов или петель в оболочках часто является признаком плохой практики кодирования. Оболочка - это инструмент для выполнения других команд. awk - типичная команда для выполнения сложных задач с полями в текстовых записях. Вы хотите вызвать awk один раз для вашей задачи, а не цикл, где вы собираетесь выполнить сотни команд.

Если требуется напечатать индекс и фамилию поля для строк, начинающихся с ^ LogFormat , это:

awk '/^LogFormat/{print n++, $NF}' httpd.conf

No need for cat (который предназначен для конкатенации), или grep ( awk является супернабором grep ), либо массив оболочки или цикл оболочки.

1
11.06.2014, 15:03
1 ответ

Я использовал логгер вместо /dev/kmsg, который также записывает в /var/log/syslog

Surround your upstart pre, post and start scripts like this :

pre-start script
{
  echo starting program
  # run my program here
  npm install
  node app.js
} 2>&1 | logger -t app
end script

Вы должны начать видеть, как журналы вашего приложения появляются в syslog

tail -f /var/log/syslog
1
27.01.2020, 23:52

Теги

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