Notes about Installing Archlinux On WSL2
(博客很久没有写东西了,把一些以前攒的笔记整理出来放到这边来。)
我个人是挺不喜欢Debian/Ubuntu的(虽然工作因为各种原因一直在用)。WSL2自然还是想要用的相对符合自己喜好一些。这一篇的内容相当于上一篇有关wsl部分的扩充。
- 从archlinux的gitlab页面下载近期的构建产物的tar.zst(我一般选择的base-devel)。提取出来tar备用(不要解压tar= =)
- optionalfeatures启用系统相关的系统功能不用多说了。运行:
wsl --import <Distro name> <VHDX location> <tarfile>
- 进入wsl,此时默认以root进行登录。
- 去除/etc/pacman.conf内的所有NoExtract条目。这个是为了使man能够正常使用。
grep -v '^NoExtract' pacman.conf > pacman.conf.new
mv pacman.conf.new pacman.conf
- 此时可以运行pacman刷新已经安装的软件包。
pacman -S $(pacman -Qq $(pacman -Fq /usr/share/man/ | cut -d/ -f2) 2> /dev/null)
- 安装基础所需
pacman -Sy
pacman -S utils-linux man-db man-pages cmake make vim
- vi键位会抽风,用vim代替
ln -s /usr/bin/vim /usr/bin/vi
- 在/etc/locale.gen里面启用en_US UTF8,然后运行locale-gen
- 删除/etc/pacman.conf内的NoProgressBar
- 如果使用systemd,新建/etc/wsl.conf,内容如下:
[boot]
systemd=true
- 创建用户目录,useradd新的用户
- 退出wsl,以管理员权限运行以下powershell命令,将默认登录用户指向刚才创建的用户
Get-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss\*\ DistributionName | Where-Object -Property DistributionName -eq <Distro name> | Set-ItemProperty -Name DefaultUid -Value 1000
- 再次wsl登入,切换到$HOME,建立.bash_profile内容如下,使.bashrc能够正常执行:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
至此基础配置全部完成。