我观察到,当我运行 SLURM 作业时,它可以在其他文件夹路径上创建文件,也可以删除它们。通过 SLURM 作业,他们可以访问其他文件夹/文件并对其进行更改,这似乎很危险。
$ sbatch run.sh
run.sh:
#!/bin/bash
#SBATCH -o slurm.out # STDOUT
#SBATCH -e slurm.err # STDERR
echo hello > ~/completed.txt
rm ~/completed.txt
是否可以强制 SLURM 只能访问其自己的运行文件夹而不能访问其他文件夹?
文件访问是通过 UNIX 权限控制的,因此作业只能写入提交用户有权写入的位置。大多数情况下,一项作业需要在不同文件系统上的多个不同目录(用于配置文件和结果的主 NFS、用于中间数据和输入数据的临时并行文件系统等)进行读写,因此 Slurm 不应限制该作业在提交目录中。
如果您想确保您的作业无法在特定目录之外写入,您可以使用chroot
命令,但这似乎有点奇怪,并且比 UNIX 权限更难管理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)