网站搜索

如何使用Conspy实时查看和控制远程Linux虚拟控制台


计算机网络使最终用户可以通过多种方式相互交互。他们还提供了一种执行远程工作的方法,而无需旅行(或步行到附近的办公室)带来的麻烦和费用。

最近,我在 Debian 稳定存储库中发现了一个名为 conspy 的程序,并且很高兴发现它也适用于 Fedora 及其衍生版本。

它允许用户查看 Linux 虚拟控制台上显示的内容,还可以实时向其发送击键。在某种程度上,您可以将 conspy 视为与 VNC 类似,不同之处在于 conspy 在文本模式下运行(从而节省资源并可以支持仅限 CLI 的服务器),并且在顶部最重要的是,在使用之前不需要安装服务器端服务。

也就是说,您只需要确保与远程计算机有网络连接,您就会爱上conspy

在 Linux 中安装 conspy

Debian 8 及其衍生版本中,conspy 可以直接从存储库中获取,因此安装它非常简单:


aptitude update && aptitude install conspy

而在 CentOS 7 和其他基于 Fedora 的发行版中,您首先必须启用 Repoforge 存储库:

1. 访问 http://pkgs.repoforge.org/rpmforge-release 并搜索最新版本的存储库(截至 2015 年 9 月,最新软件包为 rpmforge-release-0.5 .3-1.el7.rf.x86_64.rpm)并下载:


wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

2. 安装存储库包:


rpm –Uvh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

3. 然后安装 conspy 软件包本身:


yum update && yum install conspy

conspy使用的测试环境

要了解 conspy 的工作原理,我们将 ssh 进入 Debian 8 服务器 [IP 192.168.0.25](使用例如,终端或 gnome ter),其中 ssh 守护进程正在侦听端口 11222


ssh –p 11222 [email 

在终端旁边,我们将放置一个 Virtualbox 窗口,用于显示 ttys。请记住,您需要按右 Ctrl + F1F6 在 Virtualbox 窗口内的 tty 之间切换,并按 Ctrl + Alt + F1F6 在真实(即非虚拟化)服务器中的控制台之间切换。

使用 conspy 显示和控制 ttys

要启动 conspy,请通过 ssh 进入远程服务器,然后只需键入:


conspy

后跟 tty 数字(1 到 6)。您会注意到终端的背景颜色发生了变化。我们将使用tty命令来识别当前连接到标准输入的终端的文件名。如果未提供 tty 作为参数,则打开并跟踪当前活动的虚拟控制台。

请注意,启动程序后:


conspy 1

显示第一个终端 (tty1),而不是 pts/0(ssh 连接的初始伪终端):

要退出,请快速连续按三次 Esc

观看阴谋行动

为了更好地了解 conspy 的实际情况,请花一点时间观看以下截屏视频:

1.客户端发送到远程tty的击键:

2. Tty 内容在客户端中的显示方式与远程 tty 中的显示方式相同:

在上面的视频中,您可以看到一些有趣的事情:

  1. 您可以在伪终端中运行命令或键入文本,它们将在远程控制台中可视化,反之亦然。
  2. 无需在远程位置的服务器中启动服务器端程序,这与其他技术支持软件需要有人启动服务供您远程连接不同。
  3. Conspy 还允许您实时可视化诸如 topping 等程序的输出,这些程序的输出会不断刷新或更改,只有非常轻微的延迟。这包括基于 ncurses 的程序,例如 htop – Linux 进程监控:

如果您只想查看远程终端而不是发送击键或命令,只需使用 -v 开关(仅查看)启动 conspy 即可。

将 conspy 与 Putty 结合使用

如果您使用Windows笔记本电脑或台式机进行工作,您仍然可以利用 conspy。使用著名的 Windows ssh 客户端 Putty 登录到远程系统后,您仍然可以按照上面的说明启动 conspy,如下面的截屏视频所示:

这表明无论您使用什么 ssh 客户端软件来远程连接到服务器,您都可以使用该程序。

阴谋的局限性

尽管 conspy 具有不错的功能,但它也有一些限制,您应该考虑到这些限制:

  1. 它只允许您查看、连接或控制真实终端 (ttys),而不是伪终端 (pts/Xs)。
  2. 它可能会错误地显示非 ASCII 字符(á、é、ñ,仅举几个例子)或根本不显示:

它需要超级用户权限(作为 root 或通过 sudo)才能启动。

概括

在本指南中,我们向您介绍了 conspy,这是一个控制远程终端的无价工具,它消耗的系统资源很少。

我希望您花时间安装并尝试这个出色的实用程序,并强烈建议您为本文添加书签,因为以我的拙见,这是需要成为每个系统管理员技能组合一部分的工具之一。

我期待收到您对本文的反馈。请随时使用下面的表格给我留言。也随时欢迎提问。