参考:How to install multiple instances of Ubuntu in WSL2
如果你的系统是 windows 10 2004或更高版本(Build 19041或以上),可以使用以下命令直接在 WSL 中安装最新版本的 Ubuntu 实例:
wsl --install
这将实现所有必需的步骤,比如:
安装完成,只需要运行 wsl
命令即可打开 WSL2 shell,第一次运行时需要设置用户名和密码。
可以从 Ubuntu WSL镜像 中下载适用于 WSL2 的 Ubuntu 镜像压缩包保存到本地。
使用 Windows Terminal 或者 Powershell 来下载,在下载之前先运行以下命令移除 curl
别名:
Remove-Item alias:curl
接着运行以下命令下载Ubuntu镜像,一定要将整个命令复制到 Windows Terminal 或者 Powershell 中并运行:
curl (("https://cloud-images.ubuntu.com",
"releases/hirsute/release",
"ubuntu-21.04-server-cloudimg-amd64-wsl.rootfs.tar.gz") -join "/") `
--output ubuntu-21.04-wsl-rootfs-tar.gz
如果有警告,直接点击“Paste Anyway”按钮然后敲 Enter 键执行即可,会将 Ubuntu WSL 镜像下载到当前目录。
以下命令即可实现:
wsl --import <Distribution Name> <Installation Folder> <Ubuntu WSL2 Image Tarball path>
改成自己想要的名字,比如ubuntu-2,以后启停会用到
wsl -l -v
查看已安装的发行版。首先将发行版实例(第二个Ubuntu实例)运行起来:
wsl -d <Distribution Name>
注意,上一步最后是使用的 root 用户登录进 Linux 的,接下来一起设置一个普通用户。
在使用 root 用户登录进 WSL2 的第二个 Ubuntu 实例后,先运行以下命令:
NEW_USER=<USERNAME>
其中将
换成你喜欢的用户名。
接着运行以下命令创建新用户账户并设置密码:
useradd -m -G sudo -s /bin/bash "$NEW_USER"
passwd "$NEW_USER"
其实上面的
NEW_USER=
仅仅是定义了一个变量供后面的useradd
和passwd
两条命令使用而已(当然还有下一步的命令用到),完全可以直接将直接放进这两条命令执行。
接着,需要将 Ubuntu 实例默认登录用户从 root 用户替换为新创建的用户。为了实现这一点,运行以下命令(复制整个代码块到 Windows Terminal 或 PowerShell 然后敲 Enter):
tee /etc/wsl.conf <<_EOF
[user]
default=${NEW_USER}
_EOF
首先运行 logout
命令退出 WSL,接着通过以下命令关闭正在运行的第二个 Ubuntu 实例:
wsl --terminate <Distribution Name>
最后,再次启动第二个 Ubuntu 实例并登录:
wsl -d <Distribution Name>
注:以上所有的
都是第二步安装实例时指定的,在本文中用的是
ubuntu-2