El 19/03/2012 23:31, Adrian Reyer escribió: > >> I killed all programs except sshd and system (vps, centos 6) still >> have no locks for programs. > How many connections are shown by 'netstat -anp' or similar? Lsof said 729 used files. ulimit: core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 63974 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 1024 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited >> Really I do not know how to trace de problem. I have postfix running >> in other servers (fedora 16 no vps) without any problem. >> And as Wietse Venemas said, postfix ask for a lock but kernel do >> not provide it. > Can you reproduce/force the issue? If so, you can always try and do an > 'strace' and see what actually fails. > > lsof: #################### master 5360 root 85w FIFO 0,7 0t0 1224753202 pipe master 5360 root 11r FIFO 0,7 0t0 1224753202 pipe strace ################### open("/etc/postfix/master.cf", O_RDONLY) = 11 ... pipe([11, 85]) = 0 fcntl(85, F_GETFL) = 0x1 (flags O_WRONLY) fcntl(85, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 fcntl(11, F_GETFL) = 0 (flags O_RDONLY) fcntl(11, F_SETFL, O_RDONLY|O_NONBLOCK) = 0 fcntl(85, F_GETFD) = 0 fcntl(85, F_SETFD, FD_CLOEXEC) = 0 fcntl(11, F_GETFD) = 0 fcntl(11, F_SETFD, FD_CLOEXEC) = 0 Good, works ################################################# alarm(333) = 333 epoll_wait(13, {}, 100, 60000) = 0 geteuid() = 0 setresgid(-1, 89, -1) = 0 setgroups(1, [89]) = 0 setresuid(-1, 89, -1) = 0 open("public/pickup", O_WRONLY|O_NONBLOCK) = 88 fstat(88, {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0 lstat("public/pickup", {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0 fcntl(88, F_GETFL) = 0x8801 (flags O_WRONLY|O_NONBLOCK|O_LARGEFILE) fcntl(88, F_SETFL, O_WRONLY|O_NONBLOCK|O_LARGEFILE) = 0 poll([{fd=88, events=POLLOUT}], 1, 1000) = 1 ([{fd=88, revents=POLLOUT}]) write(88, "W", 1) = 1 close(88) = 0 getgid() = 0 getuid() = 0 geteuid() = 89 setresuid(-1, 0, -1) = 0 setgid(0) = 0 setgroups(1, [0]) = 0 setuid(0) = 0 alarm(333) = 273 Error, do not work ############################################## --- SIGCHLD (Child exited) @ 0 (0) --- write(85, "\0", 1) = 1 rt_sigreturn(0x55) = -1 EINTR (Interrupted system call) alarm(333) = 332 epoll_wait(13, {{EPOLLIN, {u32=11, u64=6482466260943634443}}}, 100, 13000) = 1 read(11, "\0", 1) = 1 read(11, 0x7fff805466bf, 1) = -1 EAGAIN (Resource temporarily unavailable) wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], WNOHANG, NULL) = 5175 sendto(3, "<20>Mar 20 11:10:46 postfix/mast"..., 109, MSG_NOSIGNAL, NULL, 0) = 109 sendto(3, "<20>Mar 20 11:10:46 postfix/mast"..., 113, MSG_NOSIGNAL, NULL, 0) = 113 wait4(-1, 0x7fff80546b98, WNOHANG, NULL) = 0 alarm(333) = 333 epoll_wait(13, {}, 100, 13000) = 0 geteuid() = 0 setresgid(-1, 89, -1) = 0 setgroups(1, [89]) = 0 setresuid(-1, 89, -1) = 0 open("public/pickup", O_WRONLY|O_NONBLOCK) = 88 fstat(88, {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0 lstat("public/pickup", {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0 fcntl(88, F_GETFL) = 0x8801 (flags O_WRONLY|O_NONBLOCK|O_LARGEFILE) fcntl(88, F_SETFL, O_WRONLY|O_NONBLOCK|O_LARGEFILE) = 0 poll([{fd=88, events=POLLOUT}], 1, 1000) = 1 ([{fd=88, revents=POLLOUT}]) write(88, "W", 1) = 1 close(88) = 0 getgid() = 0 getuid() = 0 geteuid() = 89 setresuid(-1, 0, -1) = 0 setgid(0) = 0 setgroups(1, [0]) = 0 setuid(0) = 0 alarm(333) = 320 epoll_wait(13, {{EPOLLIN, {u32=17, u64=6540183302777602065}}}, 100, 47000) = 1 read(17, "\35\r\0\0t\0\0\0\0\0\0\0", 12) = 12 alarm(333) = 333 epoll_wait(13, {{EPOLLIN, {u32=17, u64=6540183302777602065}}}, 100, 47000) = 1 read(17, "\35\r\0\0t\0\0\0\1\0\0\0", 12) = 12 alarm(333) = 333 epoll_wait(13, {}, 100, 47000) = 0 epoll_ctl(13, EPOLL_CTL_ADD, 25, {EPOLLIN, {u32=25, u64=6491915257714311193}}) = 0 alarm(333) = 286 epoll_wait(13, {{EPOLLIN, {u32=25, u64=6491915257714311193}}}, 100, 13000) = 1 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f0959f41a90) = 9163 epoll_ctl(13, EPOLL_CTL_DEL, 25, {EPOLLIN, {u32=25, u64=6312716186899447833}}) = 0 alarm(333) = 333 epoll_wait(13, 7fff805466e0, 100, 13000) = -1 EINTR (Interrupted system call) --- SIGCHLD (Child exited) @ 0 (0) --- Not very useful (for me), searching for fd 11 returns to "/etc/postfix/main.cf", but not sure that is that ... write(85, "\0", 1) = 1 85 is a pipe with write lock read(11, "\0", 1) = 1 read(11, 0x7fff805466bf, 1) = -1 EAGAIN (Resource temporarily unavailable) Seems that no solution it is possible, at customer level.