安装完python3.6.4 后,服务器防火墙开通指定端口,报了异常 :
[root@izuf6hdalw8vt65rax1sy4z ~]# firewall-cmd --permanent --zone=public --add-port=8000/tcp
Traceback (most recent call last):
File "/usr/bin/firewall-cmd", line 24, in
from gi.repository import GObject
ModuleNotFoundError: No module named 'gi'
网上搜了下,说是firewall命令只支持python2.x版本,但是我的python现在默认被指向了3.x,所以修改下防火墙关于python的配置:
找到/usr/bin/firewall-cmd 文件,编辑python配置(可以用工具直接修改文件或者命令vim方式编辑并保存),重新指向到当前主机的python2版本上
改为python2,保存(注意,这里不要去掉#号,不要手残删了。。)
找到/usr/sbin/firewalld 文件,编辑python配置,重新指向到当前主机的python2版本上
改为python2,保存
修改好防火墙的python配置指向之后,重新设置防火墙端口,并重启,成功。
firewall-cmd --permanent --zone=public --add-port=8000/tcp
firewall-cmd --reload
参考 https://www.jianshu.com/p/c8bf4db0cf74