为什么
因为有一些传统的工具比如 curl
等等在 PowerShell
中的替代的参数不一样,不想学习新的参数,所以搞个这个替代一下。
不过 PowerShell
是确实强大。
环境的准备
- 准备使用的操作系统的
Docker
镜像- 我使用的是 CentOS8
- 开启
WSL
- 可以通过
PowerShell
执行
- 可以通过
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
安装安装工具
这里我们借助一个工具软件来安装需要的安装工具
禁止套娃
安装 Chocolatey
- Chocolatey是一个 Windows 下的包管理工具,似乎是基于
PowerShell
的。 - 官方提供了安装脚本 install.ps1
- 但是
PowerShell
默认禁止执行脚本,可以在有管理员权限的PowerShell
中使用以下命令绕过
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
然后利用 Chocolatey
安装 LxRunOffline
LxRun.exe
曾经是系统自带的,但不知道为什么从 1804 后被删除。- 执行以下命令
由于Chocolatey
刚安装,需要重启PowerShell
来载入PATH
。
choco install lxrunoffline
安装系统
LxRunOffline install -n {OSName} -d{InstallPath} -f ${DockerImageFile}
其中
OSName
是你希望这个系统在 wsl 中记录的名字,是用于管理的,虽然可以随意制定,最好还是有意义的名称
InstallPath
是希望系统被安装的目录,最好是空的以免发生文件名的冲突
DockerImageFile
是下载的 Docker
镜像
运行
设置默认启动的系统(如果安装了多个 WSL
系统)
wslconfig.exe /setdefault ${OSName}
启动
wsl -d ${OSName}
默认以 root
身份登陆,感觉有点不安全,到时候再研究一下。