如何别名当前工作目录

时间:2015-04-10 16:03:04

标签: linux matlab directory tmp

我有一些非常磁盘密集的群集作业,我想在每个计算节点的/ tmp空间中处理这些作业。作业被提交给网格引擎然后分发到任意数量的节点,每个节点都有一个大的本地/ tmp目录。这些节点都是CentOS,并共享一个通用的NFS挂载。

对于每项工作,我希望能够将其所在位置的所有数据复制到/ tmp目录,进行处理,然后将其复制回原来的NFS位置。但是,处理流是通用的,这意味着任何命令行程序都可以作为作业的一部分启动。我们运行的一些程序,如MATLAB,喜欢将软链接扩展到实际路径,并在处理过的数据中存储完整路径。

我只考虑过一种方法,但我想知道是否有更好的方法。

1)创建一个从NFS目录到" / tmp / blah / thelocaljobstempdir"的链接,以便对该目录的所有引用都定向到/ tmp。然后在完成处理后,将/ tmp目录移动到其最终位置并删除该链接。这可能适用于某些作业,但不适用于扩展其路径和/或在数据中存储完整路径的作业。

基本上,我怎么能让程序认为它在一条路径上工作,当它实际工作在不同的路径时,不使用硬链接,因为目录在不同的文件系统上?

1 个答案:

答案 0 :(得分:0)

您可以尝试bind mount

mount --bind nfsdir /tmp/nfsdir

使用 bind mount ,可以在另一个文件系统位置访问文件层次结构。有关详细信息man mount是一个很好的起点。