帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何在登陆Linux时自动启动Screen会话

如何在登陆Linux时自动启动Screen会话

发布时间:2020年04月25日 08:16:11    来源: A5互联

今天,我们就来看看如何在Linux系统上登录时自动启动Screen会话。通过SSH自动启动Screen会话,在通过SSH长时间运行时,自动启动Screen会话会有很大的帮助。如果你因为各种原因失去了网络连接,那么这个进程会在远程系统的Screensession内继续运行,当网络恢复上线后,你可以重新连接到它。

要在Linux上自动启动Screen会话,请编辑Linux系统的〜/ .bash_profile或〜/ .bashrc文件:

$ nano〜/ .bash_profile

如果以上文件不可用,请创建它。

并在其中添加以下几行:

if [[ -z "$STY" ]]; then

screen -xRR default

fi

在这里,我们使用-x标志来附加到未分离的屏幕会话。并且-RR标志尝试恢复找到的最年轻(就创建时间而言)的分离屏幕会话。

注意:如果使用Zsh Shell,请在〜/ .zshrc文件中添加以上行。

保存并关闭文件。注销并重新登录系统。您将进入名为'default'的新Screen会话。

现在,在Screen会话中启动任何进程,并通过按Ctrl + a和d使其脱离。即使网络连接断开,该过程也将继续在Screen会话中运行。一旦网络连接恢复,您可以再次SSH到远程系统,您将看到作业仍在运行!

我从本地系统通过SSH连接到远程Ubuntu服务器。自动启动一个名为“默认”的新屏幕会话。

在Screen会话中,我运行一个命令(例如,监视grep \“ cpu MHz \” / proc / cpuinfo)以监视CPU速度。

然后,我通过按Ctrl + a和d脱离了会话。

然后,我使用“ screen -ls”命令列出Screen会话并退出SSH会话。

最后,我通过SSH重新连接到远程系统,并验证该进程是否在Screen会话中继续运行,而没有任何中断。

要停止自动启动Screen会话,只需从远程系统的〜/ .bashrc或〜/ .bash_profile文件中删除之前添加的行即可。