Chinaunix首页 | 论坛 | 博客
  • 博客访问: 362707
  • 博文数量: 245
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: -10
  • 用 户 组: 普通用户
  • 注册时间: 2016-08-24 23:21
文章分类

全部博文(245)

文章存档

2017年(2)

2014年(6)

2013年(1)

2011年(15)

2010年(68)

2009年(153)

分类: LINUX

2010-12-27 11:05:09

Linux服务器系统一般都运行在Runlevel 3下,图形界面资源消耗比较多,但是有些时候,图形界面下配置相对简单,如配置打印服务器,如果在命令行下可能要写很多配置文件,但图形界面下仅仅需要点几下鼠标就可以实现,还有些软件如Oracle11g安装也要求有图形界面支持,服务器一般放置在机房,进机房接显示器不太现实,这时候就需要VNC来帮忙了.

标准的linux发行版一般有两个vnc相关的软包,一个是客户端程序(vnc),一个是服务端程序(vnc-server),在这里以RHEL 5.3为例

系统登陆用户都可以为自己启用VNC远程桌面,直接执行vncserver命令以启动vncserver,首次运行时会提示设置密码.

# vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth:  creating new authority file /root/.Xauthority
New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:1.log

系统会依次为每个用户分配display_no,默认从数字1开始,如:user1首先执行vncserver命令,系统将会为其分配显示号1,后面的用户运行vncserver后,得到的显示号依次为2…n,vncserver也会监听相应的端口,标准vnc客户端连接监听端口始于{5900 + display_no},基于web的客户端连接端口始于{5800 + display_no},vncserver将会依次打开,注意iptables 里要允许这些流量通过.

默认情况下VNC客户端登陆后只能看到VNC Server内置的twm图形管理器,实在是有点丑,要想使用Gnome或kde桌面还必须取消$HOME/.vnc/xstartup 文件中的两行配置的注释

unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

按以上的设置,系统重启后vnc服务就关闭了,要想系统重启还能启用相应用户的远程桌面,就必须要配置文件中指定,并且将vncserver服务设置成随机启动

chkconfig vncserver on

编辑vnc配置文件/etc/sysconfig/vncservers

加入以下配置,如果要启用多个用户的VNC桌面,注意显示号不能重复.

VNCSERVERS="n:username"
VNCSERVERS[n]="-geometry 800x600"

n:username,阿拉伯数字'n'是标识,vnc中称之为display_no,用于后面的参数指定和相应VNC应监听的连接端口(VNC客户端连接{5900 + n},WEB客户端连接{5800 + n}),username为用户名,表示username用户的桌面.

配置参数
-nolisten tcp 阻止使用X Window,因为我们就是要使用图形界面,所以去掉了这项
-nohttpd 阻止来自基于WEB的VNC客户端连接,如浏览器
-localhost 只允许本地VNC连接,vnc安全性较低,所以默认只允许本地连接,所有要在公网上使用VNC,最好有一个安全连接来保证,如SSH/


其它相关命令

vncpasswd 修改vnc桌面登陆密码,vncpasswd默认修改 $HOME/.vnc/passwd 中密码,当然root用户也可以指定文件来修改指定用户的vnc密码.例如,vncpasswd /home/user1/.vnc/passwd

vncviewer Linux下的VNC客户端,windows下常用的是RealVNC

vncserver的其它参数,看下面的帮助,这里用的较多的是vncserver -kill :display_no,结束指定显示号的远程桌面[display_no前有个':'号]

# vncserver --help

usage: vncserver [:] [-nohttpd] [-name ] [-depth ]
                 [-geometry x]
                 [-pixelformat rgbNNN|bgrNNN]
                 ...

       vncserver -kill

文章来自互联网,感谢作者!
阅读(1335) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~