在安装了PBS批处理系统(扭矩)的集群中,我们希望所有用户按qsub
执行其作业,以便可以很好地管理CPU资源。但是,我们发现群集中的用户仍然可以直接在他们的bash shell中运行他们的程序。
我注意到其他一些集群系统限制用户运行自己的二进制文件。它们的命令提示符与完全特权命令提示符不同。(从〜>开始)
qczhan2@barrine1:~>echo $0
-bash
在他们的配置中,用户可以运行基本命令,如ls
,pwd
,cp
和'cd'到系统文件夹,但是当用户运行自己的二进制文件时,系统声明“不允许许可”。还有必要提一下,如果尝试使用任何mpi
命令调用用户拥有的二进制文件,也不允许使用它。
例如:
qczhan2@barrine1:~>mpiexec -n 64 ./abc.out
permission denied
其中abc.out
是用户定义的二进制文件。
我只是想知道如何配置系统呢?
答案 0 :(得分:1)
您希望将所有用户的默认shell从/bin/bash
更改为:
/bin/bash -r
所以他们的shell变成了受限制的shell 。 Amonst其他限制不允许用户cd
,设置或取消设置PATH
或发出包含/
的命令。这会将它们锁定为只允许他们访问的运行命令。
答案 1 :(得分:1)
如果您使用Linux:mount文件系统,其中用户具有写入权限(例如/ home,/ tmp,/ var / tmp,/ dev / shm),并带有选项" noexec"。