![谈论实际有效的 Linux](https://linux22.com/image/625324/%E8%B0%88%E8%AE%BA%E5%AE%9E%E9%99%85%E6%9C%89%E6%95%88%E7%9A%84%20Linux.png)
我正在尝试使用 talk 在两台计算机之间进行通信。其中一台运行 debian jessie,另一台运行 freebsd。
我已成功建立从 debian 到 frebsd 的对话连接。然而,相反的方向导致:
[No connection yet]
[Your party is refusing messages]
我对此进行了研究并发现了以下帖子:
- https://lists.debian.org/debian-user/1998/06/msg00582.html
- https://lists.debian.org/debian-user/1998/06/msg00587.html
显然,如果相关用户没有通过 telnet/ssh 登录,debian 上的 talkd 不会接受连接。总结一下:
- 我登录控制台并启动 x -> 无法通过 talk 连接
- 我打开另一个虚拟终端并再次登录 -> 无法通过 Talk 连接
- 我从 freebsd 机房通过 ssh 进入 debian 机房 -> 可以通过 talk 进行连接
此时,谈话毫无用处。如果我必须通过 ssh 进入盒子才能使用它,我可能只需通过 ssh 就可以完成我需要的一切。
当目标用户仅有 X 会话时,是否有另一个 talkd 可以工作,或者有没有办法配置 ntalkd 以在这种情况下工作?
答案1
talk
根据您的研究,这听起来像是 Debian 守护进程的限制。
您可以:
- 破解 Debian 对话守护进程,将任何活动的 TTY 识别为“已登录并可进行对话”
- 尝试在 Debian 上编译 FreeBSD 对话守护进程
(我不知道 FreeBSD 对话守护进程的“已登录并可用”语义是什么) - 使用其他解决方案(IRC?Jabber?)