我使用WSL在windows上运行Ubuntu终端,每次我启动该终端时,它都会以root用户的身份登录我。我已经创建了一个新用户,并赋予他们根权限,这样我就可以更容易地编写代码。如何更改注册的默认用户?
这就是我在发射时所看到的:
在运行su shayc
之后,我可以访问我的用户,但是如何避免每次都这样做呢?
**UPDATE:**我尝试在/etc/wsl.conf中设置默认用户
注意:我也不能运行WSL命令。
发布于 2021-11-21 00:28:42
这里有几样东西要看。首先,当您在WSL上安装后第一次运行Ubuntu时,它应该经过一个“配置”步骤,它要求您创建用户名和密码。该用户将是运行时应该使用的“默认用户”。如果实例以"root“作为默认用户运行,那么这可能表明配置中出现了错误(从注释中看,这似乎就是所发生的情况)。
老实说,这没什么大不了的。在创建一个新用户时,您做了正确的事情。只是这不应该是必要的
至于将新用户设置为默认值,至少有两条可能的路径:
wsl.conf
当前的微软推荐方法是使用以下设置在实例中创建/etc/wsl.conf
:
[user]
default=username
当然,将用户名更改为默认用户名。
退出实例,发出一个wsl --terminate Ubuntu
(假设您的实例名为"Ubuntu",您可以使用wsl -l -v
确认它)或wsl --shutdown
(从PowerShell或CMD),然后重新启动。
请注意,这是一个破坏性的操作。如果在实例中没有任何无法轻松恢复的工作,那么可以轻松地将实例重置回初始状态。这是因为WSL为任何发行版保留原始rootfs,即C:\ProgramData
下的隐藏目录。
在执行“以防万一”之前,您可以随时备份旧实例。这些命令(同样,全部来自PowerShell或CMD)应该如下所示:
wsl --export Ubuntu "2021-11-21 Ubuntu WSL Backup.tar"
然后(这是破坏性的部分):
wsl --unregister Ubuntu
然后用ubuntu.exe
重新运行" app“(或者,如果您从商店安装了一个特定版本的应用程序,它可能是ubuntu2004.exe
)。
此时,配置步骤将重新运行,询问默认用户名和密码。
发布于 2022-07-01 20:23:07
只需打开命令提示符并运行:
ubuntu2204 config --default-user <username>
..。可以用特定的WSL发行版替换ubuntu2204
,并且用户名是您想成为默认配置文件的配置文件。
https://askubuntu.com/questions/1376711
复制相似问题