Подробный вывод для команды ip xfrm?

У меня есть сценарий up для strongswan, который добавляет такие политики: ip xfrm policy add dir in src $PLUTO_PEER_CLIENT dst 0.0.0.0/0 proto any varl src $PLUTO_PEER dst $PLUTO_ME proto esp mode tunnel reqid $PLUTO_REQID level required priority 1500 mark 0xfffe

Я хочу записать вывод этой команды в файл журнала, но, похоже, нет вывода или подробного переключения?

это ничего мне не даетip xfrm policy add dir in src $PLUTO_PEER_CLIENT dst 0.0.0.0/0 proto any varl src $PLUTO_PEER dst $PLUTO_ME proto esp mode tunnel reqid $PLUTO_REQID level required priority 1500 mark 0xfffe >> /var/log/mylog.log

1 ответ

iproute2 не генерирует никаких выходных данных для изменения команд (например, add или же del) если что-то не так с аргументами или ядром (например, отказано в разрешении). В этом случае сообщение об ошибке пишется stderr (чтобы зафиксировать, что вам нужно добавить 2>>&1 к вашей команде, или напрямую перенаправить stderr в файл журнала, даже не меняя stdout).

Была ли команда успешной, вы можете легко проверить через состояние выхода ($? или через || <whatever should happen if the command fails> после команды), поскольку это задокументировано, чтобы быть 0 в случае успеха и 1 или 2 в случае неудачи (см. man ip для деталей).

А чтобы зарегистрировать / просмотреть выполненную команду, вы, вероятно, можете просто положиться на оболочку (см., Например, этот вопрос на stackoverflow.com) или, например, обернуть команду, чтобы она сначала отображалась в журнале, а затем выполнялась.

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