我正在AWS机器(Linux)中运行大型julia模拟。我使用腻子从命令行运行。

我输入:julia myscript.jl
但是,每当我关闭命令提示符,腻子或便携式计算机时,A​​WS服务器上的运行都会停止。我想知道当我关闭命令行提示符时是否有办法让julia保持运行。由于我不想打开笔记本电脑,腻子保持连接状态数天

谢谢

最佳答案

dtach 为此存在。即使关闭创建该进程的终端 session ,它也将使该进程保持 Activity 状态。

通过ssh登录后,开始一个新的dtach session :

$ dtach -A /tmp/my-dtach-session julia myscript.jl

然后使用ctrl+\从 session 中分离。

分离不会杀死您的过程。在这里,我检查分离后它是否仍在运行:
[david@blue ~] $ ps aux | grep dtach
david      506  0.0  0.0   8460  1484 ?        Ss   16:15   0:00 dtach -A /tmp/my-dtach-session ./pkg/julia-1.3.0/bin/julia
david      517  0.0  0.0   6140  2224 pts/2    S+   16:16   0:00 grep dtach

分离后,可以像平常一样关闭ssh session 。如果您的过程尚未完成,则可以重新登录并重新附加:
$ dtach -a /tmp/my-dtach-session

09-26 08:44