我已通过SSH连接到我的服务器,并创build了一个过程,但突然间我的互联网连接断开。 我知道这个过程正在进行,但是如何恢复以前的会话来看看它的进度呢?
如上所示,将来您可以使用屏幕来防止这种情况。 关于如何使用屏幕的简短说明:
screen -S compiling_stuff
./configure
screen -r comp
CTRL+A+D
自行分离屏幕会话 祝你好运
screen
是最好的开始一个命令在terminal,将保持当你断开连接(无论是故意的,CTRL +广告,或因为连接死亡等)。
但是你可以重新连接一个正在运行的进程 (例如:运行会话的shell,如果还在运行的话)到你当前的terminal上(也就是重新附加stdin,stdout,键盘,也可以使新的terminal成为控制terminal过程)使用: reptyr
为了两全其美:安装screen
,启动它,然后重新附加那个屏幕会话中的过程与reptyr
^^
你不能。 在将来,您可以使用screen
或tmux
来防止类似的情况发生,以允许在断开之后重新连接到会话。
只是想我会提到http://mosh.mit.edu/
允许漫游的远程terminal应用程序,支持间歇连接,并提供智能本地回声和用户击键的行编辑。
Mosh是SSH的替代品。 它更加健壮和响应,尤其是在Wi-Fi,蜂窝和长途链路上。
通过ssh使用screen
稍后重新连接到您的会话。
据我所知,没有办法重新连接到一个封闭的SSH会话。
我可以推荐Byobu :
Byobu是terminal多路复用器GNU Screen或tmux的增强版,可用于在屏幕上提供通知或状态以及选项卡式多窗口pipe理。 它旨在为连接到远程服务器的terminal会话提供更好的用户体验。
我会build议使用tmux :
您可以通过tmux attach
来恢复tmux会话。
tmux是一个软件应用程序,可用于复用多个虚拟控制台,允许用户在单个terminal窗口或远程terminal会话内访问多个单独的terminal会话。 从命令行界面处理多个程序,以及从启动程序的Unix shell中分离程序是很有用的[1]。 它提供了许多与GNU Screen相同的function,但是在BSD许可下分发。