💁🏻♂️《今日头条》 2020-11-02 《漫谈在Windows Server 2019中安装使用WSL》 童建平
熟稔IT历史的朋友一定不会忘记98蓝屏事件:时任微软CEO的比尔·盖茨和助理 Chris Capossela在1998年春季计算机分销商展会(COMDEX )现场演示Windows 98的"即插即用"(plug-and-play)新特性时,经历了演示计算机当场冷不丁甩出蓝屏死机(Blue Screen of Death,简称BSOD)界面的尴尬一幕:
尽管微软极力想要化解其中的尴尬,但该事件还是在该公司的历史上留下了难以抹去的一笔。蓝屏死机几乎已经成为了微软Windows操作系统的标志。
那么,作为从业IT的您,如果是一名运维工程师,当你正在紧急处理线上故障时,突然办公电脑蓝屏死机了;又亦或您是一名程序猿,正在专注"写bug"时,也BSOD了,这是多么令人崩溃的事情啊。所以,拥有一个稳定的操作系统,是您的不二选择。
笔者自从Windows Server 2000以来,一直用Windows Server系列产品作为办公操作系统,深谙其利:
- Windows Server系列一般基于同时期的Windows家庭版开发而来,拥有相同的内核,如Windows Server 2012就是一套基于Windows 8基础上开发出来的服务器版系统,Windows Server 2019则基于Windows 10。如果您细心,会注意到很多Windows Update更新文件,Windows Server系列与Windows家庭版系列其实是相同的文件。所以使用Windows Server系列不会对您的日常办公带来什么不便。
- 作为办公用途,我们一般不需要华丽的Windows家庭版界面、多余的多媒体等功能,所以使用Windows Server系列作为办公操作系统完全适合,且能带来更高的稳定性(如基本告别蓝屏死机)、安全性。
- Windows Server系列在内存管理和网络功能等方面要比Windows家庭版系列表现优秀,要求的硬件配置也更低(比如使用Windows 7最低内存要求为4G,Windows Server 2008 R2最低内存要求仅为512M),也就意味着同等硬件配置情况下,使用Windows Server能使用更大的内存等资源,带来更高的工作效率。
- 不管您是运维工程还是程序猿,是不是经常在工作中需要搭建测试环境用于日常工作调试?在Windows Server系列上安装这些测试环境自然比在Windows家庭版系列上安装使用更便捷高效及稳定。
因此,笔者极力推荐各位安装使用Windows Server系列最新版本Windows Server 2019用于办公,再配合安装使用WSL,可以告别以前在办公电脑上还要安装虚拟机安装LNMP等测试环境的窘境了。
大家知道,Windows 10推出了备受推崇的WSL。WSL,即Windows Subsystem for Linux,中文名称:适用于Linux的Windows子系统,可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。如今,Windows Server 2019在版本1709及更高版本上也可以安装使用WSL了。
启用WSL,您可以:
- 选择您偏好的 GNU/Linux 分发版。
- 运行常用的命令行软件工具(例如 grep、sed、awk)或其他 ELF-64 二进制文件。
- 运行 Bash shell 脚本和 GNU/Linux 命令行应用程序,包括:
- 工具:vim、emacs、tmux。
- 语言:NodeJS、Javascript、Python、Ruby、C/ C++、C# 与 F#、Rust、Go 等。
- 服务:SSHD、MySQL、Apache、lighttpd、MongoDB、PostgreSQL。
- 使用自己的 GNU/Linux 分发包管理器安装其他软件。
- 使用类似于 Unix 的命令行 shell 调用 Windows 应用程序。
- 在 Windows 上调用 GNU/Linux 应用程序。
要在Windows Server 2019上使用WSL,首先需要确定您的系统版本大于1709,可按下面步骤确定您的操作系统版本:
①在开始菜单中点击Windows Powershell进入,或者在开始菜单中磁性贴中点击Windows Powershell进入,如下图:
②输入Powershell命令:
|
|
如下图:
③稍等几秒,系统输出结果,如:
|
|
如下图:
上面的WindowsVersion的值即为您的系统版本。图中值为1809,满足WSL安装要求。
然后继续在上面的Powershell窗口中输入如下命令启用WSL:
|
|
如下图:
回车后, 稍等几秒,会提示您选择并重启计算机,如下图:
输入y或直接回车,电脑立即重启。重启后即成功启用了WSL。
接下来,就是选择下载并安装您喜欢的Linux发行版,在Windows 10下可以通过Microsoft Store应用直接下载安装,在Windows Server 2019中Microsoft Store应用不可用,可以通过以下网址来下载并手动安装Linux发行版:
- Ubuntu 20.04 https://aka.ms/wslubuntu2004
- Ubuntu 20.04 ARM https://aka.ms/wslubuntu2004arm
- Ubuntu 18.04 https://aka.ms/wsl-ubuntu-1804
- Ubuntu 18.04 ARM https://aka.ms/wsl-ubuntu-1804-arm
- Ubuntu 16.04 https://aka.ms/wsl-ubuntu-1604
- Debian GNU/Linux https://aka.ms/wsl-debian-gnulinux
- Kali Linux https://aka.ms/wsl-kali-linux-new
- OpenSUSE Leap 42 https://aka.ms/wsl-opensuse-42
- SUSE Linux Enterprise Server 12 https://aka.ms/wsl-sles-12
- Fedora Remix for WSL https://github.com/WhitewaterFoundry/WSLFedoraRemix/releases/
然而,需要注意的是,如上个别发行版如Kali Linux并不适合于Windows Server 2019,因为Kali Linux需要运行在WSL 2上面,而目前Windows Server 2019是运行在WSL上的,除非您安装使用Windows Server 2019 Insider Preview版本,才能支持WSL 2。WSL 2 是适用于Linux的Windows子系统体系结构的一个新版本,它支持适用于Linux的Windows子系统在Windows 运行ELF64 Linux二进制文件,WSL 2 仅适用于Windows 10 版本1903、内部版本18362或更高版本。如果您试图强制在Windows Server 2019上安装使用Kali Linux,将不幸遭遇本文文首所述的BSOD。
现在,以Ubuntu 16.04为例,我们通过Powershell下载此发行版:
|
|
如下图:
回车后开始下载,取决于您的下载速度,可能费时很长,如下图:
有可能就遇到下载失败了,如下图:
这时候,为方便查看下载进度,我们改用curl命令进行下载:
|
|
也是失败,如下图:
于是再改成下载更新版本的ubuntu:
|
|
下载速度就很快了,5分钟左右就完成下载了,如下图:
然后对下载后ubuntu-1804.appx文件进行重命名,并解压到当前目录的ubuntu1804子目录下:
|
|
如下图:
然后继续输入下面命令切换到解压后的目录,并启动运行ubuntu:
|
|
如下图:
很不幸,您将看到如下错误提示:
解决的方法有2个,1个是按照错误提示中所述手工键入".\ubuntu1804.exe",或键入字母"u"再按Tab键也会自动填充".\ubuntu1804.exe"命令。
另1个方法是使用如下PowerShell命令将您的分发版路径添加到Windows环境路径(在本例中为 C:\Users\Administrator\Ubuntu1804)中:
|
|
如下图:
只是,第2个方法因为是修改系统变量,需要关闭原有窗口并重新启动PowerShell或者重启下计算机。重启后,就可以在任意路径下直接通过键入".\ubuntu1804.exe"命令启动您的分发版,然后稍等片刻等待系统完成初始化。如下图:
之后,按照提示输入要创建的用户名和密码,即成功登录ubuntu系统,如下图:
这样您就可以开始愉快的utuntu之旅了,在上面安装LNMP等环境,这里就暂不赘述了。喜欢本文的朋友,欢迎点赞、关注、评论哦!笔者后续将继续介绍在WSL下安装centos等发行版,敬请期待!