在Windows的WSL环境中使用
systemctl 命令时遇到 Failed to get D-Bus connection: Operation not permitted这个报错。这主要是因为WSL默认不支持完整的systemd服务。不过,我们可以通过一个Python脚本来替代原有的命令,从而解决这个问题。以下是具体的操作步骤:
1. 备份原有文件
在修改系统文件之前,建议先对原有的
在修改系统文件之前,建议先对原有的
systemctl 进行备份,以便需要时恢复。可以执行以下命令:mv /usr/bin/systemctl /usr/bin/systemctl.old
2. 下载替代脚本
前往GitHub项目
前往GitHub项目
https://github.com/gdraheim/docker-systemctl-replacement/,找到并下载 files/docker/systemctl3.py 这个文件。3. 替换文件
将下载好的
将下载好的
systemctl3.py 文件复制到系统的命令目录下,并重命名为 systemctl:cp systemctl3.py /usr/bin/systemctl
4. 赋予执行权限
为了让系统能够正常运行这个脚本,需要为其添加可执行权限:
为了让系统能够正常运行这个脚本,需要为其添加可执行权限:
chmod +x /usr/bin/systemctl
5. 验证是否生效
最后,可以通过查看版本信息来确认是否配置成功。执行以下命令:
最后,可以通过查看版本信息来确认是否配置成功。执行以下命令:
systemctl --version
如果终端输出了包含
systemd 219 以及 via systemctl.py 1.7.1076 等相关信息,说明替换成功,后续就可以正常使用 systemctl 原创类文章未经允许请勿转载:39点博客 » 解决windows安装wsl后执行systemctl相关命令出现Failed to get D-Bus connection: Operation not permitted
39点博客



