使用 Ubuntu 作为瘦客户端

作者:Chase Crum

在过去的几年里,已经有很多文章讨论了 rdesktop 应用程序 для Linux 用户的使用和进步。Rdesktop 是一款旨在允许 Linux 用户访问基于 Windows 的机器(特别是服务器)的远程桌面功能的应用程序。当我的公司决定实施终端服务器以缓解关键应用程序的网络影响时,我开始研究它在 Windows/Linux 混合环境中的其他实际应用。我开始确定基于 Linux 的瘦客户端是否实用。事实证明,它不仅实用,而且非常容易实现。

最近,我的部门开始更加关注我们办公室内部的带宽使用情况。我们开始注意到,我们的一个网络应用程序要求最终用户每天进行多次“推送”,占用了我们大部分可用带宽。在实施 QOS 风格的带宽限制后,我们采取了额外的步骤,将这个特定的应用程序单独放置在一台终端服务器上。我们的用户将远程登录,完成他们的工作,数据传输在本地服务器上进行,无需通过网络进行“推送”。受到这次测试结果的鼓舞,我开始探索对我们最终用户的计算机上常见的所有应用程序执行此操作的可能性。结果是一个完全免费(在所有意义上)的瘦客户端。

我从仓库中拿了一台库存电脑,这台电脑在大多数情况下已经过时了。由于我计划在该机器上安装瘦客户端版本的 Linux,因此它只需要键盘、鼠标、显示器和网络访问即可。我们的服务器发行版严重依赖 CentOS,但我决定使用 Ubuntu 作为我的概念验证瘦客户端。我选择 Ubuntu 是因为它在许多不同组件和驱动程序方面的开箱即用功能。我确信您可以使用几乎任何您感到舒适的发行版。在默认安装期间,配置瘦客户端几乎不需要什么。此安装的唯一偏差是它将自动登录用户,而无需提示输入密码(由于没有任何内容会存储或访问在此机器上,因此几乎没有安全问题)。

机器安装完成后,在主目录中放置了一个简短的脚本,内容如下

!/bin/bash
rdesktop 192.168.???.??? -f    #insert terminal address
sudo /sbin/halt

该脚本需要设置为可执行文件,可以通过命令行使用 chmod 命令,或通过 GNOME 点击完成。完成之后,让 GNOME 的启动程序管理器知道它的位置,您就几乎完成了(系统 → 首选项 → 启动应用程序)。目前,rdesktop 中仍然存在一个错误,它只能连接一次,然后生成错误。要修复此问题,请在命令行中输入以下内容

# Remove/Delete the ".rdesktop"-directory 
$ rm -rf ~/.rdesktop
# and create a _file_
$ touch ~/.rdesktop

就是这样。真的没什么可做的了,只需重启即可。正如您从脚本中看到的,几件事即将发生。首先,计算机启动后,您将看到 Ubuntu 启动画面,这将是最终用户最后一次被提醒他们实际上没有在使用 Windows。其次,他们的屏幕上不会出现 GNOME 桌面,而是自动转到终端服务器的登录屏幕。一天结束后,注销终端服务器会关闭瘦客户端。

那么我们有什么,这一切意味着什么?最终,我们最终用户变成的测试员拥有一台 Linux 机器,它现在被认为是低于标准的硬件,通常会被扔掉。计算机启动,并直接将她带到基于 Windows 的终端服务器,完全消除了任何学习曲线。当她注销时,计算机关闭。公司总成本:零。如果瘦客户端明天烧毁,该单元可以在几分钟内更换,最终用户的损失是不存在的。所有这些都可以通过 VPN 访问,使整个桌面可以更自由地访问,如果她发现自己在家里或在路上。我们一分钱也没花,同时我们成功地回收了一台原本会被填埋的机器。我们为开源、为地球母亲做出了贡献,把我们的钱留在它所属的地方,并且在这个过程中玩得很开心。

虽然这不太可能是改变我们业务方式的杀手级概念,但它确实帮助我们以某种方式跳出数字框框思考。它为我们指明了其他方向,我确信未来的某些项目将从我们在这里学到的东西中受益。无论如何,我们继续发现实施开源解决方案的新方法。我们迈出的每一步都会产生成功,有时也会产生不太成功的结果。从 Linux 机器构建瘦客户端很难称得上是一项不朽的成就,但每一个小小的进步都将我们引向拐角处更大的解决方案,并且最终这就是我如此热爱我的工作的原因。

加载 Disqus 评论