/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
我想这是由每个用户的限制,但与其他用户比较没有什么不同。
这里是对于adtech ulimit -n :
[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
任何其他的事情来检查?
更新7月21日星期六09:21:26 ICT 2012:
# getent passwd adtech adtech:x:500:502::/home/adtech:/bin/bash
正如我在下面的评论中所说的,我的同事已经find了可能是罪魁祸首的过程:
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
通过杀死这个过程,问题就消失了,但我们仍然不知道超过了哪个限制。
更新星期六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 ps -eLF | grep adtech | wc -l ps -eLF | grep adtech | wc -l显示你的当前值。
在jvm日志中查看是否有资源限制。 堆栈大小可能是问题,取决于有多lessjava线程被杀死的进程正在运行。
search你的错误信息findpam_keyinit的错误报告:检查你的供应商的存储库是否有更新的版本可用。
该错误由pam_keyinit报告。 由于我对这个模块不熟悉,我search了文档并find了这个手册页 。 根据描述,我想知道你杀死的进程是否阻止了对pam_keyinit需要修改的某些文件的必要访问? 希望这给你一些方向。
如果达到用户的进程运行限制,则可能会发生此问题。 可以通过编辑/etc/security/limits.conf文件来增加进程限制。 进入检查将类似于:
* hard nproc 100
无需重新启动任何服务。