Windows XP 和 Vista 都实现了远程桌面访问协议 RDP v5 的服务端,通过 RDP 协议访问远程 Windows 比用
VNC 协议访问远程 Windows 占用的网络带宽少,效率高。Ubuntu 的默认安装里有一个“终端服务客户端”,这个程序叫做
tsclient,我们可以通过 Alt+F2 ,然后输入 tsclient 来启动该程序。像很多 Ubuntu
下的图形界面一样,这个程序其实也是一个前端界面,它支持多种远程桌面连接协议,其中我们最常用的就是 RDP 和 VNC 这两种协议。而
tsclient 则通过 rdesktop 命令来实现基于 RDP 协议的远程桌面访问。下面我记录下我在使用 tsclient 以及直接使用
rdesktop 命令来远程访问时的经验。
通过图形界面的 tsclient 来远程访问非常简单,照着界面上选项配置即可。这里我只记录一个问题及其解决。当我们设置为全屏模式的话,tsclient 将以 -f
的参数来启动 rdesktop,按照正常情况,退出全屏的方式是使用 Ctrl+Alt+Enter 按键组合。可是这个组合在启动了 Compiz
特效的 Ubuntu 下失效了。解决的办法很简单,打开 Compiz 的配置管理(首选项->Compiz Config Settings
Manager),找到 Utility 下的“工作区”配置,进去后,去掉“旧式全屏支持”的选项,问题即可解决。
但在我的使用中,我发觉用全屏模式并不方便,于是我研究了下 rdesktop 命令的选项,最后决定按照如下命令来启动远程桌面:
rdesktop -z -r sound:remote -g workarea -D -K -a 16 -u Soloman -p xxxxxx kingkong
下面详细说明一下各参数的意思:
-z
:启动网络数据的压缩,减少带宽,不过如果是 LAN,我觉得加不加都无所谓;
-r sound:remote
:将声音在远程的机器上播放,而不带到你的本机里。因为我的台式机连接上了音
箱,而我如果从笔记本远程连接到我的台式机,然后启动千千静听来播放音乐的话,当然是希望音乐从台式机的音箱输出,而不是带到我的笔记本上输出。当然你也
可以使用 local 来将声音带到你的机器上播放,或者使用 off 来关闭声音;
-g workarea
:-g 参数用来设置分辨率,比如-g 800x600
,
我这里使用 workarea,这样 rdesktop 程序就会询问你的 gnome
环境,查出你的可用屏幕大小(去除掉顶上的面板和下面的任务栏部分)。这样做的好处是,不是全屏模式,不用使用 Ctrl+Alt+Enter
来切换,但却尽量使用了所有有效空间,效果可以见我的截图;
-D
:不显示窗口的装饰,也就是标题栏,这样配合 -g workarea 就能更好地使用屏幕空间了;
-K
:这个选项说明保持窗口管理器的按键组合绑定。也就是说当你的远程访问窗口被 focus
的时候,你仍然可以使用
Ctrl+Alt+左右键等这些类似的组合按键。不过我在实际使用过程中发现,并不是很稳定,有的时候,按键还是会被送往远程的计算机,而不是你本机的窗
口管理器,不过这个问题不大,使用鼠标切换即可;
-a 16
:将颜色设置为16位;
-u Soloman -p xxxxxx kingkong
:这个很简单,就是说访问名叫 kingkong 的主机,使用用户 Soloman,密码为 xxxxxx,这里的 kingkong 我已经在 /etc/hosts 里赋予了其 IP 地址,所以你当然也可以直接使用 IP 地址;
执行这条命令,你将看到如下效果:(点击看大图)
可以看到,这样,就不是全屏模式,也不需要切换了,gnome
的菜单和任务管理都在,而且远程计算机也使用了尽量多的空间。但是缺点是启动起来打的命令参数太多太麻烦,所以,我们只要把启动写在一个脚本文件里,然后
就可以方便地启动了,不过脚本里的命令稍微要变化下。比如我们在自己主目录里创建一个文件 ~/script/rkingkong
,然后写入:
#!/bin/bash
nohup rdesktop -z -r sound:remote -g workarea -D -K -a 16 -u Soloman -p xxxxxx kingkong 2>&1 > /tmp/rkingkong.out &
然后chmod a+x ~/script/rkingkong
,并且 ~/script 目录也在你的 PATH 里(通过在 ~/.bashrc 文件里添加 export PATH=~/script:$PATH
),然后你只需要在终端里输入rkingkong
,这样就自动连接上了,非常方便快捷。
其他常用的 rdesktop 参数还有:
-f
:用来进入全屏模式;
-x lan|modem
:用来决定网络带宽,如果带宽宽的话,比如lan,则可以将桌面背景也传过来,而我觉得这个没啥必要,默认是没有桌面背景的;
-A -s "shell.exe" -c "working directory"
:这个是用来启动无缝连
接应用程序的,就是说不加载远程的桌面,而是启动远程的一个 shell 程序,这个我试过,可以启动一个远程的 IE,不过 RDP v5
有个最大的局限,那就是说只能有一个用户处于登录状态,这个限制似的这个无缝连接功能大打折扣,实用性不高,所以这里我就不多做介绍了,有兴趣的可以去这里了解更多的信息;
当然,如果遇到困难,别忘了man rdesktop
。
解决方案 -- 问题2
转载自www.linuxidc.com/
最近遇到Ubuntu下远程其他机子,出现打开Caps Lock但无法输入大写字母的问题,而用Shift+Letter可以输入大小写。
经查阅Ubuntu论坛资料,发现这个问题由来已久。下面提供下我找到的解决方法:
sudo vim /usr/share/ rdesktop/ keymaps/ common
然后找到最后的Caps_Lock行,用‘#’注释掉该行,保存退出即可。
这个方法目前使用中没遇到其他问题。有类似问题的朋友,可以试试看。
posted on 2010-12-09 18:37
Ke 阅读(1922)
评论(0) 编辑 收藏 所属分类:
ubuntu