【发布时间】:2014-07-17 05:49:41
【问题描述】:
有两台远程机器,一台使用redhat linux,另一台使用solaris。每个文件都有一个每天轮换的文件(比如 /var/log/events.log),大小可以从 0 字节到 400Mb 并且不断更新。还有第三台使用 windows xp 的机器,它应该监视该文件的更新,该文件当前由一个 ssh 会话完成,该会话使用 putty 和 tail -f /var/log/events.log 在其中运行。
应该如何做有一些限制:
- 除了 SSH 和 SCP 之外,我无法使用任何东西进行远程访问。
- 解决方案必须不要求在远程服务器上安装、存储或永久运行任何东西;它应该通过单次连接尝试运行。
- 它应该对网络负载的影响最小,接近远程执行的 tail -f
我查看了 diffing 通常是如何完成的,并了解了 rsync。不幸的是,solaris 服务器没有安装它,并且在 redhat 服务器上,我没有启动它的权限。
有什么想法吗?
【问题讨论】:
-
您的问题是什么?您似乎在第一段中描述了您的解决方案。
-
我需要自动执行此操作以根据尾部捕获的内容生成事件,因此我需要同步远程和本地输出。此外,tail -f 不符合 pt.2,在“不需要任何东西在远程服务器上永久运行”部分。我需要得到与使用 tail -f 相同的结果,但自动且无需持续维护会话。
-
那么您的具体问题是什么?您需要通过 ssh 从远程系统复制文件,而您没有 rsync? sftp 或 scp 怎么样?
-
文件太大,无法复制,需要diff一下。