以前在win系统上跑liunx系统一般是先安装个虚拟机软件,再在虚拟机上运行对于linux的镜像。
直到后来win推出了WSL。
Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。在我的win10家庭版上叫【适用于 Linux 的 Windows 子系统】,这个功能要启用起来。
WSL的基本命令可以参考微软的相关文档:WSL的基本命令
下面搬运了一部分过来:
wsl --install
安装 WSL 和 Linux 的默认 Ubuntu 发行版。 了解详细信息。 还可以使用此命令通过运行 wsl --install
选项包括:
–distribution:指定要安装的 Linux 发行版。 可以通过运行 wsl --list --online 来查找可用的发行版。
–no-launch:安装 Linux 发行版,但不自动启动它。
–web-download:通过联机渠道安装,而不是使用 Microsoft Store 安装。
未安装 WSL 时,选项包括:
–inbox:使用 Windows 组件(而不是 Microsoft Store)安装 WSL。 (WSL 更新将通过 Windows 更新接收,而不是通过 Microsoft Store 中推送的可用更新来接收)。
–enable-wsl1:在安装 Microsoft Store 版本的 WSL 的过程中也启用“适用于 Linux 的 Windows 子系统”可选组件,从而启用 WSL 1。
–no-distribution:安装 WSL 时不安装发行版。
备注:
如果在 Windows 10 或更低版本上运行 WSL,可能需要在 --install 命令中包含 -d 标志以指定发行版:wsl --instal -d <distribution name>。
wsl --list --online
查看可通过在线商店获得的 Linux 发行版列表。 此命令也可输入为:wsl -l -o。
wsl --list --verbose
查看安装在 Windows 计算机上的 Linux 发行版列表,其中包括状态(发行版是正在运行还是已停止)和运行发行版的 WSL 版本(WSL 1 或 WSL 2)。 比较 WSL 1 和 WSL 2。 此命令也可输入为:wsl -l -v。 可与 list 命令一起使用的其他选项包括:–all(列出所有发行版)、–running(仅列出当前正在运行的发行版)或 --quiet(仅显示发行版名称)。
wsl --set-version
若要指定运行 Linux 发行版的 WSL 版本(1 或 2),请将
wsl --set-default-version
若要将默认版本设置为 WSL 1 或 WSL 2,请将
wsl --set-default
若要设置 WSL 命令将用于运行的默认 Linux 发行版,请将
wsl ~
~ 可与 wsl 一起使用,以在用户的主目录中启动。 若要在 WSL 命令提示符中从任何目录跳回到主目录,可使用命令 cd ~。
wsl --distribution --user
若要通过特定用户运行特定 Linux 发行版,请将\ 替换为你首选的 Linux 发行版的名称(例如 Debian),将
wsl --update
将 WSL 版本更新到最新版本。 选项包括:
–web-download:从 GitHub 而不是 Microsoft Store 下载最新更新。
wsl --status
查看有关 WSL 配置的常规信息,例如默认发行版类型、默认发行版和内核版本。
wsl --version
检查有关 WSL 及其组件的版本信息。
wsl --help
查看 WSL 中可用的选项和命令列表。
wsl -u `, `wsl --user
若要以指定用户身份运行 WSL,请将
config --default-user
更改用于发行版登录的默认用户。 用户必须已经存在于发行版中才能成为默认用户。
例如:ubuntu config --default-user johndoe 会将 Ubuntu 发行版的默认用户更改为“johndoe”用户。
备注:
如果在确定发行版名称时遇到问题,请使用命令 wsl -l。
警告:
此命令不适用于导入的发行版,因为这些发行版没有可执行启动器。 可以改为使用 /etc/wsl.conf 文件来更改导入的发行版的默认用户。 请参阅高级设置配置文档中的“自动装载”选项。
wsl --shutdown
立即终止所有正在运行的发行版和 WSL 2 轻量级实用工具虚拟机。 在需要重启 WSL 2 虚拟机环境的情形下,例如更改内存使用限制或更改 .wslconfig 文件,可能必须使用此命令。
wsl --terminate
若要终止指定的发行版或阻止其运行,请将
wsl --export
wsl --import
将指定 tar 文件导入和导出为新的发行版。 在标准输入中,文件名可以是 -。 选项包括:
–vhd:指定导入/导出发行版应为 .vhdx 文件,而不是 tar 文件
–version:(仅导入)指定将发行版导入为 WSL 1 还是 WSL 2 发行版
wsl --import-in-place
将指定的 .vhdx 文件导入为新的发行版。 虚拟硬盘必须采用 ext4 文件系统类型格式。
wsl --unregister
如果将
还可以像卸载任何其他应用商店应用程序一样卸载 Windows 计算机上的 Linux 发行版应用。 若要重新安装,请在 Microsoft Store 中找到该发行版,然后选择“启动”。
wsl --mount
通过将
–vhd:指定
–name:使用装入点的自定义名称装载磁盘
–bare:将磁盘附加到 WSL2,但不进行装载。
–type
–partition
–options
备注:
如果你正在运行 32 位进程来访问 wsl.exe(一种 64 位工具),那么你可能需要按如下方式运行此命令:C:\Windows\Sysnative\wsl.exe --command。
wsl --unmount
卸载磁盘路径中给定的磁盘,如果未提供磁盘路径,则此命令将卸载并分离所有已装载的磁盘。
启用WSL后就可以安装linux系统了。我想装的是centos7,但是在Microsoft Store上我并没有找到centos。
还好github上有:CentOS-WSL
下载解压后,运行【CentOS7.exe】安装即可。
安装后就可以用windows终端【windows terminal】运行centos7系统了,也可以双击上面的安装包【CentOS7.exe】运行。
yum -y update
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo