Xmanager远程桌面教程
Xmanager遠程桌面教程
歡迎關注博主,查看更多文章。教程服務端為Ubuntu環境,其他環境如Rhel或者Debian類似。
簡介
本教程演示如何通過Xmanager6遠程連接服務器并進行遠程桌面,這是考慮到很多用戶雖然習慣于shell環境(即使用xshell配合xftp就能很好地進行服務端開發),但是對于很多新人,命令行工作是不友好的,而服務器雖然有可以安裝桌面環境卻不能顯式,Xmanager等工具實現了這個功能(Pycharm等其他遠程桌面工具也可以)。(本教程基于Ubuntu18.04LTS,安裝Xfc和GNOME桌面環境)
服務端配置
首先需要安裝顯式管理器(display manager,也是登錄顯示管理器),桌面版本的Linux很多是預裝DM的,如果只是使用GNOME桌面環境則可以安裝gdm(gdm3),如果也需要使用其他桌面環境的則需要安裝lightdm。這里為了配合多桌面環境,推薦使用lightdm。下面安裝lightdm命令也可以安裝gdm3,在安裝過程中配置時將默認管理器設置為lightdm。Xmanager官方建議使用lightdm作為display manager,使用xfce作為desktop environment。
sudo apt update sudo apt install lightdm然后,需要安裝桌面環境。安裝Xfce桌面(推薦使用的輕量級桌面,Linus本人也很喜歡這款桌面環境)可以使用如下命令,安裝GNOME桌面使用后一條命令(安裝過程需要選擇顯示管理器,請選擇一律選擇lightdm。需要安裝更多的桌面主題、圖標之類的可以查看GNOME安裝教程)。這里補充為什么使用xfce,GNAMOE作為Ubuntu的默認環境,使用硬件加速,遠程連接會非常卡頓,xfce則不會。
sudo apt install xubuntu-desktop sudo apt install xfce4 sudo apt-get install ubuntu-gnome-desktop sudo apt-get install gnome-shell接下來,需要對lightdm進行相關的配置。
首先,新建配置文件lightdm.conf,通過執行命令sudo vim /etc/lightdm/lightdm.conf,內容如下,該配置表示允許XDMCP服務啟動并開放177端口。
[SeatDefaults] greeter-show-manual-login=true xserver-allow-tcp=true[XDMCPServer] Enabled=true Port=177接著,通過執行命令sudo vim /etc/lightdm/gdm.schemas新建gdm.schemas文件,作為數據庫文件,內容如下。
<schema> <key>xdmcp/Enable</key> <signature>b</signature> <default>true</default> </schema>此時,為了確保XDMCP服務的正常開啟,需要允許服務開啟的端口177通過防火墻,防火墻新建規則即可,命令如下。
ufw allow 177 ufw reload編輯登錄配置文件,使用命令sudo vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf,并輸入如下內容。**該文件實質上是一個會話窗口的配置,登錄時如有多個可以切換。其中的user-session配置必須是/usr/share/xsessions/*下某個桌面環境。
[Seat:*] user-session=ubuntu [XDMCPServer] enabled=true [SeatDefaults] xserver-allow-tcp=true事實上,對于lightdm而言,系統使用的配置參數保存在/usr/share/lightdm/lightdm.conf.d/*.conf,用戶不能編輯。管理員可以在/etc/lightdm/lightdm.conf.d/*.conf和/etc/lightdm/lightdm.conf重載系統配置參數。系統會依次讀取前述的三個文件最后得到 LightDM 的有效配置信息。由于上述修改了很多lightdm的配置文件,為了重新加載配置,必須重啟服務。執行命令sudo service lightdm restart即可。
客戶端配置
理論上只要能訪問XDMCP的客戶端均可,Xmanager作為一款商業軟件,在這方面做得比較好,所以使用其作為客戶端連接工具。下面使用虛擬機模擬遠程服務器,不同的只是虛擬機使用的是內網IP,服務器一般是公網IP,
在Xmanager的主頁,XDMCP選項下新建文件夾,進入該文件夾,新建XDMCP會話如下圖,創建完成后雙擊連接登錄。
此時普通用戶登錄會立即崩潰,root用戶登錄會出現如下錯誤。
Error found when loading /root/.profile:
mesg: ttyname failed: Inappropriate ioctl for device
As a result the session will not be configured correctly.
You should fix the problem as soon as feasible.
我們先解決后者的問題,只需要在/root/.profile文件中將mesg n || true替換為tty -s && mesg n || true即可,替換后需要重新載入文件,通過命令sudo source /root/.profile。之后便可以root用戶登錄了,成功登錄如下圖。
下面看第一個問題,為什么普通用戶登錄會崩潰(只能root用戶遠程桌面登錄),網上很多解決方法如用戶家目錄新建.xsession文件或者改變.Xauthority權限,甚至還有要求切換右上角登錄session的,這些都不是問題的本質,查看日志可以發現上述操作都不是必須的,前者文件可以沒有,后者默認就是當前用戶權限。主要是因為lightdm只允許某個用戶一次登錄,多端登錄是不可以的,而服務器使用的虛擬機此時已經通過普通用戶登錄了桌面環境。所以,服務器一般是root用戶無桌面環境運行的,可以允許用戶遠程登錄,這里不建議遠程root登錄,比較危險。
解決上述問題后遠程普通用戶登錄如下。
問題解答
上述過程如果出現輸入字符重復等問題,則是因為Xmanager的鍵盤輸入所致,通過Xconfig修改配置XKEYBOARD即可,具體見這篇博客。
此外,關于Lightdm這款逐漸作為較為主流的輕量級顯式管理器,它的配置文件是按照/usr/share/lightdm/lightdm.conf.d/*和/etc/lightdm/lightdm.conf的先后順序重載配置的(并且/usr/share/lightdm/lightdm.conf.d/中的配置文件如50-ubuntu.conf開始的數字越大采用哪種配置),用戶一般在/etc/lightdm/lightdm.conf中定義軟件的配置,因此會覆蓋預設的配置。其中greeter-session是登錄歡迎界面,默認是lightdm-deepin-greeter;user-session是用戶可以選擇的桌面環境,一般是/usr/share/xsessions/*下某個桌面環境。
補充說明
目前NetSarang只提供家庭免費版的Xshell和Xftp,Xmanager屬于購買收費軟件。當然,尊重開發者的成果購買正版是應該的,如果實在財力所限可以訪問我分享的文件,該版本僅供學習交流使用。
總結
以上是生活随笔為你收集整理的Xmanager远程桌面教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GitPages个人域名博客
- 下一篇: 机器学习-Kmeans聚类