screen
screen是一款能够实现多窗口远程控制的开源服务程序,简单来说就是为了解决网络异常中断或为了同时控制多个远程终端窗口而设计的程序。用户还可以使用screen服务程序同时在多个远程会话中自由切换,能够做到实现如下功能。
会话恢复:即便网络中断,也可让会话随时恢复,确保用户不会失去对远程会话的控制。
多窗口:每个会话都是独立运行的,拥有各自独立的输入输出终端窗口,终端窗口内显示过的信息也将被分开隔离保存,以便下次使用时依然能看到之前的操作记录。
会话共享:当多个用户同时登录到远程服务器时,便可以使用会话共享功能让用户之间的输入输出信息共享。
常用参数:
参数 | 作用 |
---|
-S | 创建会话窗口 |
-d | 将指定会话进行离线处理 |
-r | 恢复指定会话 |
-x | 一次性恢复所有会话 |
-ls | 显示当前已有会话 |
-wipe | 把目前无法使用的会话删除 |
客户端连服务器
步骤 | 说明 |
---|
screen -S backup | #创建会话backup |
screen -ls | #查看已有会话,发现会话backup处于连接()状态 |
exit | #退出会话backup |
screen vim memo.txt | #在创建会话的同时执行编辑文件memo.txt的命令,命令执行完毕后screen会话也会自动结束 |
heheda | #写入文本内容 |
screen -S linux | #创建会话linux |
tail -f /var/log/messages | #在会话linux里执行该命令,故意强行关闭会话窗口 |
screen -ls | #重新打开命令行窗口,查看已有会话,发现会话linux处于断开(Detached)状态 |
screen -r linux | #恢复会话linux,可以发现刚刚关闭窗口导致中断的命令可以继续执行 |
会话共享
会话共享功能是一件很酷的事情,当多个用户同时控制主机的时候,它可以把屏幕内容共享出来,也就是说每个用户都可以看到相同的内容。
步骤 | 说明 |
---|
ssh 192.168.10.10 | #客户端A操作。远程登录到服务端(192.168.10.10) |
screen -S test | #客户端A操作。创建一个screen会话 |
ssh 192.168.10.10 | #客户端B操作。远程登录到服务端 |
screen -x | #客户端B操作。获取远程会话 |