Rsyslog умеет обращаться к внешним скриптам через <^> синтаксис в конфиге.
И всё прекрасно работает до тех пор пока вашему скрипту не потребуется передавать какое либо значение в качестве параметра.
Я пробовал экранировать пробел слэшом "\", пробовал кавычки `` , '' , "", скобки (),[].
Вспомнил html и попробовал " ". Но результат один и тот же. Параметр в скрипт не идёт.
Как побороть желание rsyslog'а отрезать всё что идёт после пробела в командах execute shell (^)
nano /etc/rsyslog.conf
...
if $fromhost-ip contains '192.168.0.1' then ?FILENAME;ROUTER01
& ^/etc/rsyslog/syslog.sh 192.168.0.1
rsyslog shell execute экранирование
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2012-08-22 11:40:08
Re: rsyslog shell execute экранирование
Код: Выделить всё
nano /etc/rsyslog.conf
...
template MYVAR, "%fromhost-ip%"
if $fromhost-ip contains '192.168.0.1' then ?FILENAME;ROUTER01
& ^/etc/rsyslog/syslog.sh;MYVAR