【ASP.NET Core】准备工作:在 Windows 10 上配置 Linux 子系统

2021-02-20 08:20

阅读:802

ASP.NET Core 其实比传统的 ASP.NET 要简单很多,而且也灵活很多,并且可以跨平台独立运行。

在 Windows 平台上,我们只要在安装 Visual Studio 的时候选择跨平台的 .NET Core 开发即可,基本无需什么配置就能测试 ASP.NET Core 应用,连 IIS 你也可以不启用(当然你也可以启用的),因为使用 dotnet 命令就能直接运行。当然了,在MacOS和 Linux 上也是通过 dotnet 命令运行的。

一般来说,在 Windows 平台上,你的 ASP.NET Core 应用如果能顺利运行,到其他平台也是没问题。不过,能跨平台测试一下是更好的。

不管是你想学习 Linux ,还是想在 Linux 下测试 Core 应用,传统做法可能你会想到在虚拟机里面安装。然而虚拟机比较麻烦,性能消耗也大,还不如直接启用 Windows 10 下面的 Linux 子系统,不仅节约开销,而且也可以直接访问 Windows 文件目录,操作起来更直爽。

大伙伴们可能会说:我从来没用过 Linux ,咋办?没事,只要你用过 CMD 窗口就行了。这篇烂文老周就来装装逼,许多人都会人认为会玩 Linux 好像特牛似的,但老周觉得没啥了不起,不就是开个命令窗口练打字罢了。Linux 虽然有所谓桌面版,但有点虚。咱们今天来玩的并不需要桌面,输命令就行了,Linux 还是用命令来操作比较正规一些。

上面的F话说多了,现在请你先喝一杯猪奶,然后坐下来,和老周一起来开始玩耍吧。放心,很简单的,你能学会。

 

开启 Windows 10 下的 Linux 子系统

这是很重要的一步,也是第一步,你要到控制面板,找到【程序】,然后关闭或启用 Windows 组件。接着勾选那个【适用于 Linux 的 Windows 子系统】。

技术分享图片

然后系统会进行配置,接着重启,重启完就OK了。这一步会吧,不用我教了吧,如果这也不会,那我也没办法了。

 

这个是开启 Bash 的,一定要开启这个啊,不然的话,等你启动 Linux 时就会出现这个提示。

技术分享图片

 

 

安装 Ubuntu

安装 Linux 子系统有两个方法,虽说是两个方法,其实本质一样,都是在应用商店下载的。方法一就是直接运行 bash,

技术分享图片

你可以在任意目录下运行 bash,比如这样:

技术分享图片

打开 Power shell 或者 CMD ,然后输入 bash 就可以运行了,是不是很 TMD 方便呢。

当你启动 Bash 后,它会自动下载安装 Linux 。

 

第二个方法就是到商店里面下载,老周严重推荐这种方法,因为你可以选择装哪个。目前,商店提供了三个发行版本。

技术分享图片

对于我们测试或学习来说,我们只安装 Ubuntu 就可以了。跟一般 UWP 应用的安装一样,你点安装就行了。

 

开始进入 Linux 

安装完 Ubuntu 后,你同样有两种方法来运行 Linux 。一种是启动 bash,另一种是运行 Ubuntu 应用。直接在 Cortana 搜索框中输入 ubuntu 就行。

技术分享图片

 

 第一次运行,它会提示你,请等几分钟。然后你倒一杯猪奶,坐几分钟就好了。

技术分享图片

 

等你喝完猪奶,估计初始化就完成了,然后你会看到,它提示你输入用户名。技术分享图片

 

你可以随便输入,不一定要和你登录 Windows 的名字一样,它只是子系统中使用的,比如,老周输入 zhou。然后回车确认,这个常识你要知道的,所有命令都是回车确认。

随后,会提示你输入密码。

技术分享图片

你要注意啊,输密码的过程中,是没有任何显示的,所以,请记住你按了哪些键。这个是用来测试的,是子系统,你不需要设置太复杂的密码,随便输入个弱智密码就行了,比如 123,abc 之类的。

回车后会提示你再确认一次密码,你再输一次就行了。完成你就登入 Ubuntu 系统了,只要你看到类似这样显示的,说明你成功了。

技术分享图片

zhou 就是刚输入的用户名,@ 后面是你当前的主机名,比如老周的计算机名是 Zhou-Surface,是一台 Surface Pro 4。然后是冒号,后面的 ~ 表示你现在所处的工作目录(当前目录)是在 /home/ 下面。

如何显示你现在所处目录的完整路径呢,老周教你两招:

第一招,输入 : echo $PWD。注意啊,Linux 是严重区分大小写的,所以你输入命令时一定要小心。

技术分享图片

执行后会输出:

技术分享图片

zhou 是以当前用户命名的目录,如果你刚才输入的用户名是 pig,那么就会输出 /home/pig。

PWD 是一个环境变量,它表示当前工作目录的路么,我们切换目录后,PWD 环境变量会跟着变,不信你来试试。现在切换到 /etc 目录,然后再输出一次。

技术分享图片

看到了吧,PWD 就变成 /etc 了。

切换目录和 Windows 一样,也是用 cd 命令,路径的表示方式是以 “/” 开头的,/ 就是根目录。

刚刚你可能看到了,引用环境变量时在 PWD 前面加了个 $,它不是叫你用美元支付,而是变量引用的语法,不管是环境变量还是你临时定义的变量,都是这样。比如,我临时定义一个变量叫 dog,然后我引用它时,就是 $dog。

技术分享图片

注意 dog=‘....‘ 中间不要出现空格,不要写成 dog = ‘xxxx‘,这样会提示错误,因为空格后的内容被识别为命令行参数。

echo 命令的作用就是输出文本,这个命令很多平台都有,Windows 下也可以用的,PHP中也是用这玩意儿的。

 

你看看,不知不觉,输入了一堆东西。

技术分享图片

你是不是觉得,屏幕上的东西太乱太多了,看着眼睛会长毛,没事,这时你只要按一下 【Ctrl + L】,屏幕上的东西就会马上滚蛋。

 

扯远了,刚才咱们说了用 $PWD 环境变量可以查看当前工作目录,现在老周再告诉你另一种方法。

输入 pwd -P,就可以了。

技术分享图片

注意 ,pwd 是小写的,-P 是大写的,是 print 的意思,即打印出当前目录的路径。

 

如何重置

这个子系统很好玩的,不管你用来学习 Linux 还是用来测试 .net Core 项目,你爱怎么搞就怎么搞,只要别把人家搞怀孕了就行。如果你一时冲动,把它搞怀孕了怎么办。千万不要相信那些满大街张贴的那种什么无痛 + 人流,什么科学流产,什么无后遗症引流,全是骗人的。

你只需要把开 Win 10 的 【设置】,找到应用管理,然后进入高级选项。

技术分享图片

看到了吗,页面上有个“重置”按钮,你重置一下就行了。

技术分享图片

注意,重置只对 Linux 子系统,不是你的Win 10,所以放心,Windows 文件不受影响,但你在 Ubuntu 上所做的任何修改,包括你安装的软件包,都会全部丢失,就等于回到刚从商店下载时的状态。

 

文本编辑器

学会用一下文本编辑器还是有必要的,因为后面安装 .net Core,以及配置服务器时都要写配置文件。Linux 上用得多的文本编辑器一般有 vi、vim等。不过那个有点复杂,老周推荐一个简单好用的—— nano。

直接输入 nano 就能启动。

技术分享图片

 

界面长得很像东施,没办法,将就着用,这个简单,而且完全够我们用了。

你可以往里面输入东西,就像这样。

技术分享图片

你全程都应用键盘操作,鼠标不需要动。

看到窗口底部那些文字吗,它是提示你的快捷键,你可以直接按。咋按呢,字符 ^ 指的是【Ctrl】键,比如 Get Help,你就按 Ctrl + G。

 

现在输入完内容了,我们要保存,按照提示,按快捷键【Ctrl + O】,这时会提示你输入文件名。

技术分享图片

输入文件名后,回车,就保存了。

 然后按 【Ctrl + X】退出。

 

那么,文件放在哪里了呢?就放在你当前的工作目录下。比如我现在的工作目录就在 /home/zhou 下,所以文件就在这里。

你可以输入这个命令来验证 ls (第一个字符是小写的 L,不要看成数字 1),ls 命令是 list 的缩写,专门列出目录和文件。

技术分享图片

123.txt 就是我刚才保存的文件。

现在,我们打开它看看,输入: nano -v 123.txt

 技术分享图片

这个 -v 参数,就是以只读方式打,如果你想修改文件,是修改不了的,它会警告你。

技术分享图片

如果你想用正常方式打开,可以去掉 -v 参数。

技术分享图片

 

如果你不想用 nano 编辑器打开文件,而只是想看看它里面有什么鬼,或者想直接输出到命令行窗口,你可以用 cat 命令。

技术分享图片

执行后,就直接输出文件的内容了。

技术分享图片

 

想删除那个文件就用 rm 命令,输入:rm 123.txt,回车。

 

=====================================================

好,今天就讲到这里,老周担心,讲多了你消化不了。下一篇老周再讲讲在 Linux 子系统中安装 dotnet core 以及服务器包,如 nginx。

 


评论


亲,登录后才可以留言!