Windows10使用Linux子系统实现轻松安装多个linux

 更新时间:2023年08月02日 08:52:33   作者:Hann Yang  
这篇文章主要为大家学习介绍了Windows10如何使用Linux子系统实现轻轻松松安装多个linux,本文通过图文为大家进行了详细介绍,需要的可以收藏一下

WSL

Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。如果使用Windows10 2004以上,可以通过WSL2来窗口化运行桌面应用,也不需要另外安装其他的X服务器。该子系统不能运行所有Linux软件,但学习大多数内部命令的使用绝对方便!

准备工作

检查Window10版本,低于 18362 的版本不支持 WSL。运行 winver 的结果: 

或者在 Windows 命令提示符下输入 ver 命令:

C:\Users\hann>ver
Microsoft Windows [版本 10.0.23511.1000] 

检查一下Windows Terminal是否为“已初装”状态:

打开Terminal,并按快捷键 Ctrl , (Ctrl键和逗号)调出启动设置界面

照下图所示设置,保存退出: 

安装Linux子系统

打开MicrosoftStore,搜索Linux,然后安装自己喜欢的发行版,我安装了Ubuntu和Debian。

如还无法正常安装,可以试试以下步骤:

  • 打开子系统功能
  • 以管理员身份启动PowerShell,输入如下内容,以启用Windows子系统功能:
  • dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart
  • 然后输入如下内容,以启用虚拟机平台功能:
  • dism.exe/online/enable-feature/featurename:VirtualMachinePlatform/all/norestart
  • 完成之后,重启计算机。
  • 下载Linux内核更新包
  • 点击此链接,以下载适用于x64计算机的WSL2Linux内核更新包。
  • 下载完成后,安装。
  • 然后以管理员身份运行PowerShell,输入如下内容,以设置WSL2为默认版本:
  • wsl--set-default-version2

设置Unix用户名和密码

安装成功后,进入设置用户:

查看帮助 help

Ubantu的帮助:

hann@HannYang:~$ help
GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu)
These shell commands are defined internally.  Type `help' to see this list.
Type `help name' to find out more about the function `name'.
Use `info bash' to find out more about the shell in general.
Use `man -k' or `info' to find out more about commands not in this list.

Debian的帮助:

hann@HannYang:~$ help
GNU bash, version 5.2.15(1)-release (x86_64-pc-linux-gnu)
These shell commands are defined internally.  Type `help' to see this list.
Type `help name' to find out more about the function `name'.
Use `info bash' to find out more about the shell in general.
Use `man -k' or `info' to find out more about commands not in this list. 

两者列出的内部命令列表基本相同:

 job_spec [&]                                   history [-c] [-d offset] [n] or history -an>
 (( expression ))                               if COMMANDS; then COMMANDS; [ elif COMMANDS>
 . filename [arguments]                         jobs [-lnprs] [jobspec ...] or jobs -x comm>
 :                                              kill [-s sigspec | -n signum | -sigspec] pi>
 [ arg... ]                                     let arg [arg ...]
 [[ expression ]]                               local [option] name[=value] ...
 alias [-p] [name[=value] ... ]                 logout [n]
 bg [job_spec ...]                              mapfile [-d delim] [-n count] [-O origin] [>
 bind [-lpsvPSVX] [-m keymap] [-f filename] [>  popd [-n] [+N | -N]
 break [n]                                      printf [-v var] format [arguments]
 builtin [shell-builtin [arg ...]]              pushd [-n] [+N | -N | dir]
 caller [expr]                                  pwd [-LP]
 case WORD in [PATTERN [| PATTERN]...) COMMAN>  read [-ers] [-a array] [-d delim] [-i text]>
 cd [-L|[-P [-e]] [-@]] [dir]                   readarray [-d delim] [-n count] [-O origin]>
 command [-pVv] command [arg ...]               readonly [-aAf] [name[=value] ...] or reado>
 compgen [-abcdefgjksuv] [-o option] [-A acti>  return [n]
 complete [-abcdefgjksuv] [-pr] [-DEI] [-o op>  select NAME [in WORDS ... ;] do COMMANDS; d>
 compopt [-o|+o option] [-DEI] [name ...]       set [-abefhkmnptuvxBCHP] [-o option-name] [>
 continue [n]                                   shift [n]
 coproc [NAME] command [redirections]           shopt [-pqsu] [-o] [optname ...]
 declare [-aAfFgilnrtux] [-p] [name[=value] .>  source filename [arguments]
 dirs [-clpv] [+N] [-N]                         suspend [-f]
 disown [-h] [-ar] [jobspec ... | pid ...]      test [expr]
 echo [-neE] [arg ...]                          time [-p] pipeline
 enable [-a] [-dnps] [-f filename] [name ...>   times
 eval [arg ...]                                 trap [-lp] [[arg] signal_spec ...]
 exec [-cl] [-a name] [command [arguments ...>  true
 exit [n]                                       type [-afptP] name [name ...]
 export [-fn] [name[=value] ...] or export ->   typeset [-aAfFgilnrtux] [-p] name[=value] .>
 false                                          ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]
 fc [-e ename] [-lnr] [first] [last] or fc -s>  umask [-p] [-S] [mode]
 fg [job_spec]                                  unalias [-a] name [name ...]
 for NAME [in WORDS ... ] ; do COMMANDS; don>   unset [-f] [-v] [-n] [name ...]
 for (( exp1; exp2; exp3 )); do COMMANDS; don>  until COMMANDS; do COMMANDS; done
 function name { COMMANDS ; } or name () { CO>  variables - Names and meanings of some shel>
 getopts optstring name [arg]                   wait [-fn] [id ...]
 hash [-lr] [-p pathname] [-dt] [name ...]      while COMMANDS; do COMMANDS; done
 help [-dms] [pattern ...]                      { COMMANDS ; }

日常使用

打开后的样子: 

键几个linux命令试试:

到此,安装结果就能正常使用了。

exit

以上就是Windows10使用Linux子系统实现轻松安装多个linux的详细内容,更多关于Windows10安装linux的资料请关注脚本之家其它相关文章!

相关文章

  • 在CentOS / RHEL上设置 SSH 免密码登录的方法

    在CentOS / RHEL上设置 SSH 免密码登录的方法

    本篇文章主要介绍了在CentOS / RHEL上设置 SSH 免密码登录的方法,自动登录配置好以后,你可以通过它使用 SSH (Secure Shell)和安全复制 (SCP)来移动文件。
    2017-03-03
  • Centos搭建图形化界面VNC的方法

    Centos搭建图形化界面VNC的方法

    在使用腾讯云的centos云服务器时如果你需要使用图形化界面,比如图形界面安装oracle,应该怎么做?今天就和大家分享下图形界面的安装和vnc的搭建,来解决刚才提到的问题
    2015-10-10
  • linux服务器被植入ddgs、qW3xT.2挖矿病毒的处理实战记录

    linux服务器被植入ddgs、qW3xT.2挖矿病毒的处理实战记录

    这篇文章主要给大家介绍了关于linux服务器被植入ddgs、qW3xT.2挖矿病毒的处理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧
    2018-09-09
  • Linux云服务器挂载新磁盘的方法步骤

    Linux云服务器挂载新磁盘的方法步骤

    这篇文章主要介绍了Linux云服务器挂载新磁盘的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • LNMP下FTP服务器的安装与使用方法(Pureftpd和Proftpd)

    LNMP下FTP服务器的安装与使用方法(Pureftpd和Proftpd)

    FTP是网站文件维护中使用比较多的,目前LNMP一键安装包中有Pureftpd和Proftpd服务器安装脚本
    2013-06-06
  • Linux CentOS6.6系统中安装mysql源码包的方法

    Linux CentOS6.6系统中安装mysql源码包的方法

    Linux系统中如何安装mysql的源码包呢?这里以CentOS6.6系统中安装MySQL的源码包,进行讲解。本文分步骤给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2016-10-10
  • 详解linux为阿里云ECS(CentOS7)配置IPv6地址

    详解linux为阿里云ECS(CentOS7)配置IPv6地址

    这篇文章主要介绍了详解linux为阿里云ECS(CentOS7)配置IPv6地址,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Linux systemV消息队列和信号量详解

    Linux systemV消息队列和信号量详解

    这篇文章主要介绍了Linux systemV消息队列和信号量,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • 检测ip和port是否可连接的方法

    检测ip和port是否可连接的方法

    今天小编就为大家分享一篇检测ip和port是否可连接的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Vim如何使用相对行号实现一切操作详解

    Vim如何使用相对行号实现一切操作详解

    在使用用Vim时时常会遇到像复制多行或者想快速向下/向上移动多行时而不知道行数的情况, 今天发现一个Vim对此有帮助的特性: 相对行号,下面这篇文章主要给大家介绍了关于Vim如何使用相对行号实现一切操作的相关资料,需要的朋友可以参考下。
    2017-11-11

最新评论