You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Windows 10春季创意者更新中Ubuntu的runlevel错误?

解决WSL Ubuntu 18.04中apt-get dist-upgrade的ebtables更新错误

我之前在WSL环境里也碰到过一模一样的问题,本质是WSL没有完整的Linux init系统,导致ebtables的安装/移除脚本执行失败。既然你不关心这个包,有几个简单的办法能彻底解决这个烦人的错误:

方法1:直接卸载ebtables(推荐)

既然你用不到这个包,直接删掉就一了百了,之后更新再也不会碰到这个问题:

sudo apt-get purge ebtables

这个命令会彻底移除ebtables及其配置文件,后续的dist-upgrade就不会再处理这个包了。

方法2:禁用ebtables服务(如果想保留包)

如果你出于某些原因不想卸载,那可以禁用ebtables的启动脚本,避免更新时触发错误:

sudo update-rc.d ebtables disable

这个命令会让系统不再尝试启动ebtables服务,更新时的预移除脚本就不会因为调用invoke-rc.d stop而失败了。

方法3:临时跳过配置错误(单次解决)

如果只是想临时完成这次更新,不想修改系统,可以在执行dist-upgrade时加上dpkg的强制选项:

sudo apt-get dist-upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"

不过这个方法只是临时生效,下次更新可能还会碰到同样的问题,所以还是前两种方法更彻底。

错误原因说明

WSL(Windows Subsystem for Linux)不是完整的Linux系统,它没有传统Linux发行版的init系统(比如systemd),所以invoke-rc.d工具无法识别当前的运行级别。ebtables的预移除脚本尝试调用invoke-rc.d stop ebtables来停止服务,但在WSL环境下这个操作会失败,最终导致dpkg抛出错误。

内容的提问来源于stack exchange,提问作者Matt Hargett

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:51:24