Linux 远程桌面的实现

先说一下本人的实现环境:

              控制端: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

New 'ccnit:3 (ccnit)' desktop is ccnit:3

Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/ccnit:3.log

       注意标注的数字,我的机器因为之前就已经启动过vncserver,所以1.2都已经开过了,如果是第一次启动vncserver,会要你输入密码,然后默认第一次启动的应该是镜像1,记住这个数字,待会连接的时候要用。
        服务器端启动VNC服务之后,在控制端就可以连接了,我的是Ubuntu,里面默认就有一个远程桌面连接,里面提供了VNC连接桌面,

        Linux 远程桌面的实现

       在主机里面填上你要连接服务器的IP,在IP后面加上“:你刚才启动vnc服务的数字”  例如连接我刚才启动的vncserver 就填上      192.168.1.158:3

       连接上后就会有验证,输入你刚才在服务器端启动vncserver时输入的密码就行了

        如果你看到如下桌面,表示你已经成功了一半:

        Linux 远程桌面的实现

          这是因为远程的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

        如果你不想每次都要先从命令行启动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。

相关推荐