使っていますprlimit
Ubuntuのサンドボックスにリソース制限を設けることは非常に役立ちました。しかし、何をすべきかわかりませんRLIMIT_NICE
。文書には次のように記載されています。
RLIMIT_NICE(Linux 2.6.12以降、以下のバグを参照)setpriority(2)またはNice(2)を使用してプロセスのNice値を増やすことができる上限を指定します。
しかし、それによると優先順位の取得(2)、スーパーユーザーが最初に所有したプロセスだけが良い価値を高めることができます。ただし、この場合、権限を持つユーザーがランダムに値を下げたり上げたりする可能性があるため、このRLIMIT_NICE
値は多くの機能を追加しません。RLIMIT
だから私はそれを使用または説明する方法を理解していませんRLIMIT_NICE
。権限のないユーザーには優先順位を上げることができず、現在の優先順位よりも低く設定する必要がないため、すべてが役に立たないようです。ただし、上級ユーザーの場合、ソフトとハードの制限をランダムに上げることができるため、実際には何も追加されませんnice
。RLIMIT_NICE
それでは、その背後に隠されたアイデアは何ですかRLIMIT_NICE
?
ベストアンサー1
実際には、RLIMIT_NICE
ルートが所有するプロセスだけが良い値を上げることができるという基本的な規則を迂回することができます。
デモ:
# ulimit -e 30
# su nobody
$ nice -n -10 top
top
プロセスが正しく実行されていることがわかります-10
。
今試してみるとうまくnice -n -11 top
いきます。0
なぜなら。-11
RLIMIT_NICE=30
式はマンページに示されています。許容される最大親切度はです20-rlimit
。だから:
0
これは「好感度を20まで高めることができる」という意味で、役に立たないという意味でもあります。20
これは「クールをゼロに上げることができる」という意味で、優先順位を下げれば再びゼロに戻ることができます。40
「最大のプロセスを開始できますnice -n -20
。