Windows 10 上的 WSL/Bash:创建 UNIX 用户失败,返回错误代码 10

Windows 10 上的 WSL/Bash:创建 UNIX 用户失败,返回错误代码 10

当我尝试在 Windows 10 上的 Ubuntu 上的 Bash 中创建用户帐户时收到:Creating UNIX user failed, returned error code 10

当进入 bash 时我收到消息groups: cannot find name for group ID 0

因此我只能使用默认的 root 用户。我尝试重新安装,但没有成功。


我已尝试以下操作(在具有管理员权限的 cmd 提示符下):

lxrun /uninstall /full
lxrun /install /y    
lxrun /setdefaultuser MyUsername

当我尝试添加用户时,我得到:

groupadd: failure while writing changes to /etc/group
adduser: `/usr/sbin/groupadd -g 1000 MyUsername' returned error code 10. Exiting.
Creating UNIX user failed, this can be done later by running lxrun.exe /setdefaultuser

bash我还尝试按照@CodeIt 的建议从 bash 内部添加用户(使用 Powershell 中的命令输入),但没有成功。

答案1

我遇到了类似的问题。根本原因是我为用户配置文件创建了一个连接点,因此应用程序将从 Windows 安装,但无论系统如何在 WSL 中传递这些字符串,它都不会解释连接点。

lxss 文件系统是否位于其实际位置(例如 C:\users\USERNAME\AppData\Local\lxss 实际上在那里并且没有连接到不同的驱动器或路径?

造成这种情况的常见原因是另行定义的用户配置文件路径或使用 mklink.exe 建立的硬链接/连接。)

答案2

几个月后,我回到这台电脑并通过更新 Windows 10(从版本 1703 到 1803)并通过 Microsoft Store 重新安装解决了这个问题。

以下是微软的一段引文WSL 更新和重新安装指南

虽然您可以在早期版本的 Windows 10 上使用 WSL [Windows 10 Fall Creators Update(版本 1709)之前],但这个测试版“旧版发行版”现在已被视为过时。我们强烈建议您运行最新版本的 Windows 10。

如果您之前安装了 WSL,尤其是版本 1709 之前的版本,那么通过 Microsoft Store 进行简单的卸载并重新安装可能会对您有所帮助。对于那些在当前版本(截至目前为 1803)上遇到此问题的人,我无法为您解答。


完全卸载旧版 WSL 并重新安装

笔记:在启用 WSL 功能或通过商店安装 WSL 时,最好关闭可能干扰 WSL 的程序(@Johnno 建议安克诺斯 (Acronis) 真实影像这是我在之前的尝试中运行过的)。

  1. 使用 Powershell 卸载旧版 WSL:

    lxrun /uninstall /full
    

    确保没有剩余文件:

    rm -Recurse $env:localappdata/lxss/
    
  2. 通过“打开或关闭 Windows 功能”或使用 Powershell 禁用 WSL:

    Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    

    重启。

  3. 更新 Windows 10

  4. 通过“打开或关闭 Windows 功能”或使用 Powershell 再次启用 WSL:

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    

    重启。

  5. 通过 Microsoft Store 下载 WSL。搜索“Ubuntu”,单击安装。

  6. 安装后,首先重新启动。不要启动 WSL(例如不是单击商店中的“启动”或从命令行调用 WSL)。

  7. 重启后,打开 Powershell 并输入ubuntu。设置您的发行版(指南在这里)。

答案3

请参阅 github 上有关此问题的issue https://github.com/Microsoft/WSL/issues/1704

你可能安装了其他与 WSL 不兼容的东西,比如 Acronis True Image

相关内容