引言
talk是一个用于Linux用户之间交流的程序,write也可以实现用户交流,但是write一次只能发送一条信息。而talk是基于socket实现的,用户可以实时交流。
talk安装
需要安装talk和talk-server两款程序,我是在Centos7上进行安装的,依次运行以下命令进行安装:
yum install -yq talk
yum install -yq talk-server
启动talk-server
安装完成后,需要启动talk-server。
注意:不要使用systemctl start命令启动,这样会出错!
如图:
需要使用systemctl enable命令启动,运行以下命令:
systemctl enable ntalk
然后重启Linux才可以,因为我的是虚拟机,所以可以随意重启,真机的话是否重启,自己决定吧,我没找到如何不重启也能正常启用talk-server的方法,如果你找到了,记得告诉我一下。
使用talk
重启成功后,可以直接使用talk指令了。
- 用户在同一台机器上
talk指令格式如下:talk 用户名@ip地址 [用户终端号]
如果用户只登录了一个终端,那么可以不写用户终端号,如:
talk user@localhost
你也可以使用who
指令来查看当前有哪些用户登录,他的终端号是什么,演示一下:
第二列就是用户登录终端号。
实际操作流程如下:
- 执行
talk test-user@localhost pts/2
等待对方接收 - 另一个用户执行
talk root@localhost
- 这样就建立了一个连接,如图:
- 用户在不同机器上
这个和上面的操作基本一致,只需要把ip地址改成另一台机器的ip地址即可,但是只是加ip地址,对方的机器不会接收你的请求,如:
master主机向ftp主机发出请求
talk root@192.168.1.30
可能会出现以下问题:
要解决这个问题也很简单,只需要在ftp主机的**/etc/hosts文件中添加上master主机**的ip地址即可,如图:
再来试一下:
成功发出请求,后面的操作和用户在同一台机器的操作一样。