点滴

IT博客 首页 新随笔 联系 聚合 管理
  103 Posts :: 81 Stories :: 50 Comments :: 0 Trackbacks

由于客户需要充分利用花了N多money购买的服务器,而服务器上运行的是Linux AS,客户又不太会使用文本模式,因此只好采用配置X-server的方式来给每一个用户一个图形终端了,这多亏了X-windows设计的先进性呀。
为了简单,我就使用了Linux自带的vnc-server。
代码::
#uname -a
Linux server1.linux 2.4.21-4.ELsmp #1 SMP
#rpm -q vnc-server
vnc-server-4.0-0.beta4.1.1

你可以使用特定的帐号来运行你的vncserver命令。这样可以做到同时有多个用户登录图形终端。同时一个图形终端编号只能有一个用户登录。
代码::
#useradd demo
#passwd -d demo
#su demo
$vncserver
passwd: //如果这个帐号是第一次运行vncserver,则会要求你输入连接的密码。
verify:
New 'server1.linux:4 (demo)' desktop is server1.linux:4
Starting applications specified in /home/demo/.vnc/xstartup
Log file is /home/demo/.vnc/server1.linux:4.log

上面这段话表示起动了一个图形终端,编号为4,要记住这个编号,等下登录时需要提供这个编号。
如果你要停止这个进程,使用
代码::
$vncserver -kill :4

就可以了,后面的数字表示图形终端编号。
ok,这样,x-server已经起动了。
我们来测试一下。
找另外一台机器,如果是Linux的系统,那就比较方便,直接使用下面的命令
代码::
#vncviewer xx.xx.xx.xx:4 ;连接方式是ip地址:编号,这里的编号是4.

会弹出一个对话框,要求你输入密码,如果密码正确,这是就会出现图形终端了。
如果是windows的机器,那就下载一个vnc的软件吧。我用的是winVNC。
连接方式是一样的。
不过大家也看到了,虽然图形界面是看到了,但是好丑呀!的确,因为默认的图形终端采用xterm+twm,桌面上什么都没有。如果能使用默认的GNOME或者KDE或者FVWM等X-manager该有多好?
没有问题,接下来的配置就是解决这个问题。
每当一个帐号运行一次vncserver后,就会在家目录下创建.vnc目录。
里面有一个可执行脚本xstartup。看看里面的内容就知道了,默认起动的是twm。
那么我们就修改这个文件吧,去掉里面的所有内容,写入下面一行
代码::
gnome-session

这样就指定起动gnome。
也可以写入
代码::
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

表示起动默认的图形管理器。
保存退出,然后重新起动vncserver。
代码::
$vncserver -kill :4
$vncserver

然后到客户端去连接X-server,看是不是变得漂亮些啦。
可能你又会问了,如果我有1000个用户呢,是不是每一个用户都需要去修改这个文件呀,那多麻烦呀。
那我们就找到根源吧,看到底xstartup是谁创建的。
找到/usr/bin/vncserver,他是一个perl脚本程序。
打开看看
转到43行,你就会看到
$defaultXStartup变量的定义了,看到了吧。
这下你知道怎么改了吧。
把他变成这个样子:
代码::
$defaultXStartup
 = ("#!/bin/shnn".
 "# Uncomment the following two lines for normal desktop:n".
 "unset SESSION_MANAGERn".
 "exec /etc/X11/xinit/xinitrcnn".
 "#[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresourcesn".
 "#xsetroot -solid greyn".
 "#vncconfig -iconic &n".
 "#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &n".
 "#twm &n");

实际上就是去掉最前面的两行注释,注释掉下面的几行。保存退出。
你再创建一个帐号,运行vncserver看看。
是不是默认的图形终端就修改了呢?
我的任务完成了。
需要去面试了。
大家试试吧。




安装远程桌面,VNC Server on FreeBSD + VNC Viewer on Windows !
一直都在思考*NIX下面如何远程桌面,发现VNC实在是一个很好的东东,在*NIX平台上的性能表现远超过于Windows平台上面!

下面就以FreeBSD为例子来说明如何建立Remote Desktop:

1) FreeBSD + X-Window(xorg) + Gnome Desktop + VNCServer
2) Windows + RealVNC Viewer Free Edition

安装FreeBSD, xorg, Gnome不作过多叙述了,直入主题!
 
FreeBSD# cd /usr/ports/net/vnc
FreeBSD# make
FreeBSD# make install
FreeBSD# make clean distclean


完成后,可以用which vncserver查看路径为:/usr/local/bin/vncserver
在自己的home目录下面新建一个目录:

[xport@FreeBSD ~] $ mkdir .vnc
[xport@FreeBSD ~] $ cd .vnc
[xport@FreeBSD ~/.vnc] $


启动vncserver,第一次启动会为你的session设定密码:
 
[xport@FreeBSD ~/.vnc] $ vncserver
You will require a password to access your desktops.

Password:<--输入密码
Verify:  <--确认密码
xauth: creating new authority file /home/xport/.Xauthority

New 'X' desktop is xport.localdomain:1

Creating default startup script /home/xport/.vnc/xstartup  <--这个文件很重要,接下来会修改它!
Starting applications specified in /home/xport/.vnc/xstartup
Log file is /home/dan/.vnc/xport.localdomain:1.log


如果要关闭vncserver,用下面的方法:
 
[xport@FreeBSD ~/.vnc] $ vncserver -kill :1
[xport@FreeBSD ~/.vnc] $ ls -al
total 16
-rw-r--r--  1 xport  users  10382 Oct 11 23:20 FreeBSD.localdomain:1.log
-rw-------  1 xport  users      8 Oct 11 23:09 passwd
-rwxr-xr-x  1 xport  users    184 Oct 11 23:11 xstartup



接下来修改xstartup:

[xport@FreeBSD ~/.vnc] vi xstartup
# 修改成下面的内容
#!/bin/sh

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
# 下面的2行是vncserver第一次启动的时候产生的,为了使用Gnome,我把它们给
# 注释掉了
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
# twm &
gnome-session & <--这个是我增加的,不要忘了后面的&


好了,再次启动vncserver吧!

[xport@FreeBSD ~/.vnc] $ vncserver
New 'FreeBSD.localdomain:1 (xport)' desktop is FreeBSD.localdomain:1

Starting applications specified in /home/xport/.vnc/xstartup
Log file is /home/xport/.vnc/FreeBSD.localdomain:1.log
[xport@FreeBSD ~/.vnc] $


好现在我们从Windows下面连接FreeBSD:


输入密码:


进入Gnome,我启动了Eclipse IDE:


哈哈,感觉这样运行比较爽!
posted on 2006-12-28 15:34 天空 阅读(2021) 评论(0)  编辑 收藏 引用 所属分类: 骗子的系统管理工作
只有注册用户登录后才能发表评论。