WSL
https://docs.microsoft.com/zh-cn/windows/wsl/
安装
安装 WSL
安装 linux 子系统,可以让开发人员在在windows 下使用 linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
安装指南 :https://docs.microsoft.com/zh-cn/windows/wsl/install-on-server
安装 LINUX 发行版
可以手工下载,解压缩并运行。 比如下载 Ubuntu , 然后运行 Ubuntu.exe。 或是在 windows 商城中安装, 然后运行 Ubuntu.exe 。
使用
密码
除了在 linux 系统下进行密码设置外。可以在 windows 中进行密码设置
wsl -u root # 修改默认密码
wsl -d Debian -u root # 修改指定密码
查看并设置已安装版本
https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
wsl -l -v
<##
NAME STATE VERSION
* docker-desktop Running 2
Ubuntu-18.04 Running 2
docker-desktop-data Running 2
##>
文件系统
在 linux 中执行
``` explorer.exe . ``` 可以在 windows 资源管理器中打开当前对应的目录
使用 ```/mnt/xxx``` 访问 windows 空间
使用 ```\\wsl$``` 访问 wsl 空间
git 使用 windows 中的凭证管理器
https://docs.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-git
git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager.exe"
容器
linux 系统
在 windows 中安装容器。 在设置中开启 wsl2 支持,然后启用指定的 linux 发行版本可以使用 linux。这样在 linux 中使用 docker 就可以操作 windows 安装的容器了
VSCODE 容器 整合
https://docs.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-containers
可以在 linux 系统中放置项目代码,然后在 linux 中运行
``` code . ``` 将在 windows 中启动 vscode , 然后使用 vscode 插件,在 linux 系统中启动一个容器进行代码的运行
windows 中运行 linux 命令
wsl + linux 命令
#
wsl ls -ls
wsl sudo apt-get update
wsl ls -la | where { $_ -like '*cmd*' } # 混合 linux | windows 命令
wsl ls -la > out.txt
wsl cat /proc/cpuinfo
linux 中运行 windows 命令
直接运行 windows 命令
explorer.exe .
ipconfig.exe | grep IPv4 | cut -d: -f2 # 混合命令
共享环境变量
https://docs.microsoft.com/zh-cn/windows/wsl/interop
多个 linux 分发版管理
https://docs.microsoft.com/zh-cn/windows/wsl/wsl-config
cat /etc/*-release # 查看当前发行版版本
wsl -l , wsl --list # 列出安装的分发版
wsl --list --all # 列出所有安装或是未安装的分发版
wsl --list --running # 列出当前运动的分发版本
wsl -s , wsl --setdefault # 设置默认分发版
wsl --unregister # 注销已安装的发行版 (所有数据都会被清理 )
wsl -u , wsl --user # 以选定身份启用发行版, 该发行版中需要有此用户
config --default-user # 更新发行版的默认用户
wsl -d , wsl --distribution # 运行指定的发行版, 将命令发送至该版本中,而不需要更新默认发行版
文件权限设置
https://docs.microsoft.com/zh-cn/windows/wsl/file-permissions
在 linux 中加载 windows 磁盘
https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-mount-disk