感谢支持
我们一直在努力

不同终端登录同一台服务器两个用户可同时共享一个shell终端

我发现一件比较有意思的事情


从不同终端登录同一台服务器的两个用户(userA和userB)可以同时使用一个shell终端实现shell共享


userA能看到userB在终端的输入


userB也能看到userA在终端上的输入


就好像他们在使用一个终端,彼此的输入是共享给对方的


一个终端的输入会共享在两个终端上,同时被看到


首先检查系统安装包tcl和expect


[root@www.linuxidc.com ~]# rpm -qa |grep tcl
tcl-8.4.13-4.el5
tcl-devel-8.4.13-4.el5
tcl-8.4.13-4.el5


[root@www.linuxidc.com ~]# rpm -qa |grep expect
expect-5.43.0-5.1
expect-5.43.0-5.1


如果没有expect的话,配置好yum,直接使用yum install expect -y 进行安装


然后看一下是否有kibitz命令


[root@www.linuxidc.com ~]# whereis kibitz
kibitz: /usr/bin/kibitz /usr/local/bin/kibitz /usr/share/man/man1/kibitz.1.gz


接下来开始做实验:


通过xshell同时开两个窗口登录同一台机器



 


然后用w命令看一下当前登录的用户以及使用的终端



 


从上面图片可以看到xshell的1号窗口是从终端pts/2登录的,2号窗口是从pts/3登录的


在1号窗口(终端pts/2)中做这个操作–向pts/3发出请求:


[root@www.linuxidc.com ~]# kibitz -tty pts/3 root
asking root to type:  kibitz -3723


#光标就停在这个地方,这个进程并没有终止 


此时去2号窗口(终端pts/3)你会看到这样:


[root@www.linuxidc.com ~]#
Message from root@www.linuxidc.com on pts/2 at 00:07 …
Can we talk? Run:                #需要你将“kibitz -3723”粘贴在这个地方 


在2号窗口(终端pts/3)粘贴完之后就变成这样了:


[root@www.linuxidc.com ~]#
Message from root@www.linuxidc.com on pts/2 at 00:07 …
Can we talk? Run: kibitz -3723
EOF
kibitz -3723
Escape sequence is ^]
 


再回到1号窗口(终端pts/2)你会发现,屏幕上的输出信息:【绿色部分是粘贴完之后出现的】


[root@www.linuxidc.com ~]# kibitz -tty pts/3 root
asking root to type:  kibitz -3723
Escape sequence is ^] 


现在两个终端已经实现共享了,当你从其中任何一个终端输入命令行的时候,都会在另一个终端上有完全相同的输出

赞(0) 打赏
转载请注明出处:服务器评测 » 不同终端登录同一台服务器两个用户可同时共享一个shell终端
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏