理論上講,所有Win10的Linux子系統都可以通過Windows10本機遠程桌面和Xming的方法來安裝使用圖形化界面,筆者目前只接觸了Debian系的Linux系統,故以Debian GNU/Linux系統和xfce4為例介紹(Ubuntu系統裝完Xming就能使用,在此不再敘述,詳情請關注IT之家極客學院,同時本文也是為了方便一些有一定Linux使用經驗朋友而寫的,不喜勿噴)。另外,如果是Linux使用比較多的話,筆者推薦使用Debian系統,穩定性、依賴方面強過Ubuntu及Kali Linux等。
一、使用Windows10本機遠程桌面連接
1.1、首先安裝好Debian
具體過程不再敘述,參見IT之家Win10使用進階:一周年更新14316如何開啟Linux Bash命令行,安裝好並設置密碼之后如下:
1.2.使用國內軟件源
眾所周知的原因,在國內如果使用官方源的話,更新軟件、安裝軟件會非常的慢,非常痛苦,我們需要替換成國內軟件源:
-
1、在win10資源管理器中打開C:\Users\username\AppData\Local\Packages\TheDebianProject.DebianGNULinux_76v4gfsz19hv4\LocalState\rootfs\etc\apt文件夾(將username替換為你自己的win10賬戶名)。
-
2、編輯sources.list文件,用#號注釋掉原有的官方更新源,增加國內源。下面我貼出中科大比較穩定的stretch分支的源,軟件比較老,但是穩定。然而我個人用的是buster分支,軟件比較新,有些奇怪的事,Ubuntu默認用的很多軟件的版本就比較新,所以系統穩定性要比Debian差些,求穩的同志們就用下面的源吧:
deb https://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free
deb https://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian/ stretch-updates main contrib non-free
deb https://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
deb-src https://mirrors.ustc.edu.cn/debian-security/ stretch/updates main contrib non-free
筆者在此也放出中科大大佬的工具,上面有常用的Linux發行版的國內源文件,已經設置好的,供各位下載:https://mirrors.ustc.edu.cn/repogen/
3、編輯完保存,如圖:
1.3.更新軟件源
代碼:sudo apt-get update
注意:這里有個坑,因為是https協議的,但Win10的Debian子系統,並沒有安裝apt-transport-https,直接更新會報錯,建議第一次更新先使用http協議或者官方源,在裝完apt-transport-https之后,再使用1.2中https協議的軟件源(Debian的buster以上分支也不需要,stable類的分支必須先安裝apt-transport-https才能使用https協議的軟件源,使用https協議可以有效防止運營商劫持)。
更新完如圖:
1.4.安裝xorg
xorg是xfce桌面需要的一個基礎依賴性質東西,開機時候提供登陸界面。這里我說的可能不太准確,個人理解就是要裝xfce必須先安裝xorg,不然使用起來會有些問題,比如缺少這個組件那個組件的,如果裝Ubuntu桌面的話替換成kdm,xfce也可以先裝xdm,看個人喜好。
代碼:sudo apt-get install xorg
大約需要占用361M空間。
選擇語言區域(建議選英文,選漢語也沒用,就當學英語了),一路回車:
最后那行報錯不用管,研究好些天都沒解決掉,反正軟件安裝成功了。
1.5.安裝xfce4
代碼:sudo apt-get install xfce4
大概需要441M空間,如果不換國內源的話怕是需要下載一天。
1.6.安裝並配置xrdp
Xrdp允許Windows或Linux系統通過遠程桌面的方式來訪問另外一台主機,特別適合本地虛擬機使用,詳情參考Linux公社文章:xrdp完美實現Windows遠程訪問Ubuntu 16.04。
1、安裝xrdp,代碼:sudo apt-get install xrdp
2、設置使用3390端口
代碼:sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
3、向xsession中寫入xfce4-session
代碼:sudo echo xfce4-session >~/.xsession
4、重啟xrdp服務,代碼:sudo service xrdp restart
這時,可能會有防火牆提示,允許就好。
1.7.啟動遠程桌面
1、在Cortana中搜索遠程桌面並啟動:
2、點擊顯示選項,填入本機IP(這里是局域網IP,所以你也可以用局域網內其他Windows10電腦試試,建議使用靜態ip)、剛剛設置的端口號、還有你的Linux子系統用戶名(也可以使用root賬戶登陸,比較麻煩,因為Debian默認是禁止使用root賬戶登陸的),如圖:
3、點擊鏈接:
4、輸入Linux子系統密碼:
5、盡情享(shí)用吧:
至於后面需要做的配置,參見:debian 9安裝后需做的幾件事。
二、使用Xming及ssh連接
如果你用的Windows10子系統是Ubuntu,那安裝完就能用了,很簡單的詳見IT之家相關教程,理論上所有Linux都可以通過本方法來實現安裝,下面是Debian以及Kali Linux等系統需要做的配置,參考了:Use SSH and XMing to Display X Programs From a Linux Computer on a Windows Computer
首先需要安裝Debian還有xfce4,與上面第一種方法述1.1至1.5的內容完全一致,在此不再贅述,安裝好之后近些如下操作:
2.1.安裝xming
沒什么特殊的,下載安裝,打開就行。
地址:https://xming.en.softonic.com/?ex=REG-60.2
2.2.確定OpenSSH已經安裝
在終端執行:sudo apt-get install openssh-server
要是如下圖這樣,那就是沒有安裝,輸入y確認就是了:
2.3.配置DISPLAY方法運行變量
安裝完xming之后你會發現並不能像Ubuntu一樣運行DISPLAY=:0 startxfce4指令來啟動Debian的應用程序,提示找不到DISPLAY方法,那是沒有配置ssh相關內容,我們需要做如下配置:
1、打開${HOME}/.bashrc文檔,在最后面加入:
if [ -d "${HOME}/bin" ] ; then
export? PATH="${PATH}:${HOME}/bin"
if [ -f "${HOME}/bin/ssh_login" ] ; then
. "${HOME}/bin/ssh_login"
fi
fi
2、在${HOME}/bin/文件夾下新增ssh_login文件(bin文件夾沒有就新建一個),內容如下:
if [ -n "${SSH_CLIENT}" ] ; then
if [ -z "${DISPLAY}" ] ; then
export DISPLAY='localhost:10'
fi
fi
3、給ssh_login文件777權限,代碼:sudo chmod 777 ${HOME}/bin/ssh_login
2.4.在終端中啟動xfce4桌面
如果你沒有配置xming,沒改里面東西,那默認實在0號顯示器上顯示Linux系統的程序,輸入代碼如下:
DISPLAY=:0 startxfce4
也可以直接啟動root賬戶:
sudo su
DISPLAY=:0 startxfce4
默認狀態會只有兩個比較簡陋的panel,如下圖:
你也可以再進行拖動調整,比如筆者上面是Windows10的任務欄,下面是Debian的panel,結合到一起美滋滋:
其實正常狀態下,還會啟動一個桌面進程的,由於我用的是buster分支的軟件源,這就導致軟件不是最穩定版本,然后desktop啟動失敗,於是就剩下這兩個panel,然而因禍得福,個人感覺這樣很舒服,所以保留了這種,如果你用了我上面寫的源,啟動后的將會和前面的遠程桌面類似。
三、Win10遠程桌面與Xming連接的對比
其實實現原理都比較接近,都需要配置一系列東西,但兩者體驗還是有些不一樣的,下面做個簡要的對比:
1、安裝難易度:
個人感覺,就Debian來講使用xming的方式安裝稍微簡單一些,但二者相差不多,如果是Ubuntu,那會更加簡單,各位可以自行體驗。
2、啟動便攜度:
相同點是:兩者都需要先在powershell或者cmd中先啟動bash。
不同點是:遠程桌面的方法啟動bash后再啟動遠程桌面,只用配置一次,以后點擊鏈接就可以,相當於每次啟動需要鼠標點擊一次powershell,輸入bash,點擊遠程桌面,點擊鏈接;
xming的方法需要再啟動xming,然后在powershell里輸入DISPLAY=:0 starxfce4,但是終端都會記錄以前輸入的內容,所以也不用每次都輸入,其實就我個人而言,xming的方法更加方便啟(zhuang)動(bi),哪怕每次都輸入DISPLAY=:0 startxfce4。
使用遠程桌面的方法啟動后,可以關掉powershell了,只要后台服務在運行,就不會影響體驗,但是xming不行,如果剛剛那個啟動xfce4的powershell關掉,所有打開的窗口都會關閉。
3、使用體驗:
采用遠程桌面連接的方式,將會有非常完整的沉浸式體驗,你會獲得一個完整而不割裂的Linux系統,如在電腦上單獨安了一個完整的Linux體驗:
而使用xming的方法,你會感覺兩個系統合二為一了,有種混血兒的感覺,每一個Linux程序都將會開啟一個xming窗口,而且這些窗口也支持win10的分屏功能:
4、資源占用情況:在啟動系統只開一個文件管理器的情況下,使用遠程桌面的方法資源占用稍多,個人猜測可能是遠程桌面本身占用的資源稍多一些,另外說一下,兩者是可以同時打開的:
5、與Windows10系統的互通性:
文件互通性:兩者都支持在兩個系統下實時更改文件,但是都需要使用root賬戶登陸才能完全實現實時更改文檔,不然在Windows10下的更改,在Linux下看不見,但在Linux下的更改立刻就能在Windows10上看到。
剪貼板互通性:兩者都可以實現剪貼板文本內容的互通,但對於文件就有所不同。如使用遠程桌面,文件的話由於兩個系統的路徑不同,無法從Windows10下粘貼文件到Linux下,如圖:
但是可以從Linux下把文件粘貼到Windows10下的,比如粘貼到桌面,這是通過遠程桌面本身實現的,如圖:
而如果使用xming的話,只能文本互通,文件無法通過剪貼板復制粘貼,有時候還會有意外發生,需要清空剪貼板,比如筆者就在桌面上放了個
6、性能方面
個人實際體驗,xming方式的性能較差,比如使用Firefox的時候往往比較卡,這可能是實現方式不同的原因,嘗試過提高xming優先級,也沒多大用。
綜上所述,如果希望有完整的沉浸式Linux體驗,推薦使用遠程桌面連接的方式,如果主要用的還是Windows10,希望使用Windows10的同時也使用Linux,那么筆者推薦使用xming的方式,這種方式可以將兩個系統同時結合起來,從而獲得很神奇的體驗。在此再感謝下參考文獻中的大神,有了他們的無私奉獻,我們才能學到更多的知識。
參考文獻:
1、Win10使用進階:一周年更新14316如何開啟Linux Bash命令行
3、使用xrdp實現windows遠程桌面ubuntu linux
5、Use SSH and XMing to Display X Programs From a Linux Computer on a Windows Computer