前言
本方法基本采用官方步骤,官方镜像,工具皆为最新。
1.下载所需工具
win10 WSL2 update:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi(https://docs.microsoft.com/en-us/windows/wsl/install-win10#step-4—download-the-linux-kernel-update-package)
LxRunOffline:https://github.com/DDoSolitary/LxRunOffline
CentOS7:https://github.com/CentOS/sig-cloud-instance-images/tree/CentOS-7.8.2003-x86_64/docker (目前最新,请根据branches检查)
2.启用适用于 Linux 的 Windows 子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
3.检查运行 WSL 2 的要求
对于 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。
4.启用虚拟机功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
5.重启系统
6.安装CentOS7
lxrunoffline install -n "CentOS7" -d "预期的安装路径" -f "下载的CentOS7 tar.xz地址"
7.设置为WSL 版本为2
# 先启动一下,避免其他问题
LxRunOffline run -n "CentOS7"
wsl --set-version "CentOS7" 2
8.建立work用户
# 1. 进入wsl
wsl -d CentOS7
# 2. 建立work用户
useradd -m -s /bin/bash work
# 3. 设置密码
passwd work
# 4. (选择)授予该用户 sudo 权限。
usermod -a -G sudo work
9.设定默认用户
设定work为默认用户,适用于研发同学
查看用户 UID ,一般是 1000
id -u work
按 Ctrl+D 退出 WSL ,在 PowerShell 中输入以下命令:
LxRunOffline su -n work -v <id>
设定root为默认用户,适用于SRE同学
LxRunOffline su -n "CentOS7" -v 0
其它
设置中文 (因wsl不支持systemd,使用另一种方法)
# 安装中文环境包
yum install langpacks-zh_CN -y
# 重新安装glibc-common
yum reinstall -y glibc-common
# 设置locale.conf
echo "LANG="zh_CN.UTF-8"" > /etc/locale.conf
# 临时生效
source /etc/locale.conf
# 永久生效
echo "source /etc/locale.conf" > /etc/profile.d/locale.sh
# 设置系统语言
localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
安装中文man-pages
yum install man-pages-zh-CN -y