双系统的日子结束了:Windows和Linux将合二为一

点击上方“菜鸟学Python”,选择“星标”公众号

超级无敌干货第一时间推给你!!!

图源:unsplash

很长一段时间以来,双系统是我唯一的解决方案。

 

我一直在用的是一台苹果笔记本,它几乎可以做任何事:开发、写提案、创作音乐等。但它也不是十全十美的,我很害怕供应商被锁定,也担心自己过于依赖苹果的奇思妙想,因此我也在寻求新的解决方案。

 

笔者着手搭建了一个机器学习工作站;出色的CPU、大量的RAM和性能极佳的GPU等等。除了要用Microsoft Office写提案,我选择用的操作系统几乎都是Ubuntu。

 

Office online还没有面市,而LibreOffice很糟糕。因此,我的解决方案是安装Ubuntu和Windows 10双系统。从苹果系统切换到Ubuntu非常自由,而且选择构建个人PC几乎没有界限。

 

在无数次系统切换之后,WSL出现了。笔者开始将工作流程的一部分移到Windows,但还是有很多功能缺失。然而,WSL 2似乎改变了游戏规则。本文将为你展示这些奇妙的改变。

 

什么是WSL 2

 

WSL2是WSL中体系结构的新版本,它更改了 Linux 与 Windows 进行交互的方式。

 

该版本提高了文件系统性能,并增加了完全的系统调用兼容性。当然,Linux 分发版可以作为 WSL 1 或 WSL 2 运行,你可以自行选择,并且可以随时在它们之间进行切换。

 

WSL 2 是对基础体系结构的一次重大改造,它使用虚拟化技术和 Linux 内核来实现其新功能。微软处理了琐碎的细节,这样你就可以专注于重要的事情了。

 

安装

 

微软承诺将在不久的将来会为WSL 2提供流畅的安装体验,并且能够通过Windows更新来更新Linux内核。但目前的安装过程有点复杂,但也不必忧虑。

 

示例中将在Windows 10上安装Ubuntu20.04,但对于微软商店中的任何分发版来说,安装过程都是一样的。首先,启用“适用于 Linux 的 Windows 子系统”可选功能。以管理员身份打开PowerShell并运行:

 

dism.exe /online /enable-feature/featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

接下来,将系统更新到WSL 2,必须满足以下条件:Windows 10已更新到版本2004;在BIOS设置中启用Intel的“虚拟机平台”。然后,以管理员身份启动PowerShell并运行:

 

dism.exe /online /enable-feature/featurename:VirtualMachinePlatform /all /norestart

接着重新启动计算机,以完成 WSL 安装并更新到 WSL 2。然后,在安装新发行版时,将WSL 2设置为默认版本。以管理员身份打开PowerShell 并运行以下命令,以将 WSL 2 设置为默认版本:

 

wsl --set-default-version 2

运行该命令后可能会看到以下命令:

 WSL 2 requires anupdate to its kernel component. For information please visithttps://aka.ms/wsl2kernel.

按照链接从该页安装MSI,在计算机上安装一个Linux内核,供WSL 2使用。安装内核后,再次运行该命令,该命令应成功完成。

 

最后,安装所选Linux分发版。打开微软商店,搜索Ubuntu 20.04LTS。安装完成后,在开始菜单上找到一个新的Ubuntu应用,启动并按照说明完成安装。

 

检查所选Linux分发版是否设置为WSL 2,请运行wsl --list –verbose。若所选Linux分发版受WSL 1支持,请运行wsl --set-version<distribution name> <versionNumber>。

 

完成啦!这样就可以有一个完整的Ubuntu分发版在Windows 10中运行。

开发人员工作站

 

Ubuntu已经准备好,现在可以安装任何所需程序了。如果你是数据科学家,则可以安装最新的Anaconda发行版;如果你是前端工程师,则可以安装angular和npm等。

 

图源:unsplash

有两个工具笔者想重点讲一下:Visual Studio Code和Docker + Kubernetes。

 

VisualStudio Code

Visual Studio Code是许多开发人员选择的集成开发环境(IDE),现在已启用WSL 2,VS Code的远程开发扩展包(Remote Development)绝对必不可少。

 

此插件支持WSL 2、容器映像甚至通过SSH的远程VM上的源代码进行远程开发。因此,现在可以在受WSL 2支持的Linux分发版中创建项目文件夹,并使用安装在Windows 10上的Visual Studio Code编辑器作为IDE。

 

它的功能包括:全语言支持IntelliSense,git集成, Visual Studio Code扩展,调试器和终端。

 

Docker +Kubernetes

 

Docker for Windows很出色,但它缺少一样笔者最想要的东西,因此每当需要为代码构建docker映像时,我就得在Windows和Ubuntu之间切换。但WSL 2完全支持docker,这甚至比纯粹的Linux体验更好。

 

若要启动,请点击Docker Desktop设置,勾选启用基于WSL 2的引擎复选框 Use the WSL 2 basedengine 。

 

启动Dockerfor WSL 2

 

此外,可以通过点击设置中的Kubernetes按钮,勾选Restart Kubernetes Cluster复选框,来运行本地Kubernetes集群。

 

启用Kuberneteson WSL 2

 

现在,可以在切换回WSL 2中的Ubuntu,运行docker version或kubectl version ,并确认这两个版本已经启动并运行。

 

Docker和Kubernetes在WSL 2中运行

 

福利:The new Windows Terminal

应用商店将新的Windows Terminal定义为一个现代化、快速、高效、强大、高产的终端工具,供命令行工具和shell(如命令提示符,PowerShell和WSL)的用户使用,主要功能包括多Tab支持、窗格、Unicode和UTF-8字符支持、基于 GPU 运算的文本渲染引擎,以及自定义主题、样式和配置。

 

此外,它非常美观,可以通过它的可访问设置(仅仅是一个JSON文件)随心所欲地设置样式。

产品路线图

 

图源:unsplash

现在仍然缺少一些功能,但WSL 2运行已经畅通无阻了。在接下来的几个月里,我们还可以用一个命令安装WSL。打开一个Windows Terminal并输入 wsl.exe --install。此外,在首次进行安装时,WSL 2 将成为默认版本。

 

开发者最期待的功能有两个:GPU支持和GUI应用支持。自从WSL 1发布以来,向 WSL 添加 CUDA 和/或 GPU Compute 支持一直占据很高的呼声。过去几年中,WSL、Virtualization、DirectX、Windows Driver 团队,以及他们的芯片合作伙伴一直在致力于提供此功能。

在WSL 2上训练深度学习模型(启用CUDA)

 

此外,Linux还将支持GUI应用程序。例如,可以在已安装的Linux环境中运行首选的Linux GUI文本编辑器或IDE,甚至可以在Windows机器上开发Linux GUI应用程序!

WSL2支持Linux GUI

 

WSL 2完全有能力将Windows PC变成运行Linux分发版的开发人员工作站,它速度在线,功能在线,未来还有更多值得探索的东西。双系统的日子就要结束了,更极致的体验依然到来。


近期八大热门:

发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片!
盗墓热再起!我爬取了6万条《重启之极海听雷》的评论,发现了这些秘密
用Python一键生成炫酷九宫格图片,火了朋友圈
菜鸟也疯狂!8分钟用Python做一个酷炫的家庭随手记
Github获8300星!用Python开发的一个命令行的网易云音乐
一道Python面试题,硬是没憋出来,最后憋出一身汗!卧槽!Pdf转Word用Python轻松搞定!教你6招,不错的Python代码技巧!
由菜鸟学Python原班人马打造的公众号:程序员GitHub,现已正式上线!接下来我们将会在该公众号上,为大家分享GitHub上优质的开源神器,程序员圈的趣事,坚持每天一篇原创文章的输出,感兴趣的小伙伴可以关注一下哈!

我们在B站上录制了大量的视频,欢迎大家交流学习

1). 花木兰到底好看不,我用Python爬取上万条评论

2). 80行Python代码一键轻松把Pdf转word

3). 用Python一键把图片转漫画

4). 再见付费软件,我用70行Python搞定

5). 用Python分析“青春有你2”

6). 用Python三步制作短视频

7). 用Python实现一个弹球游戏

8). 10行代码实现美图秀秀

9). 50行代码用Python批量做海量小姐姐素描图

点这里,直达菜鸟B站
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值