Условное выполнение блока systemd на основе сети, к которой я подключен (Проблема с VPN)

Судя по тому, что я вижу, logrotate запутался. Во-первых, вы должны быть более строгими с вашим шаблоном имени. Вместо вращения /var/log/remots/*/*следует вращать:

/var/log/remots/*/*.log {
    rotate 178
    daily
    maxage 178
    compress
}

При изменении конфигурации не забудьте проверить /var/lib/logrotate/status. Удалите все записи для файлов .*gz.


Менее распространено смешивание logrotate с программами, меняющими собственные журналы. Вы настроили rsyslog для записи в устаревшие файлы журналов. Чаще используется статическое имя файла и позволяет logrotate добавлять даты за вас. Я заметил, что у других были проблемы с тем же типом настройки :https://stackoverflow.com/questions/8962477/logrotate-files-with-date-in-the-file-name

.

Более простой способ настроить это — записать журнал «remots» (rsyslog )в статическое место, например:

$template GuardaRemots, "/var/log/remots/%HOSTNAME%.log"
:source, !isequal, "localhost" -? GuardaRemots

Затем поверните:

/var/log/remots/*.log {
    rotate 178
    daily
    maxage 178
    compress
}

Logrotate будет автоматически добавлять дату при ротации.

0
22.09.2020, 10:44
1 ответ

Я могу кое-что предложить, пожалуйста, проверьте, может ли это быть полезным:

Что вы можете сделать, так это выбрать шлюз по умолчанию и установить переменную среды, а затем использовать для этого ConditionEnvironment.

Ниже приведены команды, которые могут получить IP-адрес шлюза и установить переменную среды.:

gw=$(ip r | grep default | grep -oE "([[:digit:]]+\.)+{3}[[:digit:]]")

if [ "$gw" == "192.168.X.X" ]; then export officeNetwork=1; else export officeNetwork=0; fi

Здесь замените 192.168.X.X на IP-адрес шлюза вашего офиса по умолчанию

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

1
18.03.2021, 23:03

Теги

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