共计 2096 个字符,预计需要花费 6 分钟才能阅读完成。
Windows 以强大的桌面系统而成为应用最广泛的个人电脑的操作系统,而 Linux 则在服务器和嵌入式等领域大放异彩。由于 Windows 与 Unix/Linux 命令差别较大,macOS/Linux 用户切换到 Windows 使用 CMD/PowerShell 时都会产生抓狂感。长久以来,Windows 用户基本都是通过 Putty、WinScp、GitBash 等第三方桌面软件来操作 Linux 设备,不过这种方式的灵活性相比 Linux 系统直接使用终端而言还是有些差距。好在 Windows 终于提供了 WSL 来支持这种需求,Windows 用户不再需要安装虚拟机、Putty 或双系统也能操作 Linux 设备了。
WSL(全称 Windows Subsystem for Linux)是一种在 Windows 系统上样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序)的子系统,相比于虚拟机和双系统而言,WSL 的开销更少。
目前 WSL 有 WSL 1 和 WSL 2 两个版本,从功能上来讲,WSL 1 是 Windows 为兼容 Linux 命令提供的 Shell,而 WSL 2 则提供完整的 Linux 内核,更多不同见比较 WSL 1 和 WSL 2 。目前默认安装的 WSL 为 WSL 2,可执行 wsl --set-default-version <Version>
更换 WSL 默认版本,如执行 wsl --set-default-version 1
更换为 WSL 1。
大部分情况下 WSL 2 都能满足需求,不过有时仍有需要使用 WSL 1 的场景。目前 WSL 2 会虚拟化一块网卡通过 NAT 与 Windows 连接,如果想让 WSL 拥有与 Windows 系统相同的网络,直接配置 WSL 2 网络虽然可行,但较繁琐,可执行 wsl --set-version <Linux> 1
临时修改为 WSL 1,如 wsl --set-version Ubuntu-22.04 1
将 Ubuntu-22.04 切换为 WSL 1。
安装 Ubuntu
可在 CMD 或 PowerShell 中调用 WSL 命令安装 Linux,也可以在 Microsoft Store 中安装,笔者以在 Microsoft Store 安装 Ubuntu 22.04.1 LTS 为例说下过程。
- 打开 Microsoft Store,搜索 WSL:
- 选择 Ubuntu 22.04.1 TLS,点击获取:
- 点击安装:
- 安装完成后,点击启动,可看到 WSL 的欢迎页面:
- 选择安装语言:
- 配置 Ubuntu 系统信息:
- 设置用户名和密码
- 回车进入 mount 等配置页面,笔者使用默认设置,再次回车进入下一页,等待配置生效:
- 设置用户名和密码
- 重启。
按 Tab 键选到 Reboot Now 重启,即可看到 Ubuntu 欢迎页面,执行df
可看到 C 盘等 Windows 分区在 /mnt 目录下挂载:
- 回到 CMD,输入
wsl -l -v
查看 wsl 版本为 WSL 2。
后续要打开 Ubuntu 的话,打开“开始”菜单,即看到安装的 Ubuntu 22.04.1 LTS,点击即可开启:
优化
参考安装双系统(二)之安装 Ubuntu 20.04进行优化。
更换阿里云
执行如下命令更换默认源为阿里云:
$ sudo sed -i -E 's/http:\/\/(archive|security).ubuntu.com/https:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list
$ sudo apt update
优化 shell
使用 zsh
- 执行
echo $SHELL
查看当前 shell。 - 执行
sudo apt install -y zsh
安装 ZSH。 - 设置 ZSH 为默认 SHELL:
chsh -s /bin/zsh
。 - 执行
echo $SHELL
查看当前 shell。
安装 oh-my-zsh
oh-my-zsh 是 zsh 的一个强化框架,执行 sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
安装,安装成功后的欢迎页面如下:
安装 powerlevel10k
powerlevel10k 是一个 zsh 的主题。
- 执行
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git {ZSH_CUSTOM:-HOME/.oh-my-zsh/custom}/themes/powerlevel10k
下载 powerlevel10k。 - 在
~/.zshrc
在设置主题:ZSH_THEME="powerlevel10k/powerlevel10k"
。 - 执行
source ~/.zshrc
配置 powerlevel10k,若需要重新设置,执行p10k configure
即可。
WiFi WLAN
虽然 WSL 启动的 Ubuntu 能利用 Windows 的 WiFi 与外界联网,但其终端目前还未支持识别 WiFi 信息,执行 ip a
未找到 WiFi 的 WLAN 信息,而在 Windows 的 CMD 中执行 ipconfig
则可以看到连接的 WiFi 信息。
开启 Hyper-V
如果需要使用 Hyper-V 来管理 WSL 的话,可打开“启动或关闭 Windwos 功能”,勾选Hyper-V,点击确定,待安装完成后,重启电脑。