一台 CentOS Linux release 7.6.1810 服务器,使用 firewall-cmd 查看防火墙状态时,出现了 ModuleNotFoundError 的错误:No module named ‘gi’,解决方法。
在 CentOS 7 上执行 firewall-cmd --state
时,返回如下错误信息:
Traceback (most recent call last): File "/usr/bin/firewall-cmd", line 24, infrom gi.repository import GObject ModuleNotFoundError: No module named 'gi'
百度了一下,出现这个问题的原因是系统的 Python 版本为Python3,而 CentOS 7 系统默认自带的是 Python2.7,所以现在 firewall-cmd 运行不了。
修改 /usr/bin/firewall-cmd
文件,在 python 后面添加数字 2.7 即可。
之后再执行 firewall-cmd --state
命令就正常了。