/var/log/secure
:
su: pam_keyinit(su-l:session): Unable to change UID to 500 temporarily
su: pam_keyinit(su-l:session): Unable to change UID to 500 temporarily
su: pam_unix(su-l:session): session opened for user adtech by root(uid=0)
su: pam_unix(su-l:session): session closed for user adtech
これはユーザーごとの制限が原因だと思いますが、他のユーザーと比較しても違いはありません。
ulimit -n
for adtech
:
[adtech@hmaster87 root]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 192025
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 655360
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
そして、これはquanta
用です:
[quanta@hmaster87 ~]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 192025
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 655360
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
adtech
によって実行されているプロセスの数:
[root@hmaster87 ~]# ps -U adtech | wc -l
25
他に確認することはありますか?
PDATE 7月21日09:21:26 ICT 2012:
# getent passwd adtech
adtech:x:500:502::/home/adtech:/bin/bash
以下のコメントで述べたように、私の同僚はおそらく犯人であるプロセスを発見しました:
adtech 12901 1 0 08:58 ? 00:00:00 /home/adtech/nexus/bin/../bin/jsw/linux-x86-64/wrapper /home/adtech/nexus/bin/../bin/jsw/conf/wrapper.conf wrapper.syslog.ident=nexus wrapper.pidfile=/home/adtech/nexus/bin/../bin/jsw/linux-x86-64/nexus.pid wrapper.daemonize=TRUE
adtech 12903 12901 1 08:58 ? 00:00:24 Java -Dsun.net.inetaddr.ttl=3600 -DbundleBasedir=. -Djava.io.tmpdir=./tmp -DjettyContext=nexus.properties -DjettyContextIncludeKeys=bundleBasedir -DjettyPlexusCompatibility=true -Djava.library.path=bin/jsw/lib -classpath bin/jsw/lib/wrapper-3.2.3.jar:./lib/plexus-classworlds-2.4.jar:./conf/ -Dwrapper.key=ejxHaBJASiFkAB8w -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=12901 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.codehaus.plexus.classworlds.launcher.Launcher ./conf/jetty.xml
このプロセスを終了することで問題はなくなりますが、どの制限を超えたかはまだわかりません。
PDATE 12月15日00:56:13 ICT 2012:
@ favadiの答えは正しいですが、誰かがこのスレッドをグーグル化した場合に備えて、ここで更新します。
ログファイルによると:
jvm 1 | Server daemon died!
jvm 1 | Java.lang.OutOfMemoryError: unable to create new native thread
jvm 1 | at Java.lang.Thread.start0(Native Method)
jvm 1 | at Java.lang.Thread.start(Thread.Java:640)
jvm 1 | at org.tanukisoftware.wrapper.WrapperManager.privilegedStopInner(WrapperManager.Java:3152)
jvm 1 | at org.tanukisoftware.wrapper.WrapperManager.handleSocket(WrapperManager.Java:3797)
jvm 1 | at org.tanukisoftware.wrapper.WrapperManager.run(WrapperManager.Java:4084)
jvm 1 | at Java.lang.Thread.run(Thread.Java:662)
max user processes (-u) 1024
が低すぎる可能性があります。
プロセスとスレッドは一緒にカウントされていることに注意してください。 ps -eLF | grep adtech | wc -l
を使用して、現在の値を表示できます。
リソースの制限に達している証拠については、jvmログを調べてください。キルされたプロセスが実行していたJavaスレッドの数によっては、スタックサイズが問題になる場合があります。
エラーメッセージを検索すると、pam_keyinitのバグレポートが見つかります。更新されたバージョンが利用可能かどうかをベンダーのリポジトリで確認してください。
この問題は、ユーザーのプロセス実行制限に達した場合に発生する可能性があります。プロセスの制限は、次のように編集して増やすことができます:/etc/security/limits.conf
root権限を持つユーザーのファイル。チェックするエントリは次のようになります。
* hard nproc 100
サービスを再起動する必要はありません。
エラーはpam_keyinit
によって報告されました。私はこのモジュールに慣れていないので、ドキュメントを検索したところ、この manpage が見つかりました。説明に基づいて、おそらくあなたが殺したプロセスがpam_keyinitが変更する必要があるいくつかのファイルへの必要なアクセスを妨げたのだろうか?うまくいけば、これはあなたにいくつかの方向性を与えます。