先說一下本人的實現環境:
控制端:Ubuntu 11.04
被控制端:CentOS 5.X (服務器)
網上查了相關資料,總結方法如下:
1.如果只是簡單的shell連接,即進入控制台模式
直接在自己的控制台下輸入ssh -l 用戶名 IP就行了。一般的服務器版的linux都默認裝了ssh,如果沒有就自己裝一個。
2.啟用圖形界面
如果想想windows那樣直接進入桌面的話,那就要在服務器端配置下ssh了。
進入/etc/ssh 修改裡面的sshd_config文件,找到X11Forwarding 將後面的no改成yes 這樣就啟動了ssh的X轉發功能。
3.利用VNC實現遠程桌面查看
先在服務器端裝上VNC,然後啟動一下VNC,在命令行下輸入vncserver就行了
[[email protected] ssh]# vncserver[[email protected] ssh]#
注意標注的數字,我的機器因為之前就已經啟動過vncserver,所以1.2都已經開過了,如果是第一次啟動vncserver,會要你輸入密碼,然後默認第一次啟動的應該是鏡像1,記住這個數字,待會連接的時候要用。
服務器端啟動VNC服務之後,在控制端就可以連接了,我的是Ubuntu,裡面默認就有一個遠程桌面連接,裡面提供了VNC連接桌面,
在主機裡面填上你要連接服務器的IP,在IP後面加上“:你剛才啟動vnc服務的數字” 例如連接我剛才啟動的vncserver 就填上 192.168.1.158:3
連接上後就會有驗證,輸入你剛才在服務器端啟動vncserver時輸入的密碼就行了
如果你看到如下桌面,表示你已經成功了一半:
這是因為遠程的vncsever默認的桌面環境是twm,也就是上圖
如果想看到想服務器端真實的桌面,就要配置一下服務器端的vncserve的xstartup文件,將桌面環境修改為gnome或者KDE
服務器端修改/root/.vnc/xstartup文件(.vnc表示該文件為隱藏文件 ls -all才能看見)
將裡面的文件替換成下文:
# more 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 &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
startgnome&
#如果想啟動KDE,改成startkde &
#恢復,改成twm&
DISPLAY=:1 gnome-session&
然後再啟動vncserver,先vncserver -kill 然後再vncserver
[[email protected] .vnc]# vncserver -kill :3
Killing Xvnc process ID 4297
[[email protected] .vnc]# vncserver
New 'ccnit:3 (ccnit)' desktop is ccnit:3
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/ccnit:3.log
[[email protected] .vnc]#
這個時候再去連接進去後就能看見桌面了
如果你不想每次都要先從命令行啟動VNC服務,可以將其設置為開機啟動,下面的資料是我轉貼的,我還是喜歡先用ssh直接連上,然後在啟動vncserver
打開“系統設置”-->"服務器設置"-->"服務",勾選上VNCserver,“保存”。
修改 /etc/sysconfig/VNCservers
VNCSERVERS="1:root 2:phred 3:sysadmin" 1代表“桌面1”,root代表用戶名;可同時啟動多個用戶桌面
VNCSERVERARGS[1]="-geometry 800x600 -alwaysshared -depth 24"
-alwaysshared代表允許多用戶同時登錄 -depth代為色深,參數有8,16,24,32。