# wsl2开发机
**Repository Path**: linshuboy/wsl2-development-machine
## Basic Information
- **Project Name**: wsl2开发机
- **Description**: 旨在通过简单的配置,让wsl2成为本地测试开发机
- **Primary Language**: 其他
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-03-27
- **Last Updated**: 2022-05-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# wsl2开发机
#### 介绍
旨在通过简单的配置,让wsl2成为本地测试开发机,本项目只有readme文件
#### 软件架构
软件架构说明
#### 安装WSL2
1. BIOS 开启虚拟化
2. 安装最新版Windows10 11(当前环境 10)
3. 控制面板-程序-启用或关闭windows功能(Hyper-v/适用于Linux的Windows子系统)
```
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
shutdown /r
4. 安装wsl2 linux内核 这个不装会报错
```
curl.exe -L -o wsl_update_x64.msi https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
msiexec.exe /i wsl_update_x64.msi /qb
6. 设置默认wsl2
```
wsl --set-default-version 2
7. 安装最新版Ubuntu(作者只用Ubuntu,其他的同理)
```
wsl --update
wsl --shutdown
wsl --install -d Ubuntu
```
或
```
curl.exe -L -o ubuntu.appx https://aka.ms/wslubuntu
Add-AppxPackage .\ubuntu.appx
#### 初始化Windows10
1. 添加计划任务启动wsl
```
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=40021 connectaddress=127.0.0.1 connectport=21
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=40022 connectaddress=127.0.0.1 connectport=22
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=40080 connectaddress=127.0.0.1 connectport=80
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=40443 connectaddress=127.0.0.1 connectport=443
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=40888 connectaddress=127.0.0.1 connectport=888
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=48888 connectaddress=127.0.0.1 connectport=8888
cd ~
curl.exe -L -o initwsl.bat https://gitee.com/Quiet95scholar/wsl2-development-machine/raw/master/initwsl.bat
pwd
echo '将pwd返回的目录信息替换到下面这个命令的文件路径部分'
SCHTASKS /Create /tn wsl2init /sc ONLOGON /RL HIGHEST /F /tr "C:\Users\linsh\initwsl.bat"
```
#### 初始化wsl
1. 安装wsl
```
ubuntu
```
创建用户
2. 添加初始化文件 将文件`initwsl.sh`复制到`/etc/`目录下
```
sudo apt update &&
sudo apt upgrade -y &&
sudo apt purge openssh-server -y &&
sudo apt install openssh-server -y &&
sudo apt install net-tools -y &&
sudo wget -O /etc/initwsl.sh https://gitee.com/Quiet95scholar/wsl2-development-machine/raw/master/initwsl.sh &&
sudo chmod +x /etc/initwsl.sh &&
sudo apt install jq -y &&
mkdir -p ~/.ssh &&
wget -cq https://api.github.com/users/linshuboy/keys -O - | jq -r .[].key >> ~/.ssh/authorized_keys &&
wget -cq https://gitee.com/api/v5/users/linshuboy/keys -O - | jq -r .[].key >> ~/.ssh/authorized_keys &&
chmod 600 ~/.ssh/authorized_keys &&
if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484bec
```
#### 使用说明
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
1.用户 默认使用root 新建 jingyang 在装完宝塔之后会自动创建www 用户 2.访问 wsl2 启动后会自动代理本地127.0.0.1 端口 多数情况下宿主机可以通过127.0.0.1访问wsl2 如需代理到0.0.0.0
需要windows添加端口映射 3.进程 wsl2 启动后并不会自动启动软件所以需要手动启动服务
https://blog.csdn.net/weixin_36212240/article/details/112681006
4.访问宿主机 windows 端 ipconfig wsl 配置显示的ip就是 通过wsl ip 去计算
wsl2的子网掩码都是240,所以只需要取当前IP的第三位,二进制,前四位后面补0,转10进制
255.255.240.0 172.27.139.253
11111111.11111111.11110000.00000000 10101100.00011011.10001011.11111101 10101100.00011011.10000000.00000000 172.27.128.0
第一位 172.27.128.1