注销后保持脚本运行

注销后保持脚本运行

我正在尝试运行 DiabloMiner,并在我注销后保持其运行。我尝试使用screen

所以我要做的是:

  1. 使用 switch 登录到主机-X。例如:ssh -X myhost
  2. 跑步screen
  3. 运行我的脚本,即./DiabloMiner-Linux.sh -u my_user -p my_password -dd > log.txt
  4. 通过 分离屏幕Ctrl+A,然后D
  5. 尝试注销,通过Ctrl+D

然后我的注销就挂了。我所能做的就是Ctrl+C,但当我再次登录时,我可以看到psDiabloMiner 已经挂了。

如何运行它才能在注销后继续存在myhost

答案1

我假设 DiabloMiner 有一个 GUI,这就是您选择使用该-X选项的原因。Screen 会创建一个具有断开连接和后台功能的虚拟伪终端。但是,该-X选项会告诉 ssh 隧道传输任何 X11 流量返回您所在的主机。这不是您想要的,因为当您关闭 ssh 会话时,您会中断 X11 流量,从而导致 DiabloMiner 死亡。

让 GUI 应用程序(除非它具有无头模式,这将完全消除这种需要-X)在远程主机上运行的唯一方法是启动远程 X 服务器来运行该应用程序。您可能需要为此目的研究vncserver一下。vncviewer

答案2

我认为你需要研究禁止 。使用控制台程序(如 Java 控制台程序)时效果很好。对于 X-window 程序,情况可能会有所不同,但我认为 nohup 就是您要寻找的一般东西。

还,gnu 屏幕也可能对你有帮助,因为它有一些 nohup 功能。

相关内容