王海鱼 发表于 2024-7-20 20:34:47

Windows设置Linux环境(Win 10 + WSL2 + Ubuntu 20.04 + GNOME桌面版)

目录
媒介
一、Linux假造运行环境对比
二、安装 WSL
2.1 安装 WSL1
(1)启用 “适用于 Linux 的 Windows 子系统” 可选功能
(2)重启电脑
(3)安装 Linux 发行版
(4)启动 Linux 子系统
2.2 升级到 WSL2
(1)开启 “假造机平台” 可选功能
(2)重启电脑
(3)下载 Linux 内核更新包
(4)设置 WSL 版本
三、使用 Linux系统
3.1 启动和退出 Linux 子系统
3.2 换源
(1)备份数据源设置文件
(2)修改数据源设置文件
(3)更新源,升级软件
四、GNOME桌面版安装
4.1 将系统更新到最新。
4.2 安装多线程下载工具 Axel
4.3 安装 apt-fast
4.4 设置 apt-fast
4.5 安装 Gnome-Session
4.6 安装 VcXsrv
4.7 启动桌面版 Ubuntu
参考博客

媒介

   假造环境为 Windows 用户提供了一个轻松打仗和认识 Linux 的机遇。无需在硬件上做任何更改,即可体验 Linux 的下令行界面、文件系统等特性。这对于想要学习 Linux、实验 Linux 应用步伐或者将来转向 Linux 开发的人来说是一个极好的入门方式。在 Windows 系统上安装 Linux 假造环境有很多优势:


[*]兼容性和便利性
        通过假造运行环境,您可以在Windows系统上轻松运行Linux软件和工具,而无需分区或双重引导系统。这使得在不同操纵系统之间切换变得更加方便。


[*] 隔离环境
        与直接在Windows上安装类Unix工具相比,Linux假造机提供了一个独立和隔离的环境。 17您可以在这个环境中自由地安装、设置和测试软件,而不消担心会影响到主机系统。这对于开发、测试以及运行可能与Windows环境辩说的应用步伐非常有用。


[*] 靠近生产环境
        对于开发人员来说,在Windows上安装Linux假造运行环境可以轻松地进行Linux软件的开发和测试。您可以在Windows系统上运行开发环境,同时使用Linux环境进行测试,这有助于确保软件在不同平台上的兼容性。


[*] 资源分配灵活
        使用假造化技能,您可以根据需求动态分配硬件资源(CPU、内存、存储等)给 Linux 假造机。随时可以增加或淘汰资源,为假造机提供所需的计算能力。


[*] 快速摆设和复制
        创建和摆设新的 Linux 假造机十分简朴快速。您还可以制作假造机的快照,随时在需要时回滚到之前的状态。复制假造机也很方便,可以快速复制出多个相同设置的实例。
一、Linux假造运行环境对比

   WSL(Windows Subsystem for Linux)是微软为Windows 10引入的功能,允许在Windows系统上运行本机Linux二进制文件,无需假造化。WSL提供了原生的Linux系统调用兼容性层,可在Windows上运行大多数Linux步伐。然而,WSL1仍然有一些性能限定,并且不支持所有的Linux内核功能。
    WSL2是WSL的升级版本,引入了全新的架构,它在Hyper-V假造机中运行真正的Linux内核。WSL2提供了更好的性能和更好的兼容性,因为它与真实的Linux内核更靠近,同时还支持更多的Linux系统调用。WSL2相对于WSL1来说更快速、更稳固,并且支持更多的Linux应用步伐。
    VMware假造机是一种基于软件的假造化技能,允许在主机操纵系统上运行多个假造的操纵系统。与WSL不同,VMware假造机提供了完备的假造化环境,可以运行任何操纵系统,包括各种版本的Linux。它提供了更高的隔离性和灵活性,但也需要更多的系统资源。
下面是它们之间的一些比力:

[*] 性能:WSL2通常比WSL1具有更好的性能,因为它运行在假造机中,并且与真实的Linux内核更靠近。相比之下,VMware假造机的性能可能会略有低沉,因为它提供了完备的假造化环境。
[*] 兼容性:WSL2的兼容性通常比WSL1更好,因为它与真实的Linux内核更靠近,并且支持更多的Linux系统调用。但VMware假造机可以运行几乎任何操纵系统,因此在兼容性方面更为灵活。
[*] 资源斲丧:WSL1斲丧的资源相对较少,因为它不涉及假造机。WSL2和VMware假造机都需要更多的系统资源,因为它们都在假造化环境中运行真实的操纵系统内核。
[*] 摆设和管理:WSL和WSL2都是通过Windows应用市肆轻松安装和管理的,而VMware假造机需要单独安装和设置。
   综上所述,选择合适的假造运行环境取决于您的具体需求。如果您需要轻量级的Linux环境,并且主要关注性能和兼容性,那么WSL2可能是一个不错的选择。但如果您需要更高的隔离性、更广泛的兼容性,或者希望在Windows之外运行其他操纵系统,那么VMware假造机可能更恰当您。
    本人主要考虑C++高性能算法的需求,选择采用 Win10 + WSL2 + Ubuntu 20.04 设置Linux假造运行环境。
二、安装 WSL

2.1 安装 WSL1

(1)启用 “适用于 Linux 的 Windows 子系统” 可选功能

   需要先启用 “适用于 Linux 的 Windows 子系统” 可选功能,然后才气在 Windows 上安装 Linux 分发。使用下令行的方式。
以管理员身份打开 PowerShell 右击 “开始” 键选择 Windows PowerShell (管理员)(A),并运行:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
https://img-blog.csdnimg.cn/direct/20dc998bedcb4b438a3bd4b4ccdeca1a.png
执行结果如下:
https://img-blog.csdnimg.cn/direct/de752dfa707141b589dbe804eb693c73.png
(2)重启电脑

(3)安装 Linux 发行版

   在 Microsoft Store 中下载并安装需要的 Linux 发行版,选择 Ubuntu 20.04.6 LTS。
https://img-blog.csdnimg.cn/direct/0c08401079a449dbae214c6cc582972d.png
(4)启动 Linux 子系统

   至此,Linux 子系统就相称于 Windows 系统上安装的一个软件,可以在开始菜单子启动。
首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等候一分钟或两分钟,以便文件解压缩并存储到电脑上。 将来的所有启动时间应不到一秒。
https://img-blog.csdnimg.cn/direct/3dc4d34f9a47471089e21f83bd7e9a61.png
   然后,需要为新的 Linux 分发版创建用户帐户和密码。
https://img-blog.csdnimg.cn/direct/07a3cf90694e4865b322727499fdcd63.png
   至此,已乐成安装并设置了与 Windows 操纵系统完全集成的 Linux 分发!
可打开 cmd 终端下令行并输入以下下令(仅在 Windows 内部版本 18362 或更高版本中可用),检查分配给每个已安装的 Linux 分发版的 WSL 版本:wsl -l -v
Microsoft Windows [版本 10.0.19045.3930]
(c) Microsoft Corporation。保留所有权利。

C:\Users\Dell>wsl -l -v
NAME            STATE         VERSION
* Ubuntu-20.04    Stopped         1 2.2 升级到 WSL2

(1)开启 “假造机平台” 可选功能

   以管理员身份打开 PowerShell 并运行:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
https://img-blog.csdnimg.cn/direct/602af7188905492e9f1d0a7c29b46fe0.png
(2)重启电脑

(3)下载 Linux 内核更新包

   下载最新包:WSL Linux 内核更新包 x64
然后双击运行,安装
https://img-blog.csdnimg.cn/direct/fa3a6ad56cd245dc9f430fba1b760ad2.png
(4)设置 WSL 版本

   windows下以管理员身份打开PowerShell。
设置 Ubuntu-20.04 为 WSL 2:
wsl.exe --set-version Ubuntu-20.04 2
   如果要设置为WSL 1,执行如下下令:
wsl.exe --set-version Ubuntu-20.04 1
   可以打开 PowerShell 下令行并输入以下下令检查分配给每个已安装的 Linux 分发版的 WSL 版本:wsl -l -v
Windows PowerShell版权所有 (C) Microsoft Corporation。保留所有权利。实验新的跨平台 PowerShell https://aka.ms/pscore6PS C:\Windows\system32> wsl -l -vNAME            STATE         VERSION* Ubuntu-20.04    Stopped         1PS C:\Windows\system32> wsl.exe --set-version Ubuntu-20.04 2
正在进行转换,这可能需要几分钟时间...有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2转换完成。PS C:\Windows\system32> wsl -l -vNAME            STATE         VERSION* Ubuntu-20.04    Stopped         2 三、使用 Linux系统

3.1 启动和退出 Linux 子系统

   进入 Linux 子系统有以下几种方式:
(1)和正常软件一样启动,如在开始菜单中点击其图标、双击桌面快捷方式;
(2)在 Windows 中打开一个终端,如 PowerShell,输入下令 wsl;
(3)在终端中输入下令 Linux 发行版名称.exe,如 ubuntu20.04.exe。

使用 wsl 下令进入 Linux 子系统时,进入的目录是当前打开终端的位置,使用 PowerShell 终端时,所在位置为 /mnt/c/Users/windows-login-name。使用 ubuntu20.04.exe下令进入 Linux 子系统时,进入的目录是所在位置为 /home/linux-login-name。
    退出 Linux 子系统的方式:
(1)直接关闭终端;
(2)在终端中输入下令 exit,此时退出了 WSL,然后输入下令 wsl -t Ubuntu-20.04,关闭 ubuntu 子系统。常用的 wsl 下令:
常用的 wsl 下令:
# 列出所有分发的名称、运行状态、对应的 WSL 版本
wsl -l -v
# 终止指定的 Linux 分发
wsl -t <distro>
# 注销分发
wsl --unregister <distro>
# 终止所有正在运行的分发和 WSL2 轻型工具虚拟机
wsl --shutdown 3.2 换源

   使用 Linux 子系统时,为了提高软件的安装速率,需要将软件源换成国内的镜像源。
(1)备份数据源设置文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup
(2)修改数据源设置文件

sudo vi /etc/apt/sources.list
   这里使用中科大的源 (此处是 20.04 版本的源,对应版本名称为 focal,如果是其他版本则替换为对应的版本名即可)。
# 默认注释了源码仓库,如有需要可自行取消注释
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
   按 i键进入编辑模式,修改后,按 ESC 键退出编辑模式,输入:wq保存并退出。
(3)更新源,升级软件

sudo apt-get update
sudo apt-get upgrade
四、GNOME桌面版安装

WSL 工具的目的是使用户能够视需要在 Windows 上运行 Bash 和焦点 Linux 下令行工具。WSL 尚不支持 GUI 桌面或应用步伐 (例如 Gnome、KDE 等) 。对于 Linux 技能使用得还不太纯熟的可以自行安装图形界面,以方便使用。
4.1 将系统更新到最新。

   在继续安装之前,请确保拥有最新的包列表,并将已经安装的包升级到最新版本。
sudo apt update && sudo apt upgrade -y 4.2 安装多线程下载工具 Axel

   先安装一款类似迅雷的下载工具软件,因为我们会下载一些大的软件包,即使网络带宽很好,这些下载也需要一些时间。我们可以通过同时并行下载多个包来加快下载速率。
sudo apt install axel 4.3 安装 apt-fast

   apt-fast 是一款替换 apt-get 提拔下载速率的软件,通过安装这款软件来增加线程使下载软件速率加快。在下载软件包时,会大大缩短apt下载时间。使用过程与apt(apt-get)一样,只需要将apt(apt-get)改成apt-fast即可。

将PPA添加到资源列表:
sudo add-apt-repository ppa:apt-fast/stable   安装apt-fast:
sudo apt -y install apt-fast   安装过程中会有一些设置要完成。
 询问用哪个包管理器替换 apt-fast,Ubuntu 20.04 使用 apt:
https://img-blog.csdnimg.cn/direct/40d1a827cd8443b1a3b47e6456f9c55b.png
   设置最大毗连数,使用默认值 5。你也可以本身在 ${_MAXNUM} 变量中设置允许的毗连数。
https://img-blog.csdnimg.cn/direct/7d12785bb8e042bb8d8634a97a52b43f.png
   末了,选择Yes。
https://img-blog.csdnimg.cn/direct/d2d3ffb57dea48618e88adde83f315a3.png
4.4 设置 apt-fast

   打开 apt-fast.conf 文件
sudo nano /etc/apt-fast.conf   向下滚动,删除第一个镜像数组的注释,如下图所示。按 ctrl+x 退出,按 Y 键然后回车 enter 选择保存。完成 apt-fast 的设置。
https://img-blog.csdnimg.cn/direct/3e73047b800843d39257ce111ad684fe.png
4.5 安装 Gnome-Session

   使用 apt-fast 下载安装 gnome-session 桌面环境。
sudo apt-fast install ubuntu-desktop gnome   打开 .bashrc 文件
nano ~/.bashrc   将这两行粘贴到.bashrc文件末尾:
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
export LIBGL_ALWAYS_INDIRECT=1 https://img-blog.csdnimg.cn/direct/ae50ed0fe150412a8cc48f29000dc988.png
   执行以下脚本:
git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
cd ubuntu-wsl2-systemd-script/
bash ubuntu-wsl2-systemd-script.sh tanghao@DESKTOP-KL9JBME:~$ git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
Cloning into 'ubuntu-wsl2-systemd-script'...
remote: Enumerating objects: 121, done.
remote: Counting objects: 100% (39/39), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 121 (delta 33), reused 29 (delta 28), pack-reused 82
Receiving objects: 100% (121/121), 33.51 KiB | 181.00 KiB/s, done.
Resolving deltas: 100% (63/63), done.
tanghao@DESKTOP-KL9JBME:~$ cd ubuntu-wsl2-systemd-script/
tanghao@DESKTOP-KL9JBME:~/ubuntu-wsl2-systemd-script$ bash ubuntu-wsl2-systemd-script.sh
Hit:1 https://mirrors.ustc.edu.cn/ubuntu focal InRelease
Hit:2 https://mirrors.ustc.edu.cn/ubuntu focal-security InRelease
Hit:3 https://mirrors.ustc.edu.cn/ubuntu focal-updates InRelease
Hit:4 https://mirrors.ustc.edu.cn/ubuntu focal-backports InRelease
Hit:5 http://ppa.launchpad.net/apt-fast/stable/ubuntu focal InRelease
Reading package lists... Done
Selecting previously unselected package daemonize.
(Reading database ... 125395 files and directories currently installed.)
Preparing to unpack .../daemonize_1.7.8-1_amd64.deb ...
Unpacking daemonize (1.7.8-1) ...
Setting up daemonize (1.7.8-1) ...
Processing triggers for man-db (2.9.1-1) ...
'\\wsl$\Ubuntu-20.04\home\tanghao\ubuntu-wsl2-systemd-script'
用作为当前目录的以上路径启动了 CMD.EXE。
UNC 路径不受支持。默认值设为 Windows 目录。

成功: 指定的值已得到保存。
'\\wsl$\Ubuntu-20.04\home\tanghao\ubuntu-wsl2-systemd-script'
用作为当前目录的以上路径启动了 CMD.EXE。
UNC 路径不受支持。默认值设为 Windows 目录。

成功: 指定的值已得到保存。   这个脚本执行乐成后,需要重启ubuntu。在 Windows 终端中打开一个新的 PowerShell 窗口并键入:
wsl --shutdown https://img-blog.csdnimg.cn/direct/ada017695880454b86ac6c8d30f6088f.png
   继续,关闭现有的 ubuntu 选项卡并打开一个新选项卡。
4.6 安装 VcXsrv

   X-Windows 显示服务器步伐有多种:VcXsrv Windows X Server、Xming、Cygwin X Server。这里选择 VcXsrv,免费开源,在 SourceForget 上评价不错,下载地址为:
https://sourceforge.net/projects/vcxsrv/

打开下载安装好的了 VcXsrv。启动 X server (XLaunch) 并执行以下步骤:
    选择One large window,在显示编号(display number)中输入 0。
https://img-blog.csdnimg.cn/direct/ad9f5acbce754c77a823818f5ce222f5.png
   继续使用默认选择。我们将手动启动客户机。
https://img-blog.csdnimg.cn/direct/eae8877b5dd548068ba3a7e0215f223a.png
   这一步很告急。确保选中“Disable Access Control(禁用访问控制)”选项,否则我们的 gnome-session 客户端将无法访问Server X。
https://img-blog.csdnimg.cn/direct/521956ee2caf44a3bd3c85c7d247cbb0.png
   并在末了一步单击完成。
4.7 启动桌面版 Ubuntu

   完成上述步骤后,我们将看到一个黑色窗口,内里没有任何内容。如今将在这个窗口中启动我们的 gnome-session。
https://img-blog.csdnimg.cn/direct/2d1a04a10a4e4dbeb051b4f4ef02b6c8.png
   转到 Ubuntu 终端并输入,之后每次启动 GNOME 桌面都使用以下下令:
sudo gnome-session https://img-blog.csdnimg.cn/direct/91bb76ff513e4223a21d583dc0e801b0.png
大功告成!

参考博客

Win10 系统安装 Linux 子系统教程(WSL2 + Ubuntu 20.04 + Gnome 桌面 )
Windows中WSL2 设置运行GNOME桌面版 Ubuntu

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Windows设置Linux环境(Win 10 + WSL2 + Ubuntu 20.04 + GNOME桌面版)