项目场景:

项目场景:RedHat7.6 Linux

问题描述:

场景:设置防火墙开启禁止重启后防火墙竟然还是开启状态,打算重新手动stop时提示如下
# systemctl stop firewalld    
Authorization not available. Check if polkit service is running or see debug message for more information.

原因分析:

检查polkitd服务是否正常开启

# systemctl status polkitd   

polkitd服务启动失败
根据提示查看启动失败的原因:

PolicyKit failing to start with error: polkit.service: main process exited, code=exited, status=1/FAILURE  

解决方案:

policyKit用户/组不存在了,重新添加用户/组并重置policyKit包所有文件的用户/组权限和所有权,添加完后重启电脑
# groupadd -r polkitd
# useradd -r -g polkitd -d / -s /sbin/nologin -c "User for polkitd" polkitd
# rpm -Va polkit\* && echo -e "\e[1;32mpolkit* rpm verification passed\e[0m" || { echo -e "\e[1;33mResetting polkit* rpm user/group ownership & perms\e[0m"; rpm --setugids polkit polkit-pkla-compat; rpm --setperms polkit polkit-pkla-compat; }
polkit* rpm verification passed
# reboot

遗留问题:

这个问题是由于执行防火墙开机禁止导致,至于为什么会导致policyKit用户/组不存在仍是个问题
# systemctl disable firewalld 

更多推荐

RedHat7.6 Linux执行服务停止时提示Authorization not available. Check if polkit service is