centos7.4failed to start firewalld -dynamic firewall daemon

centos7.4提示failed to start firewalld -dynamic firewall daemon这个错误,根据网上的方法,修改配置文件后还是启动报这个错误

如果您在修改配置文件后仍然遇到"failed to start firewalld - dynamic firewall daemon"错误,以下是一些可能的解决方法:

  1. 确保您正在使用root用户或具有sudo权限的用户来修改配置文件和启动firewalld服务。

  2. 检查firewalld配置文件中是否存在错误。配置文件位于/etc/firewalld/firewalld.conf。您可以尝试使用以下命令检查配置文件的语法错误:

    sudo firewalld --nofork --nopidcheck --debug
    

    如果配置文件中存在语法错误,您将看到相应的错误消息。请修复这些错误并重新尝试启动firewalld服务。

  3. 检查firewalld服务是否已正确安装。您可以使用以下命令检查firewalld软件包是否已安装:

    rpm -qa | grep firewalld
    

    如果未安装firewalld软件包,请使用以下命令安装它:

    sudo yum install firewalld
    
  4. 检查firewalld服务是否已启用。使用以下命令检查firewalld服务的状态:

    sudo systemctl status firewalld
    

    如果firewalld服务未启用,请使用以下命令启用它:

    sudo systemctl enable firewalld
    

    然后,使用以下命令启动firewalld服务:

    sudo systemctl start firewalld
    
  5. 如果您使用的是虚拟化环境(如VMware或VirtualBox),请确保网络适配器设置正确,并且网络连接正常。

如果以上方法仍然无法解决问题,请提供更多详细信息,例如任何错误消息或其他相关配置文件的更改,以便我们能够更好地帮助您解决问题。

查看日志来看看来定位更详细的问题啦,
去查 /var/log/messages里的日志,看看具体报错。

  • 请看👉 :Failed to start firewalld - dynamic firewall daemon
  • 除此之外, 这篇博客: linux笔记{防火墙配置、用户 主机名操作、文件压缩及解压命令}中的 Failed to start firewalld - dynamic firewall daemon 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 启动防火墙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