美文网首页shell命令linux
windows下安装linux子系统

windows下安装linux子系统

作者: 肆月之风 | 来源:发表于2019-01-16 20:46 被阅读0次
    wsl.png

    日常开发中总会遇到一些只能在linux下运行的软件或者框架,让像我这样的windows重度使用者甚是烦恼,估计是微软良心发现了,终于出手在windows下也可以跑linux了,从此什么虚拟机、cygwin都见鬼去吧!本文将介绍如何在windows下安装linux并使用。

    什么是WSL?

    WSL是Windows Subsystem for Linux的简称,就是Windows系统上的一个Linux子系统,安装后,不用再安装臃肿的Vmware和VirtualBox等虚机机系统,就可以直接在Windows上体验原生的Linux应用了,目前微软主要是和Canocical进行合作,推出的是Ubuntu系统,未来将会有更多的发行版供选择。

    能做什么?

    Windows子系统Linux允许开发人员直接在Windows上运行GNU / Linux环境 - 包括大多数命令行工具,实用程序和应用程序 - 未经修改,无需虚拟机的开销。

    开始安装Linux

    准备

    Tip

    • 本文适用于Windows build 16215或更高版本,建议升级windows 10到最新版本。
    • 在为WSL安装任何Linux发行版之前,必须确保启用“Windows Subsystem for Linux”可选功能,设置后需要重启电脑,注意重启前该保存的保存。

    开启“Windows Subsystem for Linux”的两种方式:

    1. 以管理员身份打开PowerShell并运行:
    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    
    1. 打开“启用或关闭windows功能”(从微软小娜或者控制面板中搜索打开):

    [图片上传失败...(image-1e0cba-1547642734845)]

    选择Linux安装

    1. 打开Microsoft Store搜索Linux,会出现Linux的专题,点击“获取这些应用”按钮。

    [图片上传失败...(image-a82b34-1547642734845)]

    1. 目前支持的Linux系统有 Ubuntu、SUSE、Debian、Kali,估计以后会支持更多的Linux发行版本,选择一个喜欢的Linux安装,此处我选择的是 Ubuntu 系统。

    [图片上传失败...(image-9871fe-1547642734845)]

    1. 安装后需要进行初始化,启动一个新的实例,可以通过单击Windows应用商店应用中的“启动”按钮,或从“开始”菜单启动已安装的 Ubuntu 来执行此操作。

    [图片上传失败...(image-3d59ef-1547642734845)]

    1. 第一次启动运行时,将打开一个控制台窗口,需要等待一两分钟才能完成安装。

    初始化过程中,Linux系统文件被解压缩并存储在电脑上,以后可以随时使用。这可能需要大概一分钟左右,以后再次运行基本都是很快的。

    1. 安装完成后,系统将提示您创建新的用户帐户及密码,此账户和密码与windows系统没有任何关系。

    [图片上传失败...(image-86bff5-1547642734845)]

    当打开一个新的Linux命令行窗口后,是不需要输入用户名、密码的,但是如果使用sudo命令则将被要求输入密码,建议密码尽量设置的简单一些。

    1. 更新软件包,执行以下命令:
    sudo apt update && sudo apt upgrade
    

    用户账户和权限

    1. 创建的Linux账户将是Linux系统的默认账户,会在Linux系统启动后自动登录,此帐号默认隶属于Linux管理员。
    2. 不同的Linux子系统的账户是相互独立的,每次安装新的Linux子系统时都需要创建新的账户。
    3. Windows和Linux的权限是相互独立互不影响的。Windows权限模型管理进程对Windows资源的权限;Linux权限模型控制进程对Linux资源的权限。

    WSL管理和配置

    1. Unbutu 系统安装的 windows 目录
    C:/Users/XXX/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/rootfs/
    

    [图片上传失败...(image-8daa75-1547642734845)]

    1. 在Windows下运行Linux子系统的方法有:
    - 在开始菜单中搜已安装的Linux子系统点击直接启动运行
    - wsl.exe 或者 bash.exe
    - wsl [command] 或者 bash -c [command]
    
    1. 在命令行中运行wsl会直接进入默认的Linux子系统,并保留当前的工作目录,而在命令行中运行Linux子系统(例如:ubuntu)则会进入主目录。

    2. 常用命令

    • Linux子系统启动后会自动将各个盘符下的目录挂载到 /mnt/ 目录下
    访问C盘:/mnt/c/
    访问D盘:/mnt/d/
    ...
    
    • 列出所有可用的Linux子系统
    wslconfig /list
    
    • 列出所有的Linux子系统,包括不可用的
    wslconfig /list /all
    
    • 设置默认的Linux子系统,设置后执行 wsl [command] 将会在此默认的Linux子系统中运行
    wslconfig /setdefault <DistributionName>
    
    • 卸载Linux子系统
    wslconfig /unregister <DistributionName>
    

    警告
    卸载后,与该Linux子系统相关的所有数据、设置和软件将永久丢失。从商店重新安装将安装新的Linux子系统。

    构建自定义的Linux子系统

    WSL不仅仅支持 Windows Store 里的那几个 Linux 系统,其实还支持 RedHat、CentOS 等 Linux 系统,只不过微软官方没有去搞,而是留给了开发者自己去自定义创建和维护,具体创建可以参考其Github Distro Launcher GitHub存储库 上的说明创建自定义Linux发行版程序包。

    但我觉得大部分有需求的基本都是想要个现成的系统来安装,Github https://github.com/yuk7/wsldl 这个项目就维护了不少 Linux 系统,包括:Alpine Linux、Arch Linux、Artix Linux、CentOS,参考说明即可很方便的安装。

    [图片上传失败...(image-1f3481-1547642734845)]

    由于服务器端一般都选择 CentOS 系统,所以为了保持开发和生产环境一直,我本机安装的是 CentOS,安装非常方便,下载下来安装包后,解压到安装目录下,以管理员身份运行CentOS.exe即可,安装完成后通过执行命令 wslconfig /list 就会发现wsl下多了个 CentOS 系统。

    [图片上传失败...(image-29b82f-1547642734845)]

    这个 CentOS 其实是从 docker 里镜像过来的,是个精简版的操作系统,很多命令都是缺失的,如果想用需要自己去 yum 安装。

    Tip
    安装一定要以管理员身份去运行,否则可能会安装失败。

    原创文章转载请注明:转载自:windows下安装linux子系统

    相关文章

      网友评论

        本文标题:windows下安装linux子系统

        本文链接:https://www.haomeiwen.com/subject/zpjomftx.html