Ubuntu 20.04使用 VNC遠程桌面連接避坑指南
自從開始使用Ubuntu 20.04搭建深度學習服務器,就想到使用VNC遠程桌面連接使用。可是之前一直使用的是Ubuntu18.04,心里想著設置應該不難,結果在配置的時候總出現無法連接的錯誤。下面我就分享一下我使用TigerVNC配置遠程桌面連接過程中遇到的問題和解決方法。
本文使用的軟件版本和使用Linux環境:
運行環境很重要,查看自己使用的Ubuntu版本和想要使用的桌面,并且準備好VNC軟件。
安裝Ubuntu的時候選擇了GUI的安裝,因為使用的是desktop版,默認為gnome桌面
Ubuntu使用命令:lsb_release -a 查看
- Ubuntu 20.04(focal)
- TigerVNC Server 1.10.1
- TigerVNC Viewer 1.7.0(Windows 64-bit)&
- GNOME 3.36.1
VNC軟件的選擇
RealVNC和TigherVNC都是非常不錯的VNC軟件,本次選擇使用TigherVNC是一個主動維護的高性能VNC服務器,因為能找到的成功經驗很多。避坑點之一就是選擇TigherVNC。TigerVNC的最新版本可以從GitHub發布頁面下載。
在Ubuntu上安裝TigherVNC服務器過程很簡單,使用如下命令即可安裝:
“apt install tigervnc-standalone-server”
安裝完成后可以使用vncpasswd命令進行設置,第一次登陸會讓你輸一個密碼,這個根據自己的需求來填寫。
個人不建議在詢問是否要設置一個“view-only”密碼設置密碼,因為使用“只看”密碼登錄后就只能看,不能修改。
啟動VNCserveer啟動命令和連接命令和Ubuntu18.04一樣
“Windows 10 Poswershell 中 ssh User_Name@IP-address”
“Vncserver:num –localhost no #num is port number”
有個需要注意的地方,在創建VNC端口的時候
一定要加上 -localhost no, 否則只能本地連接,不能實現遠程連接,那么vnc就毫無意義
“Example : vncserver :3 –localhost no” #3為端口號,no表示非局域網內賬戶也可訪問
VNC Viewer 的選擇
VNC Viewer 也有很多的版本,避坑點之二,你是用TigherVNC 就使用 TighVNC Viewer。所有配置完成后,可以VNC正常登錄了,在更換比如 RealVNC Viewer。
打開Tigervnc-Viewer連接
因為我使用的是Windows 10,直接下載TigerVNC Viewer
新建用戶和權限
避坑第三個地方,你當前登錄的用戶,一定要是使用adduser 命令添加的。
其實這一步驟在安裝完成Ubuntu就進行了,如果你已經安裝完成,最好重新建立一個用戶。
因為很多的資料都是要修改用戶權限,但是對于不是太熟悉的朋友,建議使用adduser命令來添加新用戶,這樣你可以省略掉很多配置權限的麻煩。
連接遇到灰屏和鼠標變X
當你準備連接服務器的時候,一登錄就出現出現灰色屏幕,而且在屏幕下面有2S時間出現。出現灰色屏幕和×型鼠標是因為vncserver找不到指定的圖形化組件。
如下報錯:
避坑點之四,遇到這個問題一定要先解決前面的問題,確認好你VNC的版本后,按照TigerVNC的方法解決:
- 排除桌面安裝的問題,安裝一遍 gnome
sudo apt-get install gnome-panel
- 修改~/.vnc/xstartup文件,一定要修改你當前準備遠程連接的用戶目錄。
我遇到在home下面沒有.vnc文件夾的情況,這個時候你可以新建目錄
“touch $HOME/.vnc/xstartup”
關于 xstartup 文件的修改值得注意的是:如果你是多用戶登錄,比如這個深度學習的服務器有很多人同時使用,那么每個新建的用戶,都必須修改一次xstartup文件,以確保每個用戶都能正常登錄,當然你也可以直接將可以正常登錄用下home/.vnc下的xstartup文件直接復制到新用戶home/.vnc下。
然后關閉當前打開的vnc:
vncserver -kill :num (你打開的端口號,可以用 vncserver –list 查看)
然后修改權限:
chmod +x ~/.vnc/xstartup
重新啟動VNC
vncserver :2 -localhost no (#2為端口號,no表示非局域網內賬戶也可訪問)
VNC 鎖屏之后無法輸入密碼解鎖
直接用SSH登錄服務器,然后kill用戶進程,重新啟動VNCserver登錄。
為了下次不會出現鎖屏,登錄桌面后可以按照以下步驟修改。
1.點右上角的下拉按鈕小箭頭。
2.在下拉屏幕中點【設置】。
3.在【設置】中點【隱私】。
4.在【隱私】中點左側的【鎖屏】。
先用 loginctl list-sessions
查看有多少用戶,
指定ID解鎖會話,或者直接解鎖所有會話,依據自己的需求來定。
sudo loginctl unlock-session [ID…]
我看見網上有很多關于Ubuntu20.04和18.04哪個更好的討論。個人認為一般來說新的系統肯定比老的系統功能更多,包含的軟件庫也更全面。但是遇到的BUG也多,而且通過網絡也不容易找到解決BUG的文章,這個時候就需要自己不斷的去嘗試。
有關Linux的命令,新手不熟悉可以查看《Linux就該這么學》。
以上就是我分享的關于Ubuntu 使用TigerVNC 進行遠程桌面連接的經驗分享,全是自己安裝過程分享,如果有不夠詳細的地方請各位指教,謝謝。