私はそれを使用していますSlurm
。ユーザーが自分の/home/
ディレクトリ(またはタスクを実行するディレクトリ)、ユーザーがインストールしたUbuntuパッケージ、およびユーザーsudo
のバイナリ(など)にのみアクセスできることを願っています。/bin
ls
cat
rm
私はすべてのユーザーがread/write
他のユーザーのファイルと重要なファイル(例/etc/passwd
:。
slurm-job
私は新しいユーザーとして何かを実行したときにread
ルート()ディレクトリ/
の下のすべてのファイルにアクセスできることを観察しました/etc/passwd
。
回答の出発点他のファイルを変更せずに、SLURMがジョブの実行フォルダにのみアクセスできるように強制できますか?、以下を使用することをお勧めしますchroot
。
ジョブが特定のディレクトリの外部に書き込まれないようにするには、ジョブ
chroot
送信スクリプトでこのコマンドを使用できますが、これはやや奇妙に見え、UNIX権限ほど管理するのは簡単ではありません。
chroot()
プロセスのルートディレクトリをpathnameで指定されたディレクトリに変更するシステムコール
chroot()-jailed
ユーザータスクを実行するためにchroot環境()を使用できますかSlurm
?
代替ソリューションとして、UNIX権限でファイルアクセスを制御しました。ここでは、ジョブは、送信するユーザーが書き込み権限を持つ場所にのみ書き込むことができました。以下を参照してください。 slurm:他のユーザーにジョブを送信し、他のユーザーのファイルを読み取らないようにする方法は?