WSL安装与使用简明教程

WSL安装与使用🦖教程

latest update:2024/9/11 by🦖

本文介绍了在主流的 Windows 系统下使用 Windows Subsystem for Linux 运行 Linux 环境的方法。

更新内容:

1.更加精简,删除了不重要的部分

2.更正补充了xrdp连接部分


启用 WSL

🦖GUI安装法

  1. 点左下角图标,进入 Microsoft Store

  2. 搜索WSL,前两个选一个安装

接下来,请转到下面「配置分发版」一节完成其他设置。

自动安装

本部分适用于 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11
如果你正在使用 2004 以下版本或你的电脑不支持虚拟化,请阅读下面的手动安装一节。
如果你正在使用 1607 以下版本的 Windows 10,你的系统不支持 WSL。
  1. 以管理员身份打开 Windows PowerShell(右击「开始」按钮,选择 Windows PowerShell(管理员)或 Windows 终端(管理员))

  2. 输入 wsl --install,并等待所有组件自动安装完成。期间你可能需要重启你的计算机来启用必要的 Windows 功能。

  3. 安装完成后,你可以在「开始」菜单或 Windows 终端的标签页中找到你安装的发行版。

  4. 接下来,请转到下面「配置分发版」一节完成其他设置。

配置分发版

本章以 Windows 自动安装的 Ubuntu 为例。

运行 Ubuntu

打开「开始」菜单找到 Ubuntu 并启动,或使用 wsl 命令从 Windows 命令行启动。

可以为 Ubuntu 创建应用程序磁贴或固定至任务栏,以在下次方便地打开。

初始化

第一次运行 Ubuntu,需要完成初始化。
Installing, this may take a few minutes...

等待一两分钟时间,系统会提示创建新的用户帐户。
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:

输入完用户名以后会提示输入密码。在 Linux 中,输入密码时屏幕上不显示文字属于正常现象。
Enter new UNIX password:

设置好帐户名和密码后,WSL 就安装完成了。
Installation successful!
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.
chtholly@SENIORIOUS:~$

更换为国内软件源

Ubuntu 默认的软件源在国外。可以换成国内的软件源以加快速度,如 清华 TUNA 的软件源
请在页面中寻找与自己系统版本相配的源(可使用 sudo lsb_release -a 查看 Ubuntu 版本)。
除非你知道你在做什么,否则不要使用与自己的系统版本不匹配的源!

使用以下命令更新软件和软件源:

$ sudo su # 执行这行指令后,终端提示符会从 $ 变成 #,执行下文的命令前注意关注提示符
[sudo] xxx 的密码:
# cp /etc/apt/sources.list /etc/apt/sources.list.bak
# vim /etc/apt/sources.list
...(按 i 之后将上文的源粘贴进去,编辑完后按 Esc,再输入 :wq 和回车)
# apt update
# apt upgrade -y

安装中文环境(可选)

# apt install language-pack-zh-hans -y
# apt install fontconfig -y
# apt install fonts-noto-cjk fonts-wqy-microhei fonts-wqy-zenhei -y # 中文字体
# dpkg-reconfigure locales

此时会进入一个设置菜单,不用管,直接回车。

下一个菜单中选择 zh_CN.UTF-8 回车。
Default locale for the system environment:
None
C.UTF-8
en_US.UTF-8
[zh_CN.UTF-8]

之后关闭 WSL 并重启,系统就会变成中文。

再依次输入下列命令,把 man 帮助页替换为中文。

# apt install manpages-zh
# sed -i 's|/usr/share/man|/usr/share/man/zh_CN|g' /etc/manpath.config

可以用 man help 测试。

进阶操作(可选)

使用 WSLg 运行 GUI 程序

如果你使用 Windows 10 19044 及以上版本或 Windows 11,则可以使用 WSL 2 提供的集成的桌面体验。该功能允许你直接安装并启动 Linux 桌面程序而无须其他配置。

参见 在适用于 Linux 的 Windows 子系统上运行 Linux GUI 应用

安装图形环境,并使用远程桌面连接

如果你使用的版本尚不支持 WSLg, 可以尝试使用以下指南开启图形界面功能。

以下以 Xfce 为例。

如果只想安装 Xfce,可以执行以下命令:

$ sudo apt install xfce4 tightvncserver -y

如果除 Xfce 外想要更多的软件,可以执行以下命令:

$ sudo apt install xubuntu-desktop -y

图形环境文件较大,下载解包需要一定时间。

如果使用了 xfce4,可以在弹出的窗口中使用如下命令激活 xfce4:

 $ xfce4-session

配置 xrdp:

$ sudo apt install xrdp -y
$ echo "xfce4-session" >~/.xsession
$ sudo service xrdp restart

为了防止和计算机原有的远程桌面冲突,需要更换默认端口。

运行命令 vim /etc/xrdp/xrdp.ini,其中的 port 改为其他端口(如 3390)。
[globals]
...
port=3390

运行 sudo service xrdp restart,然后win+R,打开mstsc,用 localhost:3390 来访问。

如果访问失败,可能需要打开端口:

sudo ufw allow 3390

WSL 与 Windows 文件的互访问

Windows 下的硬盘被自动挂载至 Linux 环境下的 /mnt 文件夹下。
如 C 盘在 WSL 下的路径为 /mnt/c

PS C:\Users\chtholly> bash
/mnt/c/Users/chtholly$ echo "Hello world!" > hello
/mnt/c/Users/chtholly$ exit
PS C:\Users\chtholly> cat hello
Hello world!
PS C:\Users\chtholly> echo "Welcome!" > welcome
PS C:\Users\chtholly> bash
/mnt/c/Users/chtholly$ cat welcome
Welcome!

另外,也可以从文件管理器访问 WSL 目录。在安装 WSL 后,可以在资源管理器的侧边栏中发现 Linux 项,在其中可以访问所有安装的发行版中的文件。

同样,也可以在资源管理器的路径或运行(Win+R)中直接输入 \\wsl$ 来转到 WSL 的目录。

也可以直接使用诸如 \\wsl$\Ubuntu\home\ 的路径访问其子文件夹。

配合 Visual Sudio Code 进行编辑

如果习惯在 Windows 环境下使用 Visual Studio Code 进行代码编辑,可以安装 VS Code 中的 Remote - WSL 插件,更方便地对 WSL 系统中的文件进行编辑。

通过 Remote - WSL,可以在 Windows 下的 VS Code 界面中直接对 WSL 子系统进行操作,更加方便地编辑子系统目录下的文件、更方便地使用终端进行调试。

通过在 WSL 中直接键入 code .,可以在该目录下直接唤出 Visual Studio Code,对于该目录下的文件进行编辑。

同时,可以通过类似 code filename 的命令,对于指定文件进行编辑。

在插件 Remote - WSL 的 Getting Started 页面,包含对于编辑操作的详细简介。

同时,也可以参考 Visual Studio Code 的官方文档中关于 WSL 的内容(Remote development in WSL),这篇文章包含从 WSL 安装到配合插件使用的全流程的更详细的介绍。

WSL1 升级为 WSL2

请确认已经完成前面 WSL1 的安装步骤。

执行命令 wsl -l -v 可以看到 WSL 版本号是 1,需要执行升级,才能到 2。

  1. 启用「虚拟机平台」功能
    使用 PowerShell 以管理员身份运行:

    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    

    然后 重启电脑

  2. 下载 Linux 内核更新包

  3. 设置分发版版本
    执行命令:wsl --set-version <分发版名称> <版本号>
    如:将 Ubuntu 18.04 设置为 WSL 2 的命令为 wsl --set-version Ubuntu-18.04 2
    这一步比较耗时,执行完成后通过命令 wsl -l -v 来检查升级是否成功。

FAQ

参见:常见问题WSL 2 常见问题解答

  • 如何在子系统下进行 xxx?
    可以用自带命令行,或者使用图形界面。
    比如说 vim,在命令行中键入 man vim,会给出一份详尽的使用方法。
    亦可使用 vim --help
    关于命令行,可阅读 命令行

  • 对系统资源的占用量?
    这个系统和 Windows 10 共用 Host,所以理论上是比虚拟机占用小的。

外部链接

参考资料与注释

安装 WSL, Microsoft Docs

旧版 WSL 的手动安装步骤

WSL-Ubuntu 维基,ubuntu wiki

Ubuntu 的 man 命令帮助如何设置中文版,Frank 看庐山,2017-06-09

Run Bash on Ubuntu on Windows, Mike Harsh, 2016-05-30, Windows Blog

posted @   永是珞珈一恐龙  阅读(988)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· c# 半导体/led行业 晶圆片WaferMap实现 map图实现入门篇
· 易语言 —— 开山篇
点击右上角即可分享
微信分享提示