デフォルトでは、root
CPUセットのみを作成できます(既存の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
特に、これらの階層を介してどの環境が継承されるかについてはかなり複雑です。
trusted
IDを変更せずに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。