CentOS防火墙开启失败怎么解决

CentOS防火墙开启失败怎么解决

centos防火墙开启失败怎么解决

突然之间发现centos 7 的防火墙无法启动,且firewall-cmd命令运行报错,防火墙启动报错如下:

[root@localhost firewalld]# systemctl start firewalld.service Job for firewalld.service failed because the control process exited with error code. See "systemctl status firewalld.service" and "journalctl -xe" for details. [root@localhost firewalld]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon    Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)    Active: failed (Result: exit-code) since 三 2020-01-08 10:43:48 CST; 10s ago      Docs: man:firewalld(1)   Process: 29630 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=127)  Main PID: 29630 (code=exited, status=127)

firewall-cmd命令运行报错如下:(推荐学习:Linux视频教程

[root@localhost yangl]# firewall-cmd  Traceback (most recent call last):   File "/usr/bin/firewall-cmd", line 24, in <module>     from gi.repository import GObject ImportError: No module named gi.repository</module>

究其原因是由于使用了自定义安装的python,并将自己安装的python作为默认python导致(此外,将系统默认的python升级为python3也可能会出现类似问题),因此只需将firewalld和firewall-cmd第一行调用的python改为系统的python即可解决。

我的python链接方式如下:

[root@localhost yangl]# cd /usr/bin/ [root@localhost bin]# ll python* lrwxrwxrwx. 1 root root   16 9月  28 2018 python -&gt; /usr/bin/python2 lrwxrwxrwx. 1 root root   39 9月  28 2018 python2 -&gt; /share/soft/python-2.7.15/bin/python2.7 -rwxr-xr-x. 1 root root 7216 7月  13 2018 python2.7      #系统的python lrwxrwxrwx. 1 root root    9 9月  28 2018 python2_old -&gt; python2.7 lrwxrwxrwx. 1 root root   36 3月   7 2018 python3 -&gt; /share/soft/python-3.6.4/bin/python3 lrwxrwxrwx. 1 root root    7 9月  28 2018 python_old -&gt; python2

因此,只需vi打开/usr/sbin/firewalld 和/usr/bin/firewall-cmd,将其中的第一行由#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es 即可!

本篇文章来自PHP中文网,Linux视频教程栏目,更多相关教程请关注本栏目!

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享