在Windows 10和11上安装WSL 2比以往任何时候都容易,并且向其中添加发行版只需要从Microsoft Store下载应用程序即可。
Microsoft Store有很好但有限的Linux发行版选择,对于Ubuntu,你基本上是在查看LTS版本,而不是最新的滚动版本。
如果你需要最新版Ubuntu 21.10,则无需启动虚拟机,你可以很容易地在Windows 10或11上安装它。
你只需要知道去哪里找。
一、如何为WSL下载Ubuntu 21.10
为WSL下载Ubuntu 21.10并不难,可以在WSL内部升级到最新版本,但在21.10的情况下,你需要已经在21.04上。
但在这里我们将下载一个镜像文件并安装一个全新的Ubuntu 21.10版本。
要获取你需要的文件,请访问Ubuntu网站并按照以下步骤操作:
1.单击标记为impish的选项。
2.接下来,单击当前.
3.找到标记为wsl.rootfs.tar.gz的文件。
会有多个文件,但标有清单的文件可以忽略。你需要为你的PC选择正确的版本,如果你使用的是Intel或AMD驱动的机器,请选择amd64版本。如果你使用的是基于ARM的机器,请选择arm64版本。
下载相关文件,然后进入安装过程。
二、如何在Windows 10和11的WSL上安装Ubuntu 21.10
从现在开始,将进入PowerShell终端。记下你在上述步骤中的tar文件下载到的位置,因为在安装过程中你需要该文件位置。
安装过程首先将下载的镜像从Ubuntu导入到WSL设置中。
在PowerShell中,需要输入以下命令来导入和安装Ubuntu 21.10:
- wsl--import
所以,在我的系统上,它看起来像这样:
- wsl--import Ubuntu-2110 c:/WSL/Ubuntu-2110 c:/Downloads/impish-server-cloudimg-amd64-wsl.rootfs.tar.gz
在哪里解压和安装镜像并不重要,但创建一个专用目录并没有什么坏处,特别是如果你打算以这种方式安装多个发行版。
此外,你可以在末尾使用--version标志指定WSL的版本。它将安装到你的系统识别为默认的任何WSL版本,但你可以在安装时更改它以节省以后转换它的需要。只需在标志后添加1或2即可指定你需要的版本。
这需要一分钟,一旦完成,你就可以继续进行设置。由于尚未从Microsoft Store安装此应用程序,因此在“开始”菜单中没有创建应用程序快捷方式。你需要手动启动它:
- wsl-d
但是,如果你确实应该使用Windows终端,WSL会自动将其添加到下拉菜单中,以及你可以打开的所有其他shell。
三、Ubuntu 21.10的基本设置
由于你基本上已经侧面加载了Ubuntu 21.10,因此它不会运行你从Microsoft Store安装Ubuntu时获得的初始设置过程。你不会设置用户,只会有root,因此,你需要创建一个并将其添加到sudo组:
- adduser
- usermod-aG sudo
并使用以下命令切换到该用户:
- su
要以新用户身份启动Ubuntu 21.10,请从PowerShell输入:
- wsl-d-u
虽然以用户而不是root用户身份切换或进入新安装的过程并不长,但自动化过程总是更好。以这种方式安装的发行版配置默认用户与从商店下载可执行文件的用户略有不同。
有几种不同的方法可以处理此问题,但最简单且最安全的方法是编辑发行版上的wsl.conf文件,告诉WSL以你的用户帐户而不是root身份登录。打开Ubuntu 21.10并导航到如下文件。该文件可能在第一次安装时不存在,所以要对其进行设置,为此你需要以root身份而不是你的用户帐户登录。
1.在终端输入cd/etc/
2.输入ls以列出内容。如果你没有wsl.conf,可以创建一个。
3.输入touch wsl.conf。
4.输入nano wsl.conf.使用nano打开wsl.conf文件。
现在你需要输入告诉Ubuntu 21.10以用户身份而不是root身份启动所需的信息。在文档中输入以下内容:
- #Set the user when launching a distribution with WSL.
- [user]
- default=YourUserName
第一行不是必需的,但最好在整个wsl.conf文件中保留注释,以便用简单的英语提醒你每个部分的作用。
按Ctrl+X退出nano,然后按Y和Enter保存文件。完全关闭WSL,等待几秒钟,然后当你下次启动回到Ubuntu 21.10时,你应该是用户而不是root。
或者,如果你使用的是Windows终端,请打开Settings,在边栏中找到你的Ubuntu 21.10安装,并在命令行框中确保存储此命令:
- wsl.exe-d-u
一旦关闭并重新启动,这将具有相同的效果。