问题环境
Windows11 WSL2 OpenSUSE Tumbleweed
问题描述
在执行 sudo zypper remove fish
之后,退出了终端界面,再次进入时终端界面报错如下。
<3>init: (29715) ERROR: CreateProcessEntryCommon:528: execvpe /usr/bin/fish failed 2
<3>init: (29715) ERROR: CreateProcessEntryCommon:538: Create process not expected to return
[已退出进程,代码为 1 (0x00000001)]
</3></3>
解决思路
遇到这个问题的时候,想到了两个方法:
- 修改init文件
- 尝试使用其他shell进入系统
第一个方法比较复杂,还需要找到init进行修改,第二个方法比较简洁,所以我们用第二个方法尝试解决这个问题。
解决方法
打开Powershell,输入
wsl --list
不出意外会得到如下图所示的输出
图中的
openSUSE-Tumbleweed
就是WSL的名称。可以复制这个名称,然后在powershell里运行
cd \\wsl.localhost\openSUSE-Tumbleweed
bash
执行完bash后,不出意外会跳转到WSL2的bash界面,到了这里就可以使用chsh了,在bash中执行
sudo chsh -s /bin/bash {username}
{username}
替换成你的登录用户,之后再次登录WSL,问题解决。
Original: https://www.cnblogs.com/puhanzhou/p/16196429.html
Author: PuhanZhou
Title: WSL2卸载fish后无法登录问题的简单解决
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/607131/
转载文章受原作者版权保护。转载请注明原作者出处!