使用服务器时,利用远程桌面是非常方便的,否则需要跑到服务器机房操作非常的费事,或者需要远程操作机器是也可以使用,一般的操作系统都会带有远程桌面功能,但是不如第三方的的软件好用,对于linux系统常用的远程桌面软件是vnc,vnc分为服务器端和客户端,下面先讲讲vnc服务器端的安装与配置。
安装VNC服务器端
Ubuntu中vnc服务器端的安装很简单,运行如下命令:
$ sudo apt-get install vnc4server
安装完成后第一次运行要求设置密码。
设置VNC登录密码
$ vncpasswd
Password:
verify:
提示输入密码,确认密码。设置密码并第一次启动vncserver后,在用户家目录中会生成.vnc/目录,注意:刚安装完用户家目录中是没有.vnc目录的。
启动和关闭vcnserver
$ vncserver :1
表示启动vncserver,“:1”表示display号,即启动vncserver的1号display。服务器中可以在不同的账户中启动不同的display号,客户端登录时需要填写对应的display号登录到对应的账户。如果多个客户端登录同一个display,会看到别人操作的动作,即会争抢鼠标。
$ vncserver -kill :1
关闭1号display。
VNC服务器的配置
默认的配置文件是~/.vnc/xstartup。刚安装完如果不修改配置文件的话,从客户端连接时将看不到完整的桌面,而只有一个Terminal窗口,如下图所示。
这是因为默认启用的桌面配置的问题,需要修改配置文件。网上查到的很多文章都说,将配置文件中的twm &行注释掉,然后添加一行gnome-session &即可。可是通过实验,发现并不一定能解决问题!一篇配置方法确实可行,下面将该文章中的配置文件内容搬过来记录于此。
默认的配置文件如下:
#!/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" &
x-window-manager &
讲述的配置文件如下:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
# 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" &
# x-window-manager &
export DESKTOP_SESSION=Ubuntu-2d #这个 ubuntu-2d 参考 /usr/share/gnome-session/sessions/ 下的文件名设置成不同的值
export GDMSESSION=ubuntu-2d
export STARTUP="/usr/bin/gnome-session --session=ubuntu-2d"
$STARTUP
到此vnc客户端就可以进行连接并正常显示了。
关于客户端
据说有不同的客户端可以连接vncserver,我一直是用的VNC Viewer(官网地址:http://www.realvnc.com/download/viewer/),该软件提供了用于不同操作系统的版本,是一个绿色版的小软件,直接运行使用,非常方便。如下图所示:
关于vncserver的开机启动
安装vncserver主要是为了能远程操作服务器,但是会有一个问题:如果远程操作时需要将服务器重启,但是服务器重启后如果vncserver不能开机自己启动的话,客户端就无法远程连接到服务器了,这样用起来就非常麻烦了,所以必须想办法让vncserver开机启动。在网上查阅了很多相关的内容,发现很乱也很不靠谱,暂时没有找到简单有效的配置方法。
后来我使用了另外一种方法:在服务器上开启ssh服务并让ssh服务开机启动,这样服务器重启后,先通过ssh连接到服务器,然后通过命令行启动vncserver,然后就可以用vnc客户端连接了。
怎样在CentOS 7.0上安装和配置VNC服务器:http://www.linuxdiyf.com/linux/11737.html
CentOS下安装轻量级桌面Fluxbox+VNC:http://www.linuxdiyf.com/linux/11339.html
X11VNC在Ubuntu 14.04服务器版上开启远程桌面的使用:http://www.linuxdiyf.com/linux/10447.html
超快速搞定Linux的VNC:http://www.linuxdiyf.com/linux/8463.html
Windows利用VNC远程连接Linux桌面:http://www.linuxdiyf.com/linux/7035.html