Как проверить, работает ли ufw программно

В большинстве сервисов (например, privoxy) есть чистый способ получить статус службы: ps -C [servicename] Затем, проверив код выхода ($?): 0: служба была запущена 1: не работает. Это не так в случае ufw (не признается как услуга?) sudo service ufw status всегда выходит с 0, был ли ufw запущен или нет. Любые предложения по программному получению ufw через код выхода команды, используемой для проверки статуса ufw?

1
задан 8 October 2014 в 12:13

1 ответ

Для проверки состояния UFW используйте

sudo ufw status verbose

Выход аналогичен

my@machine:~$ sudo ufw status verbose
[sudo] password for youruser:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
1
ответ дан 24 May 2018 в 03:03
  • 1
    Да, но я хочу получить результат (запуск / не работает) через код выхода, т. Е. Путем передачи $? в командной строке. В предлагаемом решении код выхода равен 0 в обоих случаях. – pkaramol 7 October 2014 в 21:16
  • 2
    Пойдем, сделайте некоторые исследования самостоятельно: добавьте grep active и проверьте код выхода. Если grep не находит поисковое слово, код выхода равен 1. – Jan 7 October 2014 в 21:39

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

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