乐趣区

关于linux:wsl2-配置arch-linux

本文来自我的笔记 https://github.com/levinit

以下内容中 windows 命令在 powershell 或 windows terminal(倡议,其默认应用 powershell)中执行。

启用 wsl2

  • 启用 hyperv
  • 启用用于 linux 的子系统
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

家庭版启用 hyperv,创立一个 bat 文件如 hyperv.bat,内容如下:

pushd "%~dp0"

dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt

for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"

del hyper-v.txt

Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

管理员用户执行下面的 bat 文件。

可能要重启零碎。

装置 wsl2 archlinux

  1. 将 wsl 作为默认 wsl 版本:

    wsl --set-default-version 2

    应用 wsl -l -v 查看以后 wsl 版本及 linux 列表。

    可能提醒须要更新其内核组件,依据提醒的网址下载内核装置。

  2. 下载 ArchWSL2,解压目录,这里假如将加压的目录 ArchWSL2 放到 C:\\ 目录下,点击目录内的 Arch2.exe 装置。
  3. C:\\ArchWSL2 退出环境变量方便使用

    搜寻 path,在 零碎属性 – 环境变量 中编辑 Path 行,增加该环境变量。

arch 根本配置

以下内容在 wsl archlinux 的 shell 中执行,依据须要进行一些根本配置:

# 密钥初始化
pacman-key --init
pacman-key --populate archlinux

#批改源,应用 China 源
curl 'https://www.archlinux.org/mirrorlist/?country=CN&protocol=https&ip_version=4'|sed  "s/^#//" >/etc/pacman.d/mirrorlist

#更新零碎
pacman -Syyu --noconfirm

#root 明码
passwd root

#增加 archlinuxcn 源(可选)echo '[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch' >> /etc/pacman.conf
pacman -Syy
pacman -S archlinuxcn-keyring --noconfirm

#装置一些软件(可选)pacman -S --noconfirm vim htop git sudo

#增加一个普通用户(可选)useradd -m -g wheel levin


#将 windows 的一些目录与 linux 共用(可选)
#ln -sf /mnt/c/path/to/Documents ~/

设置 wsl 默认登录用户

archlinux 的 wsl 默认应用 root 用户登录。在 wsl 装创立了普通用户后,在 windows terminal 中配置 wsl 默认登录用户:

 arch2 config --default-user levinit

wsl2 硬件资源调配

在用户目录 C:\\Users\\<username> 下创立 .wslconfig 文件:

[wsl2]
#kernel=C:\\temp\\myCustomKernel
memory=4GB # 将 WSL 2 中的 VM 内存限度为 4 GB
processors=2 #使 WSL 2 VM 应用两个虚构处理器
退出移动版