web-dev-qa-db-ja.com

特定のユーザーにデフォルトのニース値を設定する(limits.conf)

誰かがユーザーのNicetopで表示される)のデフォルト値を設定する方法を教えてもらえますか? /etc/security/limits.confが場所であることがわかりましたが、次のいずれかを指定した場合:

username_of_a_guy  -  Nice  19
username_of_a_guy  soft  Nice  19
username_of_a_guy  hard  Nice  19

動作しません(動作するはずですが、正しいですか)。

それ以来、私は再起動していることに注意してください。

よろしくお願いします非常に事前に助けを求めてください。私はdebian不安定版(最新版)を使用しています。

環境:

私の仕事では、ローカルネットワークがあります。つまり、誰もが自分のコンピューターを所有しており、必要に応じて誰でも他の人のマシンにアカウントを作成できます。原則として、他のコンピュータで作業している場合は、プロセスをナイスにしてください(Nice 19)。

特定のユーザーのデフォルトのニース値を19に設定したいと思います。

12
Alex

正しい形式は次のとおりです。

@users      -       priority        10
username    -       priority        19

これは、私が運用環境で使用している設定の例です(明らかに実際のユーザー/グループで)。

Nice設定は、デフォルトの優先度ではなく、誰かがプロセスに設定できる最小のNice値(つまり、最大の優先度)を決定するためのものです。

13
jsbillings

私のシステムでも動作しないことを確認できます。ドキュメントには「カーネル2.6.11以上」とあり、カーネル2.6.38-rc6を使用したFedora rawhideを使用しています。それはスケジューラに依存していて、2.6.23で導入されたCFQ(「完全に公平なスケジューラ」)では動作しないのでしょうか。

ただし、機能するのは、その恐ろしい名前のために検索が不可能であるand — auto-Niceデーモンです。 http://and.sourceforge.net/ を参照してください。これはyum install andを使用してFedoraから入手できますが、残念ながらEPELにはないようです。そしてそれはDebianにもあります:apt-get install and

ただし、最新のディストリビューションを使用している場合は、さらに良い方法があります。 libcgroup のツールを使用して、カーネルレベルの cgroup CPUシェアを制限し、ユーザーのプロセスをこのcgroupに自動的に「分類」できます。これにより、I/Oに優先順位を付け、メモリ使用量(ディスクキャッシュの共有を含む)を制限することもできます。

3
mattdm