来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。
您会问他:“您运行的是什么机器?”
David 答道:“ Posh”。(这个虚够的公司将它的 5 台生产服务器以纪念 Spice Girls 的方式命名)。这下您可以大显身手了,另一台机器由 David 操作:
# su - david
转到 posh:
# ssh posh
到达之后,运行以下代码:
# screen -S foo
然后呼叫 David:
“David,在终端运行命令 # screen -x foo
”。
这使您和 David 的会话在 Linux shell 中联接在一起。您可以输入,他也可以输入,但彼此可以看到对方所做的事情。这避免了进入其他层次,而且双方都有相同的控制权。这样做的好处是 David 可以观察到您的故障诊断技巧,并能准确了解如何解决问题。
最后大家都能看到问题所在:David 的编译脚本对一个不在此新服务器上的旧目录进行了硬编码。将它装载后再次编译即可解决问题,然后 David 继续工作。您则可以继续之前的娱乐活动。
关于此技巧需要注意的一点是,双方需要以同一用户登录。screen
命令还可以:实现多个窗口和拆分屏幕。请阅读手册页获取更多相关信息。
对于 screen
会话,我还有最后一个技巧。要从中分离并让它打开,请输入 Ctrl-A D
(即按住 Ctrl 键并点击 A 键。然后按 D 键)。
然后通过再次运行 screen -x foo
命令可以重新拼接起来。