在 WSL 上的 Ubuntu 中切换到 root 后如何返回默认用户?

在 WSL 上的 Ubuntu 中切换到 root 后如何返回默认用户?

我在 Windows 11 上使用 WSL 和 Ubuntu 20.04 LTS(Focal Fossa)。

在安装过程中,我想我输入了命令ubuntu --install(在 VSCode 中),但在安装过程中遇到了一个问题。终端打开,要求输入 Linux 用户和密码,但随后它关闭了,因为其他应用程序启动了。

由于我从来没有机会设置我的默认用户密码,所以我打开了 CMD,如果我没记错的话,使用了命令ubuntu config --default-user root。然后我返回到 Ubuntu shell 并输入命令来重置我的 Linux 密码。

此时我甚至还没有使用 VSCode。然而,当我打开 VSCode 时,它​​似乎仍然在 root 用户的帐户中。

我曾经mkdir创建过一个文件夹但没有意识到我仍处于根目录中,如下所示:

root@Lokrheim:~/folder# 

当我输入 时exit,shell 就会关闭,就好像它正在退出应用程序而不是 root 用户的登录一样。无论我做什么,我的 VSCode 仍然保持为 root 用户。

如何在 WSL 上的 Ubuntu 中访问我的非 root 用户?

答案1

重新启动时出现问题,因为 shell 已打开,要求输入 Linux 用户和密码,但由于其他一些应用程序启动或发生其他事情,shell 被关闭

听起来你的安装已经中止,这可能让你没有根本没有默认用户。在这种情况下,WSL 默认使用 root 用户(无论发行版如何)。

选项 1:在 WSL 上重新安装 Ubuntu

如果你最近刚刚安装并没有任何文件如果你不介意在 Ubuntu 中丢失它,那么最好的解决方案就是重新安装该发行版,以便它正确完成。

为此,打开常规(非管理员)PowerShell 终端,然后...

wsl --unregister Ubuntu
ubuntu.exe

(附注:如果这是 Ubuntu 22.04,我建议使用ubuntu.exe install --gui=noneubuntu2204.exe install --gui=none按照这个答案

这将很快完成安装(因为它实际上不必重新下载 Store 包)并让您回到要求输入默认用户名和密码的点。

选项 2:手动重新创建用户

如果你有文件并且需要恢复而无需重新安装,请参阅这个答案并查找“无需重新安装即可创建新的“默认”WSL 用户”。还可以使用下一步(设置默认 WSL 用户)在创建默认值后重置默认值。

相关内容