关键词:Linux
WSL 简介
开发人员可以在 Windows 计算机上同时访问 Windows 和 Linux 的强大功能。 通过适用于 Linux 的 Windows 子系统 (WSL),开发人员可以安装 Linux 发行版,并直接在 Windows 上使用 Linux 应用程序、实用程序和 Bash 命令行工具,不用进行任何修改,也无需承担传统虚拟机或双启动设置的费用。
WSL 目前已发布两代产品:WSL 1 和 WSL 2。
- WSL 1 实现了 Linux 兼容层,将 Linux 系统调用转换为 Windows NT 系统调用;
- WSL 2 则利用 Windows 的 Hyper-V 功能,通过虚拟化技术直接运行 Linux 虚拟机,更接近原生 Linux 操作系统体验。
WSL 的前提条件
- 检查 Windows 版本,WSL 需要 Windows 10 1903 (内部版本 18362)或更高版本(x64)。如果版本较低,请更新 Windows 10 系统。(设置 → 关于可以看)
- 检查 BIOS 是否开启了虚拟化。(打开任务管理器 → 性能 → CPU处)如果没有开启虚拟化,需要进入 BIOS 的 Configuration 处设置。
- 启用 WSL 功能。(搜索打开“启用或关闭 Windows 功能”,滑到最下面,启用“媒体功能”、“适用于 Linux 的 Windows 子系统”、“虚拟机平台”和“远程差分压缩 API 支持”)
安装 Linux
-
在 此处 下载自己需要的 Linux 发行版本。(此处下载 Ubuntu 20.04 为例)
-
下载得到的是一个
.AppxBundle
文件,将其重命名为.zip
并解压。
- 选择自己电脑架构的
.appx
文件,再将其命名为.zip
并解压。
- 运行
ubuntu.exe
,过程中需要注册账号名和密码。
运行并配置 WSL
- 直接使用 cmd 输入
wsl
可进入默认 WSL,输入wsl --list
查看安装了的 Linux 版本。
- 更改 Ubuntu 的 apt 下载镜像:
使用以下命令确定 Ubuntu 的 codename:
1 | lsb_release -a |
此处我为 focal。
1 | sudo vim /etc/apt/sources.list |
将里面的内容替换为:
1 | deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse |
如果你的 codename 为其他,需要将上面的内容中的 focal 修改为你自己的 codename。
要是不习惯 vim 操作,可以偷懒使用 Windows 的文件管理器,打开你的 Ubuntu 文件夹,找到里面的 rootfs\etc\apt\,然后用记事本打开 sources.list 进行修改。
修改后运行下面的命令进行更新:
1 | sudo apt-get update |
- 配置 DNS 网关:
1 | sudo vim /etc/resolv.conf |
添加阿里 DNS:
1 | nameserver 127.0.0.53 |
此处好像记事本打不开…
保存后再运行一次下面命令进行更新:
1 | sudo apt-get update |
- 添加 gcc/g++ 环境
1 | sudo apt update |
升级到 WSL 2
先使用下面的命令检查自己的 WSL:
1 | wsl -l --v |
如果版本不是 2 而想升级到 2 的步骤如下:
-
下载 Linux 内核更新包:下载地址
-
接着运行下载到的更新包。
在升级后,我再进入 WSL 时出现了“参考的对象类型不支持尝试的操作”的情况,解决方式参考:CSDN
注销 WSL
在 cmd 中输入 wsl --unregister <Linux>
进行删除 WSL。
另外如果忘记了 root 账户密码的话,可以修改:
- 打开 powershell 或 cmd,输入
wsl -u root
会直接进入 root 模式,在改模式下直接修改 root 密码; - 输入
passwd root
,终端会提示让你输入新的密码。