Win10 子系統安裝
更新WSL2需要Windows10版本2004且內部版本高於19041。
安裝過程可參考 https://blog.csdn.net/qq_33306246/article/details/107367629
圖形桌面安裝
安裝過程可參考https://zhuanlan.zhihu.com/p/149501381
該文章中提到了重要的一點 由於WSL2里面不能用systemd,所以需要手動啟動
自動啟動win10 Linux子系統程序
參考第三篇文章 https://blog.csdn.net/hiqiming/article/details/105244147
我的啟動腳本如下
Set ws = WScript.CreateObject("WScript.Shell")
ws.run "wsl -d Ubuntu-20.04 -u root /etc/init.wsl"
實際測試腳本執行了,但是遠程連接並不能連接上
問題分析
在測試腳本時,每次都重啟太麻煩,於是直接使用 (在win10中運行命令 啟動子系統中 桌面服務)來測試。

但是運行命令后,使用遠程工具連接並不能成功。(但是從子系統中直接運行命令卻可以成功)
會不會是權限問題。
我用管理員權限運行
wsl -d Ubuntu-20.04 -u root /etc/init.wsl
發現居然成功了。
更詭異的事情
我又試了一下mysql,看看mysql和xrdp是不是一樣的效果,發現mysql可以成功,但是xrdp不可以。
init.wsl 文件如下
#! /bin/sh
/etc/init.d/xrdp start
service mysql start
但是如果重啟會發現mysql會報一個異常關機的錯誤。
為了消除該錯誤,我們在啟動mysql服務前先關閉mysql服務
修改后init.wsl 文件如下
#! /bin/sh
/etc/init.d/xrdp start
service mysql stop
usermod -d /var/lib/mysql/ mysql
service mysql start
然后 mysql沒問題,xrdp遠程桌面也可以直接訪問了!!!
