WSL启动NixOS后卡在Starting systemd阶段的解决方法
WSL启动NixOS卡在"Starting systemd..."的解决方法
临时跳过systemd启动排查
启动WSL时添加参数禁用systemd,直接进入shell:wsl -d NixOS --systemd=false进入系统后可进一步排查systemd启动失败的具体原因。
永久禁用systemd(若无需依赖)
修改NixOS配置文件/etc/nixos/configuration.nix,添加或调整:systemd.enable = false;执行以下命令应用配置:
sudo nixos-rebuild switch确保WSL版本兼容性
确认当前WSL版本为2,执行:wsl --list --verbose若为WSL1,执行升级命令:
wsl --set-version NixOS 2同时更新WSL组件到最新版本:
wsl --update重置WSL实例(备份数据后操作)
先关闭所有WSL实例:wsl --shutdown若仍无法启动,备份重要数据后执行重置:
wsl --unregister NixOS之后重新安装NixOS的WSL镜像。
排查systemd服务冲突
检查/etc/nixos/configuration.nix中自定义的systemd服务,尤其是依赖网络、外部设备的服务,暂时注释掉可疑配置后执行sudo nixos-rebuild switch,再测试启动情况。
内容的提问来源于stack exchange,提问作者Pierre-olivier Gendraud
相关产品推荐
相关产品推荐

