如何在 Singularity 配方文件的设置部分使用 $SINGULARITY_ROOTFS 设置相对软链接?

如何在 Singularity 配方文件的设置部分使用 $SINGULARITY_ROOTFS 设置相对软链接?

我正在尝试在 Singularity 配方文件的部分中创建软链接%setup。如果链接是相对的,则不起作用。例如:

ln -s ${SINGULARITY_ROOTFS}../python2/2.7.5a ${SINGULARITY_ROOTFS}/usr/pkgs/python/2.7.5

它创建:

lrwxrwxrwx 1 root root 49 Apr 24 06:33 /tmp/build-temp-976030219/rootfs/usr/pkgs/python/2.7.5 -> /tmp/build-temp-976030219/rootfs../python2/2.7.5a

/tmp/build-temp-976030219/rootfs../python2/2.7.5a当然是无效路径。我不想开始获取真实路径,因为我可以在途中获取其他链接。如何让它与相对路径? 我是不是使用不当${SINGULARITY_ROOTFS}

答案1

为了使其与相对路径一起工作,请给出ln相对路径:

ln -s ../python2/2.7.5a ${SINGULARITY_ROOTFS}/usr/pkgs/python/2.7.5

该参数将成为完全按照指定方式指定的符号链接目标,因此您必须使用已经相对于符号链接的位置。

相关内容