WSL2安装配置
安装启用WSL2
官网写的很详细,可以去看看,中文的,旧版电脑看 这里,注意看官网右侧目录,他们更新的比加快,网址不一定完全准确
新版windows10系统
新版电脑(必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。)最好一句话安装
1 | wsl --install |
这个会默认wsl2
旧版windows10系统
无论新旧,都可以按照下面来
确保电脑最新版
version 1903 or higher, with Build 18362 or higher.
启用虚拟机平台和 Linux 子系统功能
以
管理员
权限启动 PowerShell,然后输入以下命令启用虚拟机平台:1
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
以管理员权限启动 PowerShell,然后输入以下命令启用 Linux 子系统功能:
1
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
安装linux内核 > 可能要重启电脑
设置WSL2
注意,必须先设置版本
1
wsl --set-default-version 2
查看版本
1
wsl -l -v
下载安装
在自带的应用商店下载,搜索ubuntu,点击安装即可
启动与报错
设置用户名和密码
可能会遇到各种报错,比如boot没有开启虚拟机、比如C盘太小,文件被压缩了,等等,根据错误码,去看官网,中文的,官网更新的比较快,注意右侧目录
配置oh-my-zsh
不要再用bash了……,安装
zsh
和oh-my-zsh
换源
有时候源有些问题,先更新再换源
1 | sudo apt-get update && sudo apt-get upgrade -y |
备份
1
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
删除之前的内容,修改为以下内容
1
sudo vim /etc/apt/sources.list
1
2
3
4
5# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.lzu.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.lzu.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.lzu.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.lzu.edu.cn/ubuntu/ focal-security main restricted universe multiverse更新
1
sudo apt-get update && sudo apt-get upgrade -y
配置ssh(可选)
需要远程登录wsl的话,可以配置
卸载重装
1
sudo apt remove openssh-client openssh-server && sudo apt install openssh-client openssh-server
备份原始的
sshd_config
和ssh_config
1
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak && sudo cp /etc/ssh/ssh_config /etc/ssh/ssh_config.bak
编辑
sshd_config
1
sudo vim /etc/ssh/sshd_config
1
2
3Port 3008
PermitRootLogin no # 如果你需要用 root 直接登录系统则此处改为 yes
PasswordAuthentication yes # 将 no 改为 yes 表示使用帐号密码方式登录启动
ssh
,查看status
,注意这里不能用systemctl
启动SSH服务
1
sudo service ssh start
检查状态
1
sudo service ssh status
对于wsl2
注意!!!wsl2与windows10的ip不完全一样,官网看这里:概念-网络注意事项
在wsl2里面运行,安装net-tools并显示ip,eth0:那一个ip
1
sudo apt install net-tools -y && ifconfig
在windows的powershell(管理员权限)里面监听并转发端口
1
netsh interface portproxy add v4tov4 listenport=3008 listenaddress=0.0.0.0 connectport=3008 connectaddress=这里是wsl2的ip
如果需要:
查看这些转发端口
1
netsh interface portproxy show all
删除这些转发端口
1
netsh interface portproxy delete v4tov4 listenport=3008 listenaddress=0.0.0.0
防火墙
有些版本电脑在运行ubuntu的ssh以后,可以直接弹出提示,允许即可,有些需要新建防火墙端口规则,安装火绒等管家,windows10安全中心无法点击,请到
控制面板\系统和安全\Windows Defender 防火墙
,左侧高级设置
,入站规则
,端口设置其余默认即可
开机自启:ssh 和 cron
可选,只是方便而已
wsl中添加脚本
1
sudo vi /etc/init.wsl
1
2
3
4
5
# Filename: /etc/init.wsl
# Usage: sudo /etc/init.wsl [start|stop|restart]
/etc/init.d/cron $1
/etc/init.d/ssh $1注意可执行权限
1
sudo chmod 777 /etc/init.wsl
windows开机启动
进入自启目录(ctrl R)
1
shell:startup
新建文件startubuntu.vbs
1
2Set ws = CreateObject("WScript.Shell")
ws.run "wsl -d ubuntu -u root /etc/init.wsl start", vbhide
防止windows环境变量污染
wsl中添加脚本
1
sudo vi /etc/wsl.conf
1
2
3
4
5
6
7# 不加载Windows中的PATH内容
[interop]
appendWindowsPath = false
# 自动挂载Windows系统所有磁盘分区,默认就是true
[automount]
enabled = true
定时任务
cron已经在前面的开机自启中自启
1 | */2 * * * * . /root/.zshrc;/root/admin/loginLzuNet/file/authentication_new.sh |
. /root/.zshrc;
添加环境变量,尤其是root里面,如果是普通用户,修改对应目录 . /home/用户名/.zshrc;
上面这样设置环境变量,有些电脑上好像不对,可以如下:
1 | */2 * * * * /root/admin/loginLzuNet/file/authentication_new.sh |
注意着脚本,777权限,以及/bin/zsh
,并且环境变量放在这个脚本里
1 |
|
Vscode
使用vscode访问wsl吧,扩展搜索 wsl
即可,看 官网这里,官网网址可能变,注意官网右侧目录,在 教程-vscode入门
GPU加速
cuda
常用的的cuda是不支持wsl的,需要去官网下载特定的,并且注意cuda,并且windows需要最新版,以前是内测版
最近cuda官网更新了,不需要特定的cuda了,看 这里
用如图选的那个,网络的安装的,因为这个方便更新,平时 apt update
时会随着更新
最下面那些命令,依次输入到wsl2的终端运行就可以了
进一步的环境变量和安装测试,参考ubuntu的
cudnn
tensorflow还需要这个,这个也可以直接下载,下载 deb
安装包的那个,点我:cuDNN Runtime Library for Ubuntu20.04 x86_64 (Deb)(需要登录),然后
1 | sudo apt install *.deb |
千万不要用网上说的复制的那种,很麻烦,如果你用ubuntu18.04(还是用20.04吧),deb包下载对应18.04的
本文作者:yuhldr
本文地址: https://yuhldr.github.io/posts/58249.html
版权声明:转载请注明出处!