如何修复卸载zsh后出现的WSL错误[process exited with code 1 (0x00000001)]
修复WSL卸载zsh后启动失败的问题
卸载zsh后终端启动出现以下错误:
<3>WSL (412) ERROR: CreateProcessEntryCommon:505: execvpe /usr/bin/zsh failed 2
<3>WSL (412) ERROR: CreateProcessEntryCommon:508: Create process not expected to return
[process exited with code 1 (0x00000001)]
问题根源是WSL默认登录shell仍指向已删除的zsh,只需重置为bash即可解决:
- 打开Windows命令提示符或PowerShell,执行命令进入WSL:
wsl -e /bin/bash - 进入后执行以下命令修改默认shell为bash:
sudo chsh -s /bin/bash $USER
输入用户密码确认执行 - 验证修改结果:
echo $SHELL
输出应为/bin/bash - 退出WSL,重新启动终端即可正常使用
如果chsh命令不生效,可直接修改系统用户配置文件:
- 执行命令编辑
/etc/passwd:sudo nano /etc/passwd - 找到你的用户条目(格式为
用户名:x:UID:GID:注释:/home/用户名:/usr/bin/zsh),将最后一个字段的/usr/bin/zsh替换为/bin/bash - 按
Ctrl+O保存,回车确认,再按Ctrl+X退出编辑器 - 重启WSL终端即可恢复正常
内容的提问来源于stack exchange,提问作者Michael Kamau
相关产品推荐
相关产品推荐

