如何在Windows环境中使用Linux?

简介: 如何在Windows环境中使用Linux?

c53d2ca5773889200320fabc16cf1774.jpg

学习生信,总绕不开需要学习使用Linux系统。


在过去,对于重度依赖Windows系统的人来说,往往只能通过虚拟机的方式,来尝试安装和使用Linux。而现在,“适用于Linux的Windows子系统(Windows Subsystem for Linux,简称为WSL)”让这个过程变得容易许多。


很多年前,我把自己电脑上的Windows系统删掉,从头安装了Linux系统及Gnome桌面,忍受着难看又难用的LibreOffice(那时候还叫OpenOffice),只因为觉得命令行操作非常灵活便利,尤其在批量操作时,其效率让依靠鼠标一下一下点击的图形界面望尘莫及。这种情况,在去年发生了变化,我终于回归到Windows系统,正是因为WSL。WSL并非虚拟机,它几乎是一种原生且优雅的方式,让Linux系统跑在了Windows环境中,并兼顾了两套系统的优点,使我既能使用无可替代的微软Office,又随时能打开Linux命令行界面,操作磁盘上的同一批文件和数据。有一种非官方的大胆猜测,未来Windows系统很可能会退化成为一个图形界面外壳,而内置一个Linux内核作为底层核心,真期待这天早点到来。


这一篇,我将用一组截图,来具体展示下,如何在Windows系统中,安装这样一个轻量级但功能异常强大的Linux环境。

1

在开始之前,先解释下:WSL目前有两个版本,WSL 1 和 WSL 2。后者相对前者,在Linux内核支持上更全面,在性能方面有很大提升。


我原本计划直接上来就写WSL 2的安装教程的,但经过好几天的试错,最终还是暂时放弃了。主要的原因是,WSL 2会需要依赖Hyper-V虚拟机制的支持,而这在Windows家庭版中是缺省无法使用的(似乎有一些绕过方法,但我尚未测试成功)。由于大多数笔记本电脑预装的Windows系统都是家庭版,所以我猜这篇文章的读者们,仅仅为了尝尝Linux的鲜,就要去重新安装一个Windows专业版系统,就有点违背初衷了,那倒不如直接考虑虚拟机或其他替代方案。


所以这篇教程,重点在于帮助大家在Windows家庭版系统上,安装起WSL 1,从而开始一些简单尝试,以便对Linux系统不再陌生,进而能够去接触和学习更多生信工具与分析流程。


WSL 1要求最低使用Windows 10的2004版本(内部版本19041以上)。关于这个信息,想要查看自己电脑的Windows版本,可以按下“Win”+“R”快捷键,打开“运行”对话框,输入“winver”并回车后,进行查看。

86e14551b27d87615484480e303a2e6a.png

不能达到最低要求的,建议还是升级下系统。尽量把操作系统更新到最新版本,毕竟软件长期不更新,是存在太多太多安全隐患的。

2

接下来,进入正式安装步骤。


第一阶段,我们先安装WSL的基础支持。


1、首先,鼠标右键点击左下角的“Windows”图标,在弹出的菜单中,选择“应用与功能”(当然,你如果能通过“设置”一步步找到它也行)。

4814d596972c78d41d43d5c3441933d4.png

2、接下来,在打开的窗口中,找到“可选功能”,点击该链接。

b1fc712788ae70e63da8dcc524b24bec.png

3、在打开的“可选功能”窗口中,一直翻到底部,找到“更多Windows功能”,继续点击该链接。

f3db802d8a6ba13a67831d783c8e7b95.png

4、之后,在打开的对话框中,找到“适用于Linux的Windows子系统”这个选项,勾选其左边的选择框,然后点击“确定”按钮,开始安装。

51456741b01b078fc7f9040b81f117d0.png

5、接下来,等待它安装完成。并按照提示,点击“立即重新启动”按钮,重新启动系统。

7eb8e01d0000d030510f9d7e4ef69557.png

6、至此,我们完成了WSL底层支持的安装。

3

第二阶段,我们来安装一个Linux发行版,这里就选择因易用性而被广泛推崇的Ubuntu(中文名为“乌班图”)吧。当然,如果你愿意尝试,也可以考虑其他发行版,安装方法都基本类似,而不同发行版可能在一些系统命令及参数上会有些许区别,但并不影响使用。

1、再次用鼠标左键点击桌面左下角的“Windows”图标,在弹出菜单后,键盘敲入“store”,并从菜单中选择“Microsoft Store”应用,点击打开。

8fc762e8d694d1912a799aa1741a003c.png

2、在打开的窗口中,顶部找到搜索框,在其中输入“ubuntu”,并在自动提示的下拉菜单中,选择任何一个Ubuntu应用进行安装即可。这里推荐选取没有版本号的那个“Ubuntu”条目,点击它进入详细页面。

a2486ffa543d4d62469e265e0e2c61fc.png

3、在打开的详细页面中,点击“获取”按钮。

dac027d16c4f832afa89ce88205d5e0a.png

4、此时会弹出一个需要登录或注册的页面窗口。如果你已经有微软网站https://www.outlook.com/)的账号,直接使用该账号进行登录即可。如果没有,可以点击页面上的“创建一个”链接,免费注册一个后再登录即可(这里就不再赘述此过程)。

3d1c465054e4ce85132095779fe1d661.png

5、按照提示完成登录后,弹出的登录窗口会自动关闭,并回到此前的Microsoft Store窗口。此时继续等待它下载安装完成即可。

6ddc040f5cb01289a52c01f14996dc69.png

6、安装完成后,此前的按钮变成“打开”,点击它,就可以启动WSL。

e56c5482374b0ea88c99757d7c8cf4c8.png

7、第一次启动时,它会进行必要的安装,需要稍作等待。之后会提示让输入一个用户名及两次初始密码确认,以便创建一个非root用户,用于Linux日常操作(常规操作一般避免直接使用root用户),根据自己实际情况输入即可:

1bf2513b676c45e38323f55021af6337.png

8、至此,我们完成了Linux发行版的安装,Windows系统的开始菜单中,也可以找到该应用,下次点击该菜单或图标即可再次启动使用。

5636775a26b29e6d3c279c70dfc697ef.png

4

WSL安装完成后,我们就可以开始在其中继续安装各种Linux软件,以及学习各种Linux命令操作了。

1、比较有必要的一个动作,是更新一下该Linux系统。即运行命令“sudo apt update”。这里需要注意,为了养成良好习惯,请尽量保持日常操作都使用自己的非root用户,只有在不得不使用root用户(比如升级系统或安装系统软件包)时,才通过“sudo”命令做下临时提升权限(并按提示输入该非root用户的密码)。这可以最大限度避免误操作带来的安全风险。

9ef3a6709ed8ca00594be28204494e2b.png

2、上述命令只是获取最新的软件包信息,在信息更新完成后,若出现类似“XX packages can be upgraded. Run 'apt list --upgradable' to see them.”的字样,说明有软件包可供升级,此时可以继续执行“sudo apt upgrade”命令,进行升级。

0b5c499aaff8c649436eaee599aed5bd.png

系统列出待升级的软件包后,会询问是否继续安装,按照提示直接回车确认即可。

3、在WSL的Linux命令行中,想要访问Windows各硬盘上的数据文件,是一件很简单的事,各盘符都被映射到了“/mnt/字母/”的路径上,比如“/mnt/c/”就是C盘,以此类推。

1d7eaf6b67559d0126c612727ad0935e.png

4、在结束本篇前,来个有意思的,继续学习前,感受下Linux的字符文化吧。运行命令“sudo apt install cmatrix && cmatrix

a8bcde082501a9e8a429277afd65fbaf.png

(注:此界面可按 q 键退出)

5

上述安装过程,我使用了VirtualBox虚拟机环境,安装了一个全新的“Windows 10 家庭版”操作系统,从头进行了测试,以详细截图,并确认教程过程有效。其他版本的系统,操作过程应该基本类似,界面可能略有出入,但可以参考进行。

关于WSL 2的安装,可能遇到的问题及解决方法,后面等有机会,我再另外更新一篇。希望这篇对你有用。让我们来一起拥抱Linux的世界吧,同时还无需痛苦舍弃Windows。

目录
相关文章
|
2月前
|
Ubuntu Linux Shell
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
(已成功解决)Linux环境报错—bash: wget: command not found;常见Linux发行版本,Linux中yum、rpm、apt-get、wget的区别;Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
340 68
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
2月前
|
安全 网络协议 Linux
telnet在windows和linux上的使用方法
Telnet是一个简单且强大的网络工具,广泛用于远程管理和网络诊断。尽管存在安全风险,但在受控环境中,Telnet仍然是一个非常有用的工具。通过本文的介绍,您应该能够在Windows和Linux系统上安装并使用Telnet进行各种网络操作。
157 18
|
2月前
|
安全 Ubuntu Linux
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
59 9
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
|
2月前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
149 8
|
2月前
|
弹性计算 开发框架 安全
基于云效 Windows 构建环境和 Nuget 制品仓库进行 .Net 应用开发
本文将基于云效 Flow 流水线 Windows 构建环境和云效 Packages Nuget 制品仓库手把手教你如何开发并部署一个 .NET 应用,从环境搭建到实战应用发布的详细教程,帮助你掌握 .NET 开发的核心技能。
|
2月前
|
自然语言处理 安全 Java
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
Nexpose 7.0.1 for Linux & Windows - 漏洞扫描
55 6
|
2月前
|
关系型数据库 MySQL Linux
MySQL数据库下载安装教程(Windows&Linux)
本文档详细介绍了MySQL的安装步骤,包括安装前的准备工作、下载安装包、Windows和Linux系统下的具体安装流程,以及如何配置MySQL服务、设置环境变量、启动服务和连接数据库等关键操作。
|
3月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
93 4
|
3月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
124 4