在上一篇文章《Windos11下通过WSL安装centos7系统》 我们已经在Windows系统上安装了CentOS7系统了。当我们想要查看防火墙运行情况,使用命令:systemctl status firewalld.service。发现如下错误:
不仅仅是查看防火墙清清裤。除了基于systemctl外service命令的服务也是无法运行的。比如我们常用的nginx\mysql\Docker等等。在执行的时候,都会出现如上错误。怎么解决呢?
暴力解决方案:直接更换systemctl文件
1:我们先来备份原来的systemctl文件。使用到命令:
mv /usr/bin/systemctl /usr/bin/systemctl.old
2:重新生成文件
方法1:直接执行下面命令
curl https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/master/files/docker/systemctl.py > /usr/bin/systemctl
方法2:先打开https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/master/files/docker/systemctl.py 这个网站,将页面的所有内容都复制,然后在使用VI或者是VIM命令打开systemCtl文件,并将刚才复制的东西粘贴进去。并保存
vim /usr/bin/systemctl
由于这种复制粘贴的方式,py中文字比较多。可能会出现卡顿现象。别着急,耐心等待这。
3:当执行完成上面第二步的命令之后,我们需要将这个文件赋权限,执行以下命令:
chmod +x /usr/bin/systemctl
赋权之后,我们在来执行systemctl status firewalld.service。当执行完这个命令,可能会出现如下错误:
ERROR:systemctl:Unit firewalld.service could not be found.
这是说防火墙文件没找到。也就是说,没有安装防火墙。