如何在 Windows Subsystem for Linux Bash 终端上默认登录“root”帐户

如何在 Windows Subsystem for Linux Bash 终端上默认登录“root”帐户

Windows 10 周年更新刚刚发布,我立即安装了 Windows Subsystem for Linux 以查看其运行情况。到目前为止,我只发现了一个主要缺点:没有明显的方法可以使用 root 帐户作为默认帐户。

我知道这违背了许多最佳实践,但我个人不喜欢记住sudo在大多数命令前键入。当我打开文本文件进行编辑时,这会特别烦人,nano因为我没有使用sudo.

有什么办法可以让终端默认以 root 身份启动吗?

答案1

在不同的Windows版本中,设置默认Linux用户的命令是不同的。

对于 WSL 的 Fall Creators Update 之前的版本,在提升的 Windows 命令提示符中运行以下命令:

lxrun /setdefaultuser root

对于安装秋季创意者更新,命令是:

<distro> config --default-user root

<distro>在上面的命令中用发行版的 exe 名称替换。因此,如果您运行的是 Ubuntu,则命令将是:

ubuntu config --default-user root

对于 openSUSE...

opensuse-42 config --default-user root

对于 SUSE Linux Enterprise Server,命令是...

sles-12 config --default-user root

再次强调,所有这些命令都是从提升的 Windows 命令提示符执行的。

注意:
以上示例针对的是root用户。您可以指定任何其他现有用户名来代替root

答案2

在具有提升权限的命令提示符中运行命令lxrun /setdefaultuser root

运行是在 LX 子系统上执行管理操作的工具。

答案3

使用

ubuntu1604 config --default-user root & ubuntu1604.exe

我尝试了上述解决方案,但不知何故,我总是以用户登录而不是 root 登录

答案4

如果仍有需要,请尝试我的方法。

我的电脑

  • Windows 10 版本:21H1(19043)。
  • 子系统:Ubuntu 18.04 LTS。

使用快捷键打开注册表编辑器:windows + r。

输入:regedit 并回车。

转到此路径:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss

并找到您正在使用的“DistributionName”。 (我的是 Ubuntu-18.04)修改此名称“DefaultUid”设置值等于 0,然后单击“确定”按钮保存。 然后注销并登录以重置注册表。

打开你的 bash shell 并享受它。

0 是 root 用户的 id,您可以通过运行此命令来检查 cat /etc/passwd; 并找到 root 用户。

相关内容