我正在使用HTCondor来运行需要花费大量时间(数十小时)的作业并定期生成文件(数十分钟)。我希望HTCondor在创建文件后立即将文件传输到我的提交目录。我怎么能做到这一点?
condor是否有任何本地选项允许我这样做? 有替代方法吗?
我还可以尝试scp
或mv
创建文件,但我不知道如何将文件从condor手动传输到我的个人空间
答案 0 :(得分:1)
condor_tail命令可以从提交端执行此操作,或者condor_chirp命令可以从作业本身执行此操作。
例如,如果您正在登录提交计算机(很可能是从同一台计算机提交作业的计算机),并且您对仍在运行的作业的任何输出文件的状态感到好奇,则可以通过运行查看文件的最后1024个字节
$ condor_tail <the_job_id> the_file_name
要查看超过1024个字节,可以运行
$ condor_tail <the_job_id> -maxbytes some_number_more_than_1024 the_file_name
或者,如果您使用的是Linux,并且您的系统管理员允许您运行,则可以
$ condor_ssh_to_job <the_job_id>
它为您提供了运行该作业的计算机的登录外壳,位于该作业的暂存目录中,并且具有condor可以提供的尽可能多的作业环境。
最后,如果作业本身可以在每个完成的步骤之后运行命令(例如定期执行),并且作业已使用“提交文件”选项启用了remoteio
+WantRemoteIO = true
该作业可以运行
$ condor_chirp put local_file_name file_name_on_submit_machine
,作业中的文件名local_file_name将被复制到提交计算机中作业开始的目录中。