windows下安装linux子系统

日常开发中总会遇到一些只能在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”的两种方式:

以管理员身份打开PowerShell并运行:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

打开“启用或关闭windows功能”(从微软小娜或者控制面板中搜索打开)

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

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

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

第一次启动运行时,将打开一个控制台窗口,需要等待一两分钟才能完成安装。
初始化过程中,Linux系统文件被解压缩并存储在电脑上,以后可以随时使用。这可能需要大概一分钟左右,以后再次运行基本都是很快的。

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

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

更新软件包,执行以下命令:

sudo apt update && sudo apt upgrade

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

C:/Users/XXX/AppData/Local/Packages/CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc/LocalState/rootfs/

在Windows下运行Linux子系统的方法有:

- 在开始菜单中搜已安装的Linux子系统点击直接启动运行
- wsl.exe 或者 bash.exe
- wsl [command] 或者 bash -c [command]

在命令行中运行wsl会直接进入默认的Linux子系统,并保留当前的工作目录,而在命令行中运行Linux子系统(例如:ubuntu)则会进入主目录。

常用命令

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,参考说明即可很方便的安装。

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

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

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

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

作者:肆月之风
链接:https://www.jianshu.com/p/ad251fd00295
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/weixin_43897590/article/details/106662983