ほぼ同じ仕様のCentOS 5サーバーが2台あります。ログインして実行するulimit -u
と、一方のマシンで取得しunlimited
、もう一方のマシンで取得します77824
。
次のようなcronを実行すると:
* * * * * ulimit -u > ulimit.txt
同じ結果が得られます(unlimited
、77824
)。
これらを変更できるように、これらがどこに設定されているかを判断しようとしています。彼らは(私のプロファイルのいずれかに設定されていない.bashrc
、/etc/profile
など)。これらはとにかくcronには影響しません)またはin /etc/security/limits.conf
(空です)。
私はグーグルを精練しgrep -Ir 77824 /
、やることさえしましたが、これまでのところ何も見つかりませんでした。これらのマシンがどのように異なる制限でプリセットされているのか理解できません。
実際、これらのマシンではなく、制限が1024
非常に小さい別の(CentOS 6)マシンについて疑問に思っています。cronジョブをより高い制限で実行する必要があり、それを設定する方法を知っている唯一の方法はcronジョブ自体にあります。それは大丈夫ですが、システム全体に設定して、ハッキングほどではないようにします。
助けてくれてありがとう。これは簡単なはずです(NOT)。
編集-解決済み
わかりました、私はこれを理解しました。CentOS 6またはおそらく私のマシン構成の問題のようです。CentOS 5構成では、次を設定できます/etc/security/limits.conf
。
* - nproc unlimited
これにより、アカウントとcronの制限が効果的に更新されます。ただし、これは私のCentOS 6ボックスでは機能しません。代わりに、私はする必要があります:
myname1 - nproc unlimited
myname2 - nproc unlimited
...
そして、物事は期待通りに機能します。UID仕様は機能するかもしれませんが、ワイルドカード(*)はここでは間違いなく機能しません。奇妙なことに、ワイルドカードはnofile
制限のために機能します。
デフォルト値が実際にどこから来ているのかを知りたい。
/etc/security/limits.d/
かありますか?