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