通过 WSL在Windows下愉快的玩耍Linux

原创
2017/02/06 22:16
阅读数 5.6K

本文同步至https://waylau.com/enable-windows-subsystem-for-linux/

WSL(Windows Subsystem for Linux) 是 在Windows系统中为那些熟悉Linux用户准备的诸多子系统功能。换言之,你可以在Windows环境下来执行Linux操作,运行 Linux程序。这对于Windows、Linux双系统有需求的用户来说是个不错的功能。本文详细介绍了如何使用 WSL。

WSL 简介

Bash 是 Linux/Unix 上非常流行的命令行 Shell,它是 Ubuntu、RHEL 等 Linux 发行版以及苹果 OS X 操作系统默认的命令行 Shell。通过 Windows Subsystem for Linux(WSL)这一 Windows 10 的最新特性实现的,使用此功能,你可以在 Windows 中原生运行 Linux 的大多数命令行程序。

其实在 Windows 7 之前的操作系统中,都含有一个 POSIX 子系统,以便将 UNIX 的程序源代码编译为 Windows 程序。微软为 POSIX 子系统提供了众多的 UNIX 工具,而这些工具都是基于 POSIX 子系统直接使用GNU 的原生代码编译实现的,你也可以在这个 POSIX 子系统运行 C Shell、Korn Shell 等命令行 Shell。不过Windows 7 以后的操作系统中都默认移除了 POSIX 子系统。如果有兴趣的话可以在 Windows 7 操作系统中的“启用或关闭 Windows 功能”中启用“基于 UNIX 的应用程序子系统”,即可体验 POSIX 子系统。

启用 WSL 功能之后,如果使用 Bash,则 Windows 10 操作系统会下载一个由 Canonical 创建的 Ubuntu用户模式镜像(Ubuntu user-mode image),然后 Bash 程序以及其他的 Linux 二进制程序就可以运行于该 Ubuntu 镜像上。此外,微软也承诺未来会提供更多 Linux 发行版以供选择。

条件限制

WSL 只在 Windows 10 版本以上提供该功能,所以,如果你想玩转 WSL ,请升级你的 Windows。

切换到开发者模式下

启动 WSL 功能

在 选中 “Windows Subsystem for Linux”来启用 WSL 功能。

确认后,请重启计算机。

进入 Bash

进入 Bash,按照提示执行“y”,此时将会自动从 Windows 应用商店来下载 Linux (目前,暂时只支持Ubuntu系统)。

可能会由于网络原因安装会中断,请重复执行安装或者翻墙。

设置用户名密码

安装完成后,会提示你设置用户名和密码。当一切都完成后,你就可以像Linux 一样玩耍了。

设置Ubuntu镜像

使用镜像,可以加快软件的安装。编辑/etc/apt/sources.list文件, 在文件最前面添加以下条目(操作前请做好相应备份)

deb http://mirrors.163.com/ubuntu/ wily main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ wily-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ wily-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ wily-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ wily-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ wily main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ wily-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ wily-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ wily-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ wily-backports main restricted universe multiverse

实战

我从网上找了一个 Linux 程序的源码,进行了编译,并成功运行了。

输入图片说明

是什么程序,程序员都懂的 →_→

参考资料

展开阅读全文
打赏
5
85 收藏
分享
加载中

引用来自“Kingcin”的评论

这图片都不能显示,这客户端还是有很多不足啊。既然把文章引过来就不要让用户打开另外一个软件再去找这篇文章了吧。

引用来自“waylau”的评论

你是用手机app 访问的么?我用PC浏览器看,图片都是正常的啊~
是客户端的问题么??
Android客户端。
2017/03/12 15:56
回复
举报
waylau博主

引用来自“Kingcin”的评论

这图片都不能显示,这客户端还是有很多不足啊。既然把文章引过来就不要让用户打开另外一个软件再去找这篇文章了吧。
你是用手机app 访问的么?我用PC浏览器看,图片都是正常的啊~
是客户端的问题么??
2017/03/04 15:03
回复
举报
这图片都不能显示,这客户端还是有很多不足啊。既然把文章引过来就不要让用户打开另外一个软件再去找这篇文章了吧。
2017/03/04 15:01
回复
举报

引用来自“ak_birdofprey”的评论

蛋疼,直接装个Gnu/Linux不就完了嘛??!!啥叫Gnu,就是你可以任意修改组装和拆解优化你认为值得折腾的部分,并保证这样的权利别人也能拥有。只要你不伤害别人,自己觉得好,那就去干!!!

引用来自“waylau”的评论

有时候公司的电脑,不是随便可以换系统的。
另外,公司的一些 OA软件只能运行在Windows 下,这个是最烦人的。

所以,在这种场合下,WSL 有其存在的必要性。

引用来自“shmilytsui”的评论

OA现在客户端还不支持跨平台,特别是和签章相关的东西。
基本上都是windows+IE(浏览器现在支持的多一些了,但也都是基于W的)

引用来自“人生能绕几个圈”的评论

市面上卖得好的oa大多都同时提供Windows/linux版,客户可以平滑迁移

引用来自“shmilytsui”的评论

泛微和致远的OA都不能很好的支持linux,包括OSX,只要和签章留痕一类的插件有关,只能上windows。
我记得以前在群里看过通达的一个截图,是通达OA的精灵客户端,运行在cenos上,算是一个进步吧。
通达早就支持linux了,我们09年帮客户上oa就用linux了,用到现在客户很满意,比windows省不少钱,毕竟公司用盗版不太好
2017/03/01 10:00
回复
举报

引用来自“爱吃小面”的评论

引用来自“谢雨齐”的评论

最后的那个是什么
硬盘女神,你懂的。。。

@爱吃小面 源码在哪儿?分享一下
2017/02/12 07:18
回复
举报

引用来自“木头r”的评论

东西是好东西,windows命令行工具太烂。怎么的都没ubunut下命令行工具 用到舒服。
你需要cmder
2017/02/10 12:25
回复
举报

引用来自“忧郁的小王子”的评论

这玩意就是一玩具, 怎么也谈不上愉快地玩耍,bug太多
所以只能玩玩,不过也称不上愉快😂
2017/02/10 10:09
回复
举报

引用来自“ak_birdofprey”的评论

蛋疼,直接装个Gnu/Linux不就完了嘛??!!啥叫Gnu,就是你可以任意修改组装和拆解优化你认为值得折腾的部分,并保证这样的权利别人也能拥有。只要你不伤害别人,自己觉得好,那就去干!!!

引用来自“waylau”的评论

有时候公司的电脑,不是随便可以换系统的。
另外,公司的一些 OA软件只能运行在Windows 下,这个是最烦人的。

所以,在这种场合下,WSL 有其存在的必要性。

引用来自“shmilytsui”的评论

OA现在客户端还不支持跨平台,特别是和签章相关的东西。
基本上都是windows+IE(浏览器现在支持的多一些了,但也都是基于W的)

引用来自“人生能绕几个圈”的评论

市面上卖得好的oa大多都同时提供Windows/linux版,客户可以平滑迁移
泛微和致远的OA都不能很好的支持linux,包括OSX,只要和签章留痕一类的插件有关,只能上windows。
我记得以前在群里看过通达的一个截图,是通达OA的精灵客户端,运行在cenos上,算是一个进步吧。
2017/02/10 09:49
回复
举报
用过一段时间,遇到了三个很头疼的问题:

1. c,d,e盘在/mnt/c/ /mnt/d/ /mnt/e/ 这样的路径下,会引起一些问题,我是在build一些库时发现的,错误提示大概是mount的路径无法进行某些操作之类的;
2. 网速,不明原因地在WSL下会非常慢(几K/s),找到一些方法改进后,还是只有windows下一半速度;
3. windows下git clone下来的库,绝对会发生行尾错误,进而导致各种 *.sh make 执行错误(明明是两行却被合并为了1行)(我确定.gitattribute文件里设置的行尾正确),这个原因我不清楚。
2017/02/09 22:36
回复
举报
waylau博主

引用来自“ak_birdofprey”的评论

蛋疼,直接装个Gnu/Linux不就完了嘛??!!啥叫Gnu,就是你可以任意修改组装和拆解优化你认为值得折腾的部分,并保证这样的权利别人也能拥有。只要你不伤害别人,自己觉得好,那就去干!!!

引用来自“waylau”的评论

有时候公司的电脑,不是随便可以换系统的。
另外,公司的一些 OA软件只能运行在Windows 下,这个是最烦人的。

所以,在这种场合下,WSL 有其存在的必要性。

引用来自“shmilytsui”的评论

OA现在客户端还不支持跨平台,特别是和签章相关的东西。
基本上都是windows+IE(浏览器现在支持的多一些了,但也都是基于W的)

引用来自“人生能绕几个圈”的评论

市面上卖得好的oa大多都同时提供Windows/linux版,客户可以平滑迁移
正解!
2017/02/09 18:48
回复
举报
更多评论
打赏
43 评论
85 收藏
5
分享
返回顶部
顶部