Windows系统规格
版本 Windows 11 专业版
版本号 24H2
操作系统版本 26100.4652
启用并更新WSL2
参考:
-
启用CPU硬件虚拟化功能
-
任务管理器 >> 性能 >> CPU 查看是否已经启用CPU硬件虚拟化功能;
-
若未启用则参考Windows电脑如何开启CPU虚拟化开启该功能,此处不再赘述。
-
-
启用WSL2
- 开启 控制面板 >> 启用或关闭Windows功能;
-
点选 Virtual Machine Platform 启用对虚拟机的平台支持;
-
点选 适用于Linux的Windows子系统 启用WSL。
-
以管理员身份运行 PowerShell
-
更新WSL
输入
wsl.exe --update
更新WSL,输入wsl --list --verbose
可查看已安装的Linux子系统版本和状态。
安装Ubuntu 24.04 & 18.04
参考:如何使用 WSL 在 Windows 上安装 Linux
-
查看可获取的Linux发行版
输入
wsl --list --online
可查看支持WSL的Linux发行版。 -
通过命令安装Ubuntu 24.04
输入
wsl --install -d Ubuntu-24.04
安装需要的Linux发行版,这里以Ubuntu 24.04为例。 -
通过Windows Store安装Ubuntu 18.04
下载系统文件可能需要一点魔法,也可尝试通过Windows Store中安装,可以使用某些游戏加速器(广告位招租)加速Windows Store。
直接在Windows Store中搜素
wsl
即可找到支持的Linux发行版,这里以Ubuntu 18.04为例。 -
设定用户名和密码
请坐和放宽,耐心等待系统完成下载和安装,并设置用户名和密码,输入密码时命令行不会有可见的变化,无需担心,你确实已经应该可能大概把密码输进去了~~
进入系统后可以输入
cat /etc/os-release
查看系统信息,到这里即完成了基于WSL的Ubuntu系统的安装 -
更新Ubuntu系统软件包
输入
sudo apt update && sudo apt upgrade
先更新包列表 && 再升级已安装的软件包到最新版本 -
设置WSL默认Linux发行版
输入
wsl --list --verbose
可以查看当前WSL安装的Linux发行版状态,前面带有*
号的是默认启动发行版。输入
wsl --set-default Ubuntu-24.04
可以修改wsl
默认启动的Linux发行版。
通过WSLg(XWayland)实现Ubuntu原生桌面环境
Ubuntu系统安装软件包
以下操作参考:
《在Windows 11上 使用 WSL 安装并运行带有图形界面的 Ubuntu 24.04》
《WSL 2 通过 WSLg (XWayland) 完美实现 Ubuntu 原生桌面环境💻》
请三连支持视频原作者,在此感谢B站up主Reaper_6的知识分享!
-
验证系统包管理健全性
输入
sudo apt install neofetch
,通过安装并运行neofetch
验证系统包管理健全性;
输入
sudo apt install htop
,通过安装并运行htop
验证系统包管理健全性;对进程管理器
htop
感兴趣的同学可以阅读深入解析htop:全面了解进程管理器的每一个细节
在 WSL2 中使用 WSLg (XWayland) 实现完整桌面环境
此处完全参考B站up主Reaper_6的文档在 WSL2 中使用 WSLg (XWayland) 实现完整桌面环境,请阅读并支持原作者的知识分享,再次感谢原作者的知识分享。
本文仅用作个人操作记录整理,以下内容非教程性质。
-
确保系统已更新并设置wsl.conf文件
输入
sudo apt update && sudo apt upgrade
先更新包列表 && 再升级已安装的软件包到最新版本输入
cd /etc
>>ls
找到wsl.conf
文件,若没有该文件则需要自主创建输入
sudo vim wsl.conf
进入文件编辑,查看是否有红框中内容若没有就按键盘
I
键进入编辑模式添加红框中内容,之后点击键盘esc
键,输入:wq
保存并退出文档编辑之后重启WSL,开始安装图形界面
-
安装图形界面
输入
sudo apt install ubuntu-desktop xwayland
安装ubuntu-desktop
和xwayland
;注意在安装前最好先启用魔法上网,避免卡在某些地方导致安装时间过长或失败
-
创建和修改服务
输入
sudo systemctl edit --full --force wslg-fix.service
在编辑器中黏贴以下代码,按
ctrl+s
保存, 按ctrl+x
退出[Service] Type=oneshot ExecStart=-/usr/bin/umount /tmp/.X11-unix ExecStart=/usr/bin/rm -rf /tmp/.X11-unix ExecStart=/usr/bin/mkdir /tmp/.X11-unix ExecStart=/usr/bin/chmod 1777 /tmp/.X11-unix ExecStart=/usr/bin/ln -s /mnt/wslg/.X11-unix/X0 /tmp/.X11-unix/X0 ExecStart=/usr/bin/chmod 0777 /mnt/wslg/runtime-dir ExecStart=/usr/bin/chmod 0666 /mnt/wslg/runtime-dir/wayland-0.lock [Install] WantedBy=multi-user.target
输入
sudo systemctl enable wslg-fix.service
启用wslg-fix.service
移除所有对Wayland的引用,输入
sudo systemctl edit [email protected]
将以下两行代码输入编辑器中,注意必须放在
### Anything between here and the comment below will become the contents of the drop-in file
和### Edits below this comment will be discarded
这两行之间[Service] ExecStartPost=-/usr/bin/rm -f /run/user/%i/wayland-0 /run/user/%i/wayland-0.lock
输入
sudo systemctl set-default multi-user.target
更改默认启动目标 -
用XWayland替换默认Xorg
首先输入
sudo mv /usr/bin/Xorg /usr/bin/Xorg.original
备份原始Xorg
脚本接着输入
sudo nano /usr/bin/Xorg.Xwayland
创建新的Xorg
脚本在脚本编辑器中粘贴以下代码,按
ctrl+s
保存, 按ctrl+x
退出#!/bin/bash for arg do shift case $arg in # Xwayland 不支持 vtxx 参数,因此转换为 ttyxx vt*) set -- "$@" "${arg//vt/tty}" ;; # Xwayland 完全不支持 -keeptty -keeptty) ;; # Xwayland 完全不支持 -novtswitch -novtswitch) ;; # 其他参数保持不变 *) set -- "$@" "$arg" ;; esac done # 检查运行时目录是否存在,如果不存在则创建 if [ ! -d $HOME/runtime-dir ] then mkdir $HOME/runtime-dir ln -s /mnt/wslg/runtime-dir/wayland-0 /mnt/wslg/runtime-dir/wayland-0.lock $HOME/runtime-dir/ fi # 将 XDG_RUNTIME_DIR 变量指向 $HOME/runtime-dir export XDG_RUNTIME_DIR=$HOME/runtime-dir # 查找可用的显示编号 for displayNumber in $(seq 1 100) do [ ! -e /tmp/.X11-unix/X$displayNumber ] && break done # 在这里可以更改或添加选项以适应你的需求 command=("/usr/bin/Xwayland" ":${displayNumber}" "-geometry" "1920x1080" "-fullscreen" "$@") systemd-cat -t /usr/bin/Xorg echo "Starting Xwayland:" "${command[@]}" exec "${command[@]}"
输入
sudo chmod 0755 /usr/bin/Xorg.Xwayland
设置文件的权限输入
sudo ln -sf Xorg.Xwayland /usr/bin/Xorg
创建链接 -
配置GDM和GNOME的显式器分辨率
输入
mkdir ~/.config
创建设置文件,若提示该文件已经存在则直接进行下一步输入
nano ~/.config/monitors.xml
编辑刚刚创建的设置文件在编辑器中粘贴以下代码,按
ctrl+s
保存, 按ctrl+x
退出<monitors version="2"> <configuration> <logicalmonitor> <x>0</x> <y>0</y> <scale>1</scale> <primary>yes</primary> <monitor> <monitorspec> <connector>XWAYLAND0</connector> <vendor>unknown</vendor> <product>unknown</product> <serial>unknown</serial> </monitorspec> <mode> <width>1920</width> <height>1080</height> <rate>59.963</rate> </mode> </monitor> </logicalmonitor> </configuration> </monitors>
输入
sudo mkdir /var/lib/gdm3/.config
,若提示该文件已经存在则直接进行下一步输入
sudo cp ~/.config/monitors.xml /var/lib/gdm3/.config/
将此文件复制到GDM的主目录,GDM(GNOME Display Manager)是 GNOME 桌面环境的默认显示管理器(Display Manager),负责管理系统的图形登录界面。输入
sudo chown -R gdm:gdm /var/lib/gdm3/.config/
设置GDM用户的monitors.xml
配置文件的正确权限输入
sudo shutdown -h now
关闭Ubuntu,输入wsl --shutdown
关闭WSL,重新以管理员权限启动PowerShell, -
启用GUI运行Linux发行版
重启WSL之后,输入
sudo systemctl start graphical.target
启动GDM图形界面大功告成
后记
为了适配个人的显示器,输入 sudo nano /usr/bin/Xorg.Xwayland
设置 Xorg
脚本中的 command
,将分辨率改为适配个人显示器的数值
...
# 在这里可以更改或添加选项以适应你的需求
command=("/usr/bin/Xwayland" ":${displayNumber}" "-geometry" "3440x1440" "-fullscreen" "$@")
...
别忘了输入 nano ~/.config/monitors.xml
同步修改设置文件
...
<width>3440</width>
<height>1440</height>
...
完成修改之后,输入 sudo shutdown -h now
关闭Ubuntu,输入 wsl --shutdown
关闭WSL,输入 wsl
重启WSL
重启WSL之后,输入 sudo systemctl start graphical.target
启动GDM图形界面,就可以正常使用图形界面了
结语
感谢阅读本文,如果对你的学习或工作有所帮助,麻烦点赞收藏,See You ~( ̄▽ ̄~)~
转载自CSDN-专业IT技术社区