wsl 重启_漫谈在Windows Server 2019中安装使用WSL

熟悉IT历史的朋友一定不会忘记98蓝屏事件:时任微软CEO的比尔·盖茨和助理 Chris Capossela在1998年春季计算机分销商展会(COMDEX )现场演示Windows 98的“即插即用”(plug-and-play)新特性时,经历了演示计算机当场冷不丁甩出蓝屏死机(Blue Screen of Death,简称BSOD)界面的尴尬一幕:

5038c834cf051d94d2dfd2a3ae144bcb.gif

尽管微软极力想要化解其中的尴尬,但该事件还是在该公司的历史上留下了难以抹去的一笔。蓝屏死机几乎已经成为了微软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进入,如下图:

416ed8cae4c4a979da78467f4558369a.png

②输入Powershell命令:
Get-ComputerInfo | Select WindowsProductName, WindowsVersion, WindowsInstallationType, OsServerLevel, OsVersion, OsHardwareAbstractionLayer

如下图:

727c534f5d1044fdec90e987a4837fa6.png

③稍等几秒,系统输出结果,如:

WindowsProductName : Windows Server 2019 Datacenter

WindowsVersion : 1809

WindowsInstallationType : Server

OsServerLevel : FullServer

OsVersion : 10.0.17763

OsHardwareAbstractionLayer : 10.0.17763.1131

如下图:

0d7c29469c0d13e154b265599abff1ff.png

上面的WindowsVersion的值即为您的系统版本。图中值为1809,满足WSL安装要求。

然后继续在上面的Powershell窗口中输入如下命令启用WSL:

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

如下图:

d4a184bdff75022b84e52f4f69ebc5ba.png

回车后, 稍等几秒,会提示您选择并重启计算机,如下图:

4e20f94e52116143b135a5c530314533.png

输入y或直接回车,电脑立即重启。重启后即成功启用了WSL。

接下来,就是选择下载并安装您喜欢的Linux发行版,在Windows 10下可以通过Microsoft Store应用直接下载安装,在Windows Server 2019中Microsoft Store应用不可用,可以通过单击以下链接来下载并手动安装Linux发行版:

  • Ubuntu 20.04
  • Ubuntu 20.04 ARM
  • Ubuntu 18.04
  • Ubuntu 18.04 ARM
  • Ubuntu 16.04
  • Debian GNU/Linux
  • Kali Linux
  • OpenSUSE Leap 42
  • SUSE Linux Enterprise Server 12
  • Fedora Remix for WSL

然而,需要注意的是,如上个别发行版如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下载此发行版:

Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx –UseBasicParsing

如下图:

19a7f6cae12ac60f21ebedba405a6e1f.png

回车后开始下载,取决于您的下载速度,可能费时很长,如下图:

9db569e7d13b15fcab3da6bd4dbf9884.png

有可能就遇到下载失败了,如下图:

2d6555a74c65425198014b395ada3fa6.png

这时候,为方便查看下载进度,我们改用curl命令进行下载:

curl.exe -L -o ubuntu-1604.appx https://aka.ms/wsl-ubuntu-1604

也是失败,如下图:

959847f4b6afda1b37cd6f7f988d76ab.png

于是再改成下载更新版本的ubuntu:

curl.exe -L -o ubuntu-1804.appx https://aka.ms/wsl-ubuntu-1804

下载速度就很快了,5分钟左右就完成下载了,如下图:

bfed547c4b8e36086290215396688a17.png

然后对下载后ubuntu-1804.appx文件进行重命名,并解压到当前目录的ubuntu1804子目录下:

Rename-Item ubuntu-1804.appx ubuntu-1804.zip

Expand-Archive ubuntu-1804.zip ubuntu1804

如下图:

a4ea6dc84c133a0c6ace85b3d1e56804.png

然后继续输入下面命令切换到解压后的目录,并启动运行ubuntu:

cd ubuntu1804

ubuntu1804.exe

如下图:

5c900581bc4e9bea0a6905b8b88a35fc.png

很不幸,您将看到如下错误提示:

154ba53cfe22e2f8054f1e2734d01022.png

解决的方法有2个,1个是按照错误提示中所述手工键入“.ubuntu1804.exe”,或键入字母“u”再按Tab键也会自动填充“.ubuntu1804.exe”命令。

另1个方法是使用如下PowerShell命令将您的分发版路径添加到Windows环境路径(在本例中为 C:UsersAdministratorUbuntu1804)中:

$userenv = [System.Environment]::GetEnvironmentVariable("Path", "User")

[System.Environment]::SetEnvironmentVariable("PATH", $userenv + ";C:UsersAdministratorUbuntu1804", "User")

如下图:

77735bcbdfb28acb898bc3bb6723f690.png

只是,第2个方法因为是修改系统变量,需要关闭原有窗口并重新启动PowerShell或者重启下计算机。重启后,就可以在任意路径下直接通过键入“.ubuntu1804.exe”命令启动您的分发版,然后稍等片刻等待系统完成初始化。如下图:

f6c10a54a7723106ad84e4e9c2a0b0b6.png

之后,按照提示输入要创建的用户名和密码,即成功登录ubuntu系统,如下图:

eb7077006b2eb52176853ef6110aedf4.png

这样您就可以开始愉快的utuntu之旅了,在上面安装LNMP等环境,这里就暂不赘述了。喜欢本文的朋友,欢迎点赞、关注、评论哦!笔者后续将继续介绍在WSL下安装centos等发行版,敬请期待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/567211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab fbb,[求助]请教如何将modelsim仿真的输出结果导入到matlab中分析

matlab可以与modelsim联合在线仿真使用matlab生成激励源,使用modelsim来仿真vhd功能,然后matlab分析结果贴一点代码吧:fdo文件内容################################################################# compiling libraryvlib workvcom -expl…

uniapp 输入框防抖节流_拉动一下控制台大小,后台请求数量爆炸,竟是没做好防抖与节流...

点击上方☝Java编程技术乐园,轻松关注!及时获取有趣有料的技术文章文章很好,耐心阅读,记得点赞和关注哦~前言最近有个朋友在面试过程中遇到一个问题:什么是防抖和节流?糟了,这可触碰到我的知识盲…

linux matlab runtime,linux 环境 MATLAB Runtime 安装

安装 MUTsigcv 软件时需要用到MATLAB环境,安装过程如下:环境下载:https://ww2.mathworks.cn/products/compiler/matlab-runtime.html安装帮助:https://ww2.mathworks.cn/help/compiler/install-the-matlab-runtime.html下载安装软…

智能车辆手册 pdf_SIMULINK在虚拟车辆开发方面的应用

获得pdf全文&#xff0c;朋友圈集赞30个好书推荐&#xff1a;1. Radar: 《雷达手册》<推荐理由&#xff1a;中译本在原著的基础上增加了缩略语词汇总表等5个附录&#xff0c;便于读者查阅。原著是集合当今世界雷达各方面造诣最深的专家、学者编撰而成的&#xff0c;受到全世…

无限极 php算法,无限极分类算法,对你一定有帮助

无限级分类是开发中常见的情况,也经常会在面试&#xff0c;主考官问到&#xff0c;笔试中遇到&#xff0c;因此本文对常见的无限极分类算法进行总结归纳&#xff0c;其实大多数就是迭代与递归。1.循环迭代实现$arr [1>[id>1,name>父1,father>NULL],2>[id>2,…

pmp中ram和raci的区别_【PMP知识点总结】采购流程、采购合同的类型、采购合同的条款...

PMP考试的内容&#xff0c;围绕着《PMBOK》开展。《PMBOK》第六版第一部分的第十二章【项目采购管理】&#xff0c;有两个三个高频知识点&#xff08;采购流程和采购合同、索赔&#xff09;。在PMP考试里&#xff0c;通常项目经理是甲方的项目经理&#xff0c;是甲方爸爸&#…

php issign为false,支付宝接口集成及错误排除

我集成了支付宝接口&#xff0c;可以支付成功&#xff0c;可是notify_url.php中始终好像没有回调&#xff0c;所以按照官方文档&#xff0c;我作了以下修改php$verify_result $alipayNotify->verifyNotify();if($verify_result) {//商户订单号$order_id $_POST[out_trade_…

查看队列深度_不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密...

“ 本文作者张彦飞&#xff0c;原题“聊聊TCP连接耗时的那些事儿”&#xff0c;本次收录已征得作者同意&#xff0c;转载请联系作者。即时通讯网收录时有少许改动。本文已同步发布于52im社区&#xff1a;http://www.52im.net/thread-3265-1-1.html(1、引言对于基于互联网的通信…

perl python ruby_perl,lua,python,ruby的对比(3) -- lambda,closure,proper tail function call

今天的题目是函数&#xff0c;先看一下匿名函数。Perl里是这样的$f sub{ return $_[0]$_[1]$_[2];};print &$f(1,2,3)."\n";lua里是这样的f function(x,y,z) return xyz endprint (f(1,2,3))python里使用了lambda概念&#xff0c;实现是这样的&#xff0c;也可…

oracle将一个表数据更新时间,Oracle批量更新,将一个表的数据批量更新另一表

【问题】现在有两个千万级别的结构相同数据不同数据表T_SMS_PHONENO(目的表)&#xff0c;T_SMS_PHONENO2(源表)&#xff0c;根据源表数据更新目的表的数据。【分析】根据经验&#xff0c;更新方法一般有以下几种&#xff1a;1、直接update。update T_SMS_PHONENO T Set T.NA…

几级工作台做石头高墙_创造与魔法:建筑新手入门攻略,家园建材怎么做

hello大家好&#xff0c;又见面啦&#xff0c;我是创造与魔法郁金香建筑团的建筑师&#xff0c;九梨梨众所周知&#xff0c;我是一个热衷于出各类建筑案例的人&#xff0c;玩创魔两年多&#xff0c;做了好几十个不同款式的家园吧。其实创魔这个游戏&#xff0c;建筑只是其中一个…

oracle vitu,Supply Chain Management (SCM) a Manufacturing | Oracle Česká Republika

Nebyly nalezeny ždn vsledkyVašemu vyhledvn neodpovdaj ždn vsledky.Abyste našli to, co hledte, doporučujeme vyzkoušet nsledujc postup:Zkontrolujte pravopis vašich klčovch slov ve vyhledvn.Použijte synonyma pro klčov slovo, kter jste zadali, napřk…

python程序文件是什么_.py文件是什么?

展开全部.py文件是python的脚本文件。Python在执行时&#xff0c;首先会将.py文件中的62616964757a686964616fe59b9ee7ad9431333431363039源代码编译成Python的byte code(字节码)&#xff0c;然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机…

oracle12 快照保存时间,【AWR】调整AWR数据采样时间间隔及历史快照保留时间

1.AWR默认的采样间隔和历史快照保留时间默认是保留七天&#xff0c;采集间隔是1小时&#xff0c;这个信息可以从DBA_HIST_WR_CONTROL视图中获得。sysora10g> col SNAP_INTERVAL for a20sysora10g> col RETENTION for a20sysora10g> select * from dba_hist_wr_control…

两步路轨迹文件位置_最新Uber ATG的轨迹预测方法LiRaNet介绍

arXiv今年10月刚刚上传论文“LiRaNet: End-to-End Trajectory Prediction using Spatio-Temporal Radar Fusion“。其特色在于&#xff0c;除了激光雷达和HD Map之外&#xff0c;该轨迹预测方法采用了雷达传感器的信息。雷达和激光雷达融合是有挑战性的&#xff0c;因为前者的低…

python解方程时 怎样变换系数批量解方程_python求解方程

最有效的求解方法&#xff1a;三行代码搞定任何线性方程云栖号资讯&#xff1a;【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯&#xff0c;还在等什么&#xff0c;快来&#xff01;在三行函数中解决任何线性方程式的技巧&#xff0c;甚至可以在两行代码…

linux查看目录下 开头,Linux下ls如何看到.开头的文件

Linux下ls查看到.开头的文件方法&#xff1a;ls -aLinux操作系统是UNIX操作系统的一种克隆系统&#xff0c;它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络&#xff0c;并通过全世界各地计算机爱好者的共同努力&#xff0c;已成为今天世界…

python3.7代码转python2.7_Python3.7与Python2.7在centos7下兼容并存

原标题&#xff1a;Python3.7与Python2.7在centos7下兼容并存1、下载python3.7wget "https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz"2、解压下载好的压缩包tar -zxvf Python-3.7.0.tgz3、配置编译python3.7mkdir /usr/local/python3 cd Python-3.7.0 ./…

linux红帽密码复杂度,[步骤] Linux 密码策略的设置(设置密码复杂度)(CentOS8RHEL8 版)...

步骤目录&#xff1a;步骤一&#xff1a;设置密码必须包含大小写字母等策略1.1 生成设置密码必须包含大小写字母的策略文件1.2 设置密码必须包含大小写字母等策略步骤二&#xff1a;设置密码有效期等策略步骤三&#xff1a;设置新密码不能和旧密码重复的策略具体的操作步骤&…

增值电信服务费是什么意思_增值电信业务IDC许可证要年检吗,流程是什么

据国家相关法律法规&#xff0c;持有IDC许可证的企业每年年初都需要办理IDC年检&#xff0c;企业也应当重视IDC年检&#xff0c;否则将会面临惩罚&#xff0c;所以小编来给大家介绍云南IDC许可证年检流程。为什么要办理云南IDC许可证年检,如何办理?根据《中华人民共和国电信条…