Windows子系统WSL|Ubuntu

因为一些特殊情况,部分开源项目仅支持Linux部署方式,如果我们使用VM Ware虚拟机安装Linux系统,却又无法调用GPU,故此,最佳解决方式就是Windows下通过WSL2安装部署Ubuntu。

Windows子系统WSL安装Ubuntu

因为一些特殊情况,部分开源项目仅支持Linux部署方式,但如果我们只为了一个开源项目的使用而为自己的电脑安装Linux系统是不现实的,因为很多软件和游戏都不支持Linux。如果我们使用VM Ware虚拟机来安装Linux系统,却又无法调用GPU,可开源的AI项目90%都是需要GPU加速的。

故此,最佳的解决方式就是使用新版Windows内置的WSL子系统功能,支持快速安装和卸载Linux系统,并且可以调用GPU加速运算。

不过,安装Linux系统还是需要手动自行安装的,因为Windows只是内置了一个虚拟机而已。目前可以一键安装Ubuntu、Debian、kali-linux、OracleLinux、SUSE-Linux-Enterprise-Server、openSUSE等版本。但我们主要面向初学者,所以本站研究了整理了一下关于Windows下通过WSL2安装部署Ubuntu,非常非常简单,五分钟就可以搞定,所以大家放心,几乎没有任何难度的。

组件安装

如果你的系统是第一次使用Windows的WSL功能,那么组件安装这里是必要的操作步骤。如果你之前使用过WSL子系统功能,那么可以跳过组件安装部分。

子系统

管理员方式运行CMD功能,然后执行如下命令,这将会开启Windows的子系统功能,否则后续所有操作无法正常使用。

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

以下是执行完成后的返回内容,可以看到我们所需要的系统功能已经成功被开启。

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

部署映像服务和管理工具
版本: 10.0.22621.1

映像版本: 10.0.22621.1848

启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。

虚拟机

管理员方式运行CMD功能,然后执行如下命令,这将会开启Windows的虚拟机功能,否则后续所有操作无法正常使用。

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

以下是执行完成后的返回内容,可以看到我们所需要的虚拟机功能已经成功被开启。

C:\Windows\System32>dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

部署映像服务和管理工具
版本: 10.0.22621.1

映像版本: 10.0.22621.1848

启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。

重启电脑

别偷懒,完成以上安装之后一定要重启电脑,否则无法完成安装。

站长因为在这里偷懒,自作聪明的只是注销系统,所以耽误了半个小时。

Ubuntu安装

Liunx是开源系统,所以有很多开发者为其提供系统服务支持,我们可以理解为同一个版本的Windows系统,但是存在多个发布商,比如微软、苹果、亚马逊等,每个版本都有各自的优缺点。

目前较为主流的Linux系统为Ubuntu,所以我们直接安装最新版的Ubuntu系统即可。

系统安装

我们理论上应该进入微软商店安装Ubuntu,但是那样做不太优雅,我们可以通过在CMD中执行如下命令行直接安装。

wsl --install -d Ubuntu

等等片刻之后,将会看到如下内容:

C:\Users\openAI>wsl --install -d Ubuntu
正在安装: 虚拟机平台
已安装 虚拟机平台。
正在安装: 适用于 Linux 的 Windows 子系统
已安装 适用于 Linux 的 Windows 子系统。
正在安装: Ubuntu
已安装 Ubuntu。
正在启动 Ubuntu...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:

用户及密码设置

此时的大致意思为,需要我们输入一个用户名,本站就以openai_wiki为例。

注意:仅支持小写26个字母以及下划线,不支持特殊字符。

Enter new UNIX username: openai_wiki

然后需要我们输入用户密码:

注意:输入密码过程不可见,正常盲输即可。

New password:openai_wiki

再次输入密码,确认两遍一致即可。

Retype new password:openai_wiki

最后完成返回内容如下:

C:\Users\openAI>wsl --install -d Ubuntu
Ubuntu 已安装。
正在启动 Ubuntu...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: openai_wiki    # 用户名
New password:openai.wiki                # 用户密码
Retype new password:openai.wiki         # 确认密码
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.15.90.1-microsoft-standard-WSL2 x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage


This message is shown once a day. To disable it please create the
/home/openai_wiki/.hushlogin file.
openai_wiki@openAI:~$

此时我们已经完成了系统的安装与用户名和密码设置,并且默认直接进入到了wsl系统。

但这并不是root用户,root用户是Linux系统的默认账户,拥有最高权限,我们顺便将root密码重置一下。

输入如下命令就,即可更改root密码。

sudo passwd root

先输入刚刚设置的密码,然后输入想要设置的root密码,最后再输入一次想要设置的root密码,完整的内容如下。

openai_wiki@openAI:~$ sudo passwd root
[sudo] password for openai_wiki:<当前账户密码>
New password:<root密码>
Retype new password:<root密码>
passwd: password updated successfully

如果你只是部署一个WSL的子系统,那么到此就已经安装结束了,本文的后续内容仅做了解即可。

相关补充

下面两张截图都是从CMD中截取的,但上图C:\Users\openAI>下图openai_wiki@openAI:~$

这代表我们在左图这样的界面中输入的命令,是用来控制Windows的。在右图这样绿色的命令行内输入的命令是用来控制WSL子系统Linux的。

Windows子系统WSL|Ubuntu
CMD
Windows子系统WSL|Ubuntu
Linux

默认情况下我们打开CMD的时候就像左图这样,如何进入WSL子系统去控制Linux呢?

我们直接在CMD中输入如下命令,就可以进入WSL虚拟机,注意这是小写的。

wsl

执行完如上内容之后,我们会进入到虚拟机内,如何退出虚拟机返回至CMD?

执行如下命令,即可回到CMD,也就是说,你可以通过wslexit这两个简短的命令非常方便的在Windows和Linux中切换控制权。

exit

依赖更新

在你安装完成WSL的Linux系统之后,我们要做的第一件事,那就是更新当前系统依赖。

我们应该确保自己处于WSL虚拟机内,执行如下命令,更新软件包列表并自动升级:

sudo apt update && sudo apt -y upgrade

执行如上代码后需要等待几分钟,因为这将会获取最新Ubuntu依赖更新。

WSL|基础知识

什么是WSL?你可以理解为是一个完全虚拟出来的系统容器,在你当前的电脑系统里面再安装一个子系统。

以下是一些常用的wsl命令,大家先简单的了解一下即可。

查看已安装的Linux系统

我们可以先查看一下关于wsl的基本信息,在CMD中执行如下命令即可。

wsl -l

如果你已安装过WSL的子系统,那么会显示如下内容:

C:\Users\openA>wsl -l
适用于 Linux 的 Windows 子系统分发:
Ubuntu (默认)

如果你未安装过任何子系统,那么将会返回内容如下:

C:\Users\openAI>wsl -l
适用于 Linux 的 Windows 子系统没有已安装的分发。

使用 'wsl.exe --list --online' 列出可用的分发
并使用 'wsl.exe --install <Distro>' 进行安装。

也可以通过访问 Microsoft Store 安装分发:
https://aka.ms/wslstore
Error code: Wsl/WSL_E_DEFAULT_DISTRO_NOT_FOUND

开启WSL系统

开机方式非常简单,我们可以只需要输入wsl即可自动开启默认的Linux系统。

wsl

关闭当前Linux系统

也就是最常见的关机命令,非常方便。

wsl --shutdown

更新WSL

更新适用于 Linux 的 Windows 子系统程序包。

wsl --update

列出可安装的Linux系统

wsl -l -o

以下是返回内容:

C:\Users\openAI>wsl -l -o
以下是可安装的有效分发的列表。
使用 'wsl.exe --install <Distro>' 安装。

NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
OracleLinux_7_9                        Oracle Linux 7.9
OracleLinux_8_7                        Oracle Linux 8.7
OracleLinux_9_1                        Oracle Linux 9.1
SUSE-Linux-Enterprise-Server-15-SP4    SUSE Linux Enterprise Server 15 SP4
openSUSE-Leap-15.4                     openSUSE Leap 15.4
openSUSE-Tumbleweed                    openSUSE Tumbleweed

拿Ubuntu系统来举例,我们可以看到其中包含UbuntuUbuntu-22.04Ubuntu-20.04Ubuntu-18.04等多个版本,如果没有特殊要求,我们直接安装第一个Ubuntu即可,因为这是Ubuntu的最新版本。

重启WSL

执行如下命令,重启WSL虚拟机。

sudo reboot

执行如上命令之后,将会从Linux的终端中退出,返回到CMD命令内,我们重新输入wsl,进入虚拟机。

wsl

系统快照

熟悉虚拟机的朋友可能听名字就知道这是什么了,其实就是将你现在已经部署好的虚拟机做一个备份,可以让你随时还原到当前虚拟机的状态。

拍摄快照

这个功能非常非常有用,因为你无法确定会不会有时候把虚拟机给搞乱了,所以如果你已经布置好了一个完整的虚拟机,想要备份,那么可以使用如下方式。

我们在CMD中执行如下命令,将会把你当前状态的虚拟机进行快照拍摄,其中的Ubuntu虚拟机的名称,后面的D:\openai.wiki\WSL\WSL-Ubuntu.tar保存的路径+文件名,可以自行修改。

wsl --export Ubuntu D:\openai.wiki\WSL\WSL-Ubuntu.tar

执行完成后,等待片刻,可以在D盘openai.wiki\WSL目录下看到WSL-Ubuntu.tar文件已成功生成。

还原快照

这是本节的重中之重,也就是如何将你下载好的项目备份直接倒入到自己的电脑,站长会给你提供一个较大的系统备份压缩包,下载之后不用解压,直接通过如下方式导入到你的电脑中即可。

在CMD中逐条执行如下命令,即可完成导入虚拟机备份的快照功能,说白了就是恢复备份。

恢复备份需要安装一个虚拟机吗?不需要,你只需要确定你的WSL相关组件已经开启即可,也就是本文中最上面的部分。

关闭WSL虚拟机:

wsl --shutdown

删除名为Ubuntu的虚拟机:

wsl --unregister Ubuntu

首先我们需要确认一个工作目录,用来存放该项目的相关环境依赖文件。本站所选择的目录为D盘的根目录下openai.wiki\WSL文件夹,完整路径为:D:\openai.wiki\WSL

在CMD中执行如下命令,这将会自动检测D盘是否在openai.wiki\WSL文件夹,没有则自动创建文件夹

if not exist D:\openai.wiki\WSL mkdir D:\openai.wiki\WSL

导入本站所提供的虚拟机,其中Ubuntu为虚拟机名称,D:\openai.wiki\WSL为导入虚拟机的路径,D:\openai.wiki\WSL\WSL-Ubuntu.tar为虚拟机备份文件路径,--version 2为版本号,关于版本一般来说忽略即可。

wsl --import Ubuntu D:\openai.wiki\WSL D:\openai.wiki\WSL\WSL-Ubuntu.tar --version 2

注意:D:\openai.wiki\WSL这个路径就是你想把导入备份的虚拟机安装到哪里,我们无论指定到哪个路径都是可以正常执行的,只要确认tar文件路径正确即可。

此文章由OpenAI开源维基百科原创发布,如若转载请注明出处:https://openai.wiki/wsl-ubuntu.html

(0)
上一篇 2023-08-23 15:06
下一篇 2023-08-27 12:19

相关推荐

  • 魔法上网

    本文详细介绍魔法上网的原理和方法,利用手机热点曲线救国,让你解决无法访问国外网站的问题。本文提供了安卓和iOS两种方法,适用于笔记本和台式电脑。使用简单,效果显著!

    基础知识 2023-02-24
    005.0K
  • 压缩软件介绍

    压缩软件是一种帮助用户压缩大型文件以减少文件大小的工具,从而方便运输和存储。本文将介绍一些最流行的压缩软件,它们的功能,使用方法以及与其他压缩软件的比较。

    基础知识 2022-12-14
    001.5K
  • Anaconda|Miniconda|Windows环境变量修复

    本文介绍学习如何修复解决anaconda或minicanda的环境变量的详细教程。Anaconda是一款强大的数据分析和科学计算工具,但是在使用过程中经常会遇到环境变量的问题。

    基础知识 2022-12-17
    093.4K
  • GCC编译器|Mingw-w64|Windows安装教程

    GCC是GNU Compiler Collection的缩写,它是一套由GNU开发的免费、开源的编译器集合。GCC能够编译多种编程语言,包括C、C++、Objective-C、Fortran等。

    2023-07-25
    001.4K
  • CMake|Windows安装教程

    CMake(Cross-Platform Make)是一个开源的跨平台构建系统。如果你需要自行编译C++、C、Python等语言,安装此软件即可,体积小巧,省去了安装Visual Studio的麻烦。

    2023-08-13
    01988

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

微信