centos7.4提示failed to start firewalld -dynamic firewall daemon这个错误,根据网上的方法,修改配置文件后还是启动报这个错误
如果您在修改配置文件后仍然遇到"failed to start firewalld - dynamic firewall daemon"错误,以下是一些可能的解决方法:
确保您正在使用root用户或具有sudo权限的用户来修改配置文件和启动firewalld服务。
检查firewalld配置文件中是否存在错误。配置文件位于/etc/firewalld/firewalld.conf。您可以尝试使用以下命令检查配置文件的语法错误:
sudo firewalld --nofork --nopidcheck --debug
如果配置文件中存在语法错误,您将看到相应的错误消息。请修复这些错误并重新尝试启动firewalld服务。
检查firewalld服务是否已正确安装。您可以使用以下命令检查firewalld软件包是否已安装:
rpm -qa | grep firewalld
如果未安装firewalld软件包,请使用以下命令安装它:
sudo yum install firewalld
检查firewalld服务是否已启用。使用以下命令检查firewalld服务的状态:
sudo systemctl status firewalld
如果firewalld服务未启用,请使用以下命令启用它:
sudo systemctl enable firewalld
然后,使用以下命令启动firewalld服务:
sudo systemctl start firewalld
如果您使用的是虚拟化环境(如VMware或VirtualBox),请确保网络适配器设置正确,并且网络连接正常。
如果以上方法仍然无法解决问题,请提供更多详细信息,例如任何错误消息或其他相关配置文件的更改,以便我们能够更好地帮助您解决问题。
查看日志来看看来定位更详细的问题啦,
去查 /var/log/messages里的日志,看看具体报错。
启动防火墙firewalld失败的原因很多,记录一下自己遇到的错误和解决方法:
如果运行systemctl start firewalld 报错,可以运行systemcel status firewalld
1、 Process: 18701 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=1/FAILURE)
出现以上错误,大多数是由于系统里面安装的python版本原因。
/usr/sbin/firewalld文件头部的python版本和安装的python版本不一致
解决方法: 查看系统当前安装的python版本号: python --version
例如安装的Python版本是2.7, 查看/usr/sbin/firewalld头部 。
vi /usr/sbin/firewalld
头部内容默认是 “#!/usr/bin/python Es” ,需要修改为: “#!/usr/bin/python/python2.7 Es”
修改完成后,重新启动firewalld