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 用户。