想体验 Linux,却舍不得卸载 Windows ?
想学习 Linux,却懒得装 VM?
想使用 Linux,却没有第二台电脑?
很多小白内心的 OS 是,为毛这个世界这么复杂,需要各平台切换来切换去的,还能不能让我安静的编程了。
好吧,也许跟我一样喜欢极简的你,可以体验一下这个 Windows 10 的新功能。
确切得说,不应该叫做 Windows / Linux 合体。它实际上是 Windows 10 新推出的专属 Linux 的 Windows 子系统。
官方名称为 Bash/WSL。
也可以叫做 Bash on Ubuntu on Windows。
也许很多人已经使用过这个功能了,但是在这里,我不防再给大家普及一下,因为我觉得使用它确实太方便了。
什么是 Bash/WSL
WSL 的全称是 Windows Subsystem for Linux,所谓 Bash,是一个 Linux Shell。
通俗点讲,就是一个 Windows 中只带命令行、不带 GUI 的 Linux 系统。
先上个图给大家感受一下吧。
安装好之后,它会出现在开始菜单。
接下来出现的命令行就跟 Linux 上的终端一模一样了。
没错,这就是 Windows 中的 Linux 系统。
从图中,你可以看出当前所用系统以及 Linux 目录结构。
Windows 10 creators update 中装的是 Ubuntu 16.04.2 LTS。
Bash/WSL 评价
也许有人把它当作一个不中用的玩具,可是微软的确是想把它打造成一个真的二手转让地图系统,让用户可以在 Windows 和 Linux 之间*切换。
从微软的官方说明看,这不仅仅是给拿来学习和练手的大学生用的,Bash/WSL 面向的用户是众多的开发者:
- Web / App 开发者,
- Open Source 开发者,
- 跨平台开发者。
所以我们有理由相信,跟原生 Linux 相比,Bash/WSL 有着接近相同的使用体验。
有权威人士使用跨平台的性能测试工具进行测试发现,在 Windows 下运行这些原生的 ELF 二进制程序和在 Linux 下运行所消耗的 CPU 、内存和 IO 性能相当。
另外,Bash/WSL 拥有原生 Linux 大部分的功能:
- 执行 Linux 大部分的命令,例如 grep, sed, awk 等等。
- 使用 Linux 兼容文件系统、目录结构,无缝访问 Windows 目录。
- 执行 Bash Shell 脚本,以及 Linux 命令行 App (vim,emacs 等)。它支持多种语言 (Javascript/node.js, Ruby, Python, C/C++, C# & F#, Rust, Go 等)和服务(sshd, MySQL, Apache, lighttpd)。
- 通过 apt 安装 Linux 工具。
- 等等。
当然, 目前来说,它仅仅只有一岁,还有着很多的局限,例如:
- 仅仅支持命令行,不支持 GUI
- 只支持 Ubuntu
- Linux 功能支持不完备
不过我相信以微软的实力,Bash/WSL 功能会越来越完善,体验会越来越好的。
我在前面一篇文章中讲过,VS2015/2017 可以进行 Linux 开发,这恰恰是 Bash/WSL 的有力补充。 有了WSL,再加上 Visual Studio,真的给开发人员带来很大的便利,不用再恼火得在各个平台之间切换了。
网上有人评论说,这个功能晚了 10 年,早出来的话,早就大一统了。虽然略显夸张,但我还是很支持微软的这个 Linux 功能,因为对开发人员来说,有的时候,简单未必不是好事。
不过有一点大家搞清楚,微软提供的 Linux 的所有功能都在 User Mode,做嵌入式或者本身需要操作 Linux Kernel 的,你还得用真实的 Linux ,这一点不可替代。
尝试一下
我前面说了这么多,你是不是也有点跃跃欲试,想安装下体验看看了?
那么开始吧。
首先,你的电脑系统必须同时满足以下两个条件:
至少是 Windows 10 Anniversary Update
必须是 64 bit
然后,想继续安装的话,看我下面这篇文章吧:
在 Windows 上搭建 Linux 子系统详细教程
最后,看完文章觉得实用的话,就顺手点个赞吧。