root以外のユーザーにcpusetsを許可する

root以外のユーザーにcpusetsを許可する

デフォルトでは、rootCPUセットのみを作成できます(既存のCPUセットの操作は有効です)。

$ cset shield -c0
cset: **> [Errno 13] Permission denied: '/cpusets//user'
cset: insufficient permissions, you probably need to be root

trustedユーザーに実行権限を付与すると、sudo csetそのユーザーは次のコマンドを実行します。

sudo cset shield -e command

root私たちがそうしない限り所有されます。

sudo cset shield -e sudo -- -u trusted command

command特に、これらの階層を介してどの環境が継承されるかについてはかなり複雑です。

trustedIDを変更せずにCPUセットを操作する権限を付与する方法はありますか?

答え1

~によるとcpuset のマニュアルページ:

cpuset の権限は、通常 /dev/cpuset にマウントされている cpuset ファイルシステムのディレクトリと擬似ファイルの権限によって決まります。

cpusetを作成し、その中にあるフォルダとファイルの所有権/権限を調整する小さなsudo呼び出し可能スクリプトを使用すると、ユーザーは独自のcpusetを作成できます。

これにより、ユーザーはroot権限を必要とせずにcpusetを直接使用および変更でき、そのサブCPUsetを作成できます。

また、見ることができますhttps://serverfault.com/questions/478946/how-can-i-create-and-use-linux-cgroups-as-a-non-root-user

関連情報