1. 程式人生 > >解決VNC連線安了Ubuntu MATE系統的樹莓派3b時出現灰屏的問題

解決VNC連線安了Ubuntu MATE系統的樹莓派3b時出現灰屏的問題

1) 首先安裝vncserver服務這一步有沒有用我也不知道,一般人都是裝的tightvncserver,當然,我也裝了)

sudo apt-get install vnc4server
2)開啟vnc服務  
vncserver 
     會給分配一個埠
3)在電腦端用VNC Viewer 登入,如果看到命令列介面+灰色背景,那就對了,去下一步
4)修改配置檔案   
  
sudo nano ~/.vnc/xstartup
      進去之後複製貼上一下內容:        
#!/bin/sh                                                                       
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
mate-session &
5)重啟vnc服務,輸入如下兩個命令:
vncserver -kill :1
vncserver
 在電腦端重新連線即可
此方法僅針對樹莓派3b原生Ubuntu MATE系統
如果時其他系統,只需修改配置檔案的最後一行

  mate-session &
改成什麼呢?
先檢視系統的桌面環境
echo $DESKTOP_SESSION
不要用putty,不然會返回為空的,應該在原有的裝置上檢視
如果是gnome桌面,改成gnome-session &;
如果是KDE桌面,改成startkde &;
如果是Unity桌面,首先去 /usr/share/gnome-session/sessions/下看桌面session的名稱,如果是ubuntu-2d,則將最後一行改為:
export STARTUP="/usr/bin/gnome-session --session=ubuntu-2d"

$STARTUP

我查了一下午才搞定,好在搞懂了原理,太不容易了

如果上面還沒有解決問題,就一定是解析度的問題了

一種方法是啟動vncserver時手動設定解析度

vncserver -geometry 800x600

另一種方法是修改配置檔案,詳細方法見連結

如果還是不行,還可以修改另一個配置檔案

sudo nano /usr/bin/vncserver

修改這一行為你需要的解析度

vncserver -geometry 800x600

如果還還還是不行,就是xstartup許可權不夠了,執行下面的命令

chmod 777 xstartup

第二次更新

今天又一次vnc登入,又灰屏了,我慌了。。。檢視配置檔案後,發現是對的,然後kill了vncserver,又

vncserver -geometry 800x600

再在電腦端登入就好了。。。好了。。。了。。。

另外,我用windows自帶的遠端桌面訪問,還是會出現問題,如圖:


希望知道解決方法的同學能給我提供幫助