wsl2 简单点说,就是可以在Windows上用Linux,并且支持docker
管理员身份打开powerShell
win+x
输入下面命令
wsl --installdism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestartdism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestartwsl --set-default-version 2
然后重启电脑
wsl的安装就完成了。
在 win10(11) 2022.3 之后,重启会打开新的 Ubuntu 的页面,直接输入新 user 和 passwd 即可。也就是说自动安装了 Ubuntu 20.04 在 c 盘了,可以直接用了。如果需要 安装别的分发,或者是想将 Ubuntu 20.04 安装在 D 盘的可以继续往下看。(但是得卸载掉 Ubuntu 20.04)
安装Ubuntu
安装在 C 盘安装比较简单,直接在 Windows 应用商店 下载 Ubuntu 20.04 安装即可。
下面是将 Ubuntu20.04 安装在D盘的部分
首先在D盘创建一个文件夹存放,如:linux,进入该文件夹下载ubuntu20.04
Invoke-WebRequest -Uri https://wsldownload.azureedge.net/Ubuntu_2004.2020.424.0_x64.appx -OutFile Ubuntu20.04.appx -UseBasicParsing
然后执行以下命令
Rename-Item .\Ubuntu20.04.appx Ubuntu.zipExpand-Archive .\Ubuntu.zip -Verbosecd .\Ubuntu\.\ubuntu2004.exe
会弹出一个黑框框等几分钟这样,然后输想要的用户名和密码(用户名要小写)
以后进入cmd后输入wsl就可以进入ubuntu系统
查看当前版本
基本命令
查看系统信息
wsl -l -v
关闭WSL内Linux系统
wsl --shutdown #关闭子系统net stop LxssManager(子系统名字) #关闭子系统net start LxssManager(子系统名字) #启动子系统
卸载WSL内Linux系统
wslconfig /lwslconfig /u <DistroName> #<DistroName>替换为想卸载的名字
导出系统
wsl --export <DistroName> <PathToTarArchive>wsl --export Ubuntu-18.04 E:\WSL\Ubuntu-18.04-WSL2\ubuntu.tar
删除系统
wsl --unregister <DistroName>wsl --unregister Ubuntu-18.04
导入系统 指定新的位置
wsl --import <DistroName> <PathToDistroNewDirectory> <PathToTarArchive>wsl --import Ubuntu-18.04 E:\WSL\Ubuntu-WSL2 E:\WSL\Ubuntu-18.04-WSL2\ubuntu.tar
换源
将系统源文件复制一份备用
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
打开源文件
sudo vi /etc/apt/sources.list
直接输入49dd,就可以清除所有内容了
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
更新系统
sudo apt-get -y update && sudo apt-get -y upgrade
默认登陆用户
ubuntu config --default-user root
vim /etc/wsl.conf
hostname:设置当前 wsl 的主机名称
generateHosts:是否自动生成 hosts 文件
重启wsl
配置SSH服务器
WSL 上的 SSH 服务器没有自动配置,需要手动重新安装,首先可以运行以下命令来检查
sudo service ssh stopsudo /usr/sbin/sshd -d
如果输出信息包括以上信息,即找不到 key,重新安装 openssh-server 就可以解决问题
sudo apt purge openssh-serversudo apt install openssh-server
配置 /etc/ssh/sshd_config
Port 22# 这两行允许了 root 账户和密码登录PermitRootLogin yesPasswordAuthentication yes
重启 ssh 服务
sudo service ssh restartsudo service ssh status
需要用密码登录 root 账户,还需要设置密码
sudo passwd root
中文配置
中文乱码
在/etc/environment(文件末尾添加)
# 设置中文export LC_ALL="zh_CN.UTF-8"
执行命令
locale-gen zh_CN.UTF-8
空格乱码,安装中文字体
sudo apt-get install fonts-droid-fallback ttf-wqy-zenhei ttf-wqy-microhei fonts-arphic-ukai fonts-arphic-uming
限制wsl2内存使用
在用户目录下创建一个.wslconfig文件来限制wsl使用的内存总量
[wsl2] processors=8 memory=8GB swap=8GB localhostForwarding=true
重启wsl2