Hi, I have a problem with rpc.statd. We run our linux machines as diskless clients, they mount their root fs via nfs from a server. For security reasons i would like to export the root fs readonly. However, rpc.statd will not run. It exits without an error message, but reports
Sep 26 15:33:48 rpc.statd[680]: Version 1.0 Starting Sep 26 15:33:53 rpc.statd[681]: unable to register (statd, 1, udp). via syslog. I did an strace of the whole thing but am unable to locate the error. I append it to this message, maybe someone can help (I am not familiar with network programming). ########################## strace output #################################### 647 execve("/sbin/rpc.statd", ["rpc.statd"], [/* 19 vars */]) = 0 647 uname({sys="Linux", node="reno", ...}) = 0 647 brk(0) = 0x804ff74 647 open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory) 647 open("/usr/local/kde/lib/i586/mmx/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/kde/lib/i586/mmx", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/kde/lib/i586/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/kde/lib/i586", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/kde/lib/mmx/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/kde/lib/mmx", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/kde/lib/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/kde/lib", {st_mode=S_IFDIR|0755, st_size=17920, ...}) = 0 647 open("/usr/local/lib/i586/mmx/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/lib/i586/mmx", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/lib/i586/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/lib/i586", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/lib/mmx/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/lib/mmx", 0xbffff0c4) = -1 ENOENT (No such file or directory) 647 open("/usr/local/lib/libwrap.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) 647 stat64("/usr/local/lib", {st_mode=S_IFDIR|S_ISGID|0775, st_size=2048, ...}) = 0 647 open("/etc/ld.so.cache", O_RDONLY) = 3 647 fstat64(3, {st_mode=S_IFREG|0644, st_size=40661, ...}) = 0 647 old_mmap(NULL, 40661, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40014000 647 close(3) = 0 647 open("/lib/libwrap.so.0", O_RDONLY) = 3 647 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@ \0\000"..., 1024) = 1024 647 fstat64(3, {st_mode=S_IFREG|0644, st_size=24328, ...}) = 0 647 old_mmap(NULL, 29092, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001e000 647 mprotect(0x40024000, 4516, PROT_NONE) = 0 647 old_mmap(0x40024000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x5000) = 0x40024000 647 old_mmap(0x40025000, 420, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40025000 647 close(3) = 0 647 open("/usr/local/kde/lib/libnsl.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) 647 open("/usr/local/lib/libnsl.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) 647 open("/lib/libnsl.so.1", O_RDONLY) = 3 647 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 ;\0\000"..., 1024) = 1024 647 fstat64(3, {st_mode=S_IFREG|0644, st_size=69472, ...}) = 0 647 old_mmap(NULL, 80988, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40026000 647 mprotect(0x40037000, 11356, PROT_NONE) = 0 647 old_mmap(0x40037000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x10000) = 0x40037000 647 old_mmap(0x40038000, 7260, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40038000 647 close(3) = 0 647 open("/usr/local/kde/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) 647 open("/usr/local/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) 647 open("/lib/libc.so.6", O_RDONLY) = 3 647 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\30\222"..., 1024) = 1024 647 fstat64(3, {st_mode=S_IFREG|0755, st_size=1153784, ...}) = 0 647 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4003a000 647 old_mmap(NULL, 1166560, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4003b000 647 mprotect(0x4014e000, 40160, PROT_NONE) = 0 647 old_mmap(0x4014e000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x113000) = 0x4014e000 647 old_mmap(0x40154000, 15584, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40154000 647 close(3) = 0 647 munmap(0x40014000, 40661) = 0 647 getpid() = 647 647 brk(0) = 0x804ff74 647 brk(0x8050104) = 0x8050104 647 brk(0x8051000) = 0x8051000 647 brk(0x8054000) = 0x8054000 647 time([1033046254]) = 1033046254 647 open("/etc/localtime", O_RDONLY) = 3 647 fstat64(3, {st_mode=S_IFREG|0644, st_size=837, ...}) = 0 647 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000 647 read(3, "TZif\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0\10"..., 4096) = 837 647 close(3) = 0 647 munmap(0x40014000, 4096) = 0 647 getpid() = 647 647 rt_sigaction(SIGPIPE, {0x40107f28, [], 0x4000000}, {SIG_DFL}, 8) = 0 647 socket(PF_UNIX, SOCK_DGRAM, 0) = 3 647 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 647 connect(3, {sin_family=AF_UNIX, path="/dev/log"}, 16) = 0 647 send(3, "<29>Sep 26 15:17:34 rpc.statd[64"..., 56, 0) = 56 647 rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0 647 fork() = 648 648 setsid() = 648 648 chdir("/var/lib/nfs/" <unfinished ...> 647 _exit(0) = ? 648 <... chdir resumed> ) = 0 648 open("/dev/null", O_RDWR) = 4 648 close(0) = 0 648 dup2(4, 0) = 0 648 close(1) = 0 648 dup2(4, 1) = 1 648 close(2) = 0 648 dup2(4, 2) = 2 648 getrlimit(0x7, 0xbffffc54) = 0 648 close(3) = 0 648 close(4) = 0 [1024 file closes removed] close(1020) = -1 EBADF (Bad file descriptor) 648 close(1021) = -1 EBADF (Bad file descriptor) 648 close(1022) = -1 EBADF (Bad file descriptor) 648 close(1023) = -1 EBADF (Bad file descriptor) 648 rt_sigaction(SIGHUP, {0x804ad5c, [HUP], SA_RESTART|0x4000000}, {SIG_DFL}, 8) = 0 648 rt_sigaction(SIGINT, {0x804ad5c, [INT], SA_RESTART|0x4000000}, {SIG_DFL}, 8) = 0 648 rt_sigaction(SIGTERM, {0x804ad5c, [TERM], SA_RESTART|0x4000000}, {SIG_DFL}, 8) = 0 648 rt_sigaction(SIGCHLD, {SIG_IGN}, {SIG_DFL}, 8) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 3 648 getpid() = 648 648 bind(3, {sin_family=AF_INET, sin_port=htons(824), sin_addr=inet_addr("0.0.0.0")}}, 16) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4 648 ioctl(4, 0x8912, 0xbfffdc24) = 0 648 ioctl(4, 0x8913, 0xbfffdc2c) = 0 648 ioctl(4, 0x8913, 0xbfffdc2c) = 0 648 ioctl(4, 0x8913, 0xbfffdc2c) = 0 648 close(4) = 0 648 gettimeofday({1033046254, 794199}, NULL) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4 648 bind(4, {sin_family=AF_INET, sin_port=htons(825), sin_addr=inet_addr("0.0.0.0")}}, 16) = 0 648 ioctl(4, 0x5421, [1]) = 0 648 setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0 648 sendto(4, "\\\267\"\320\0\0\0\0\0\0\0\2\0\1\206\240\0\0\0\2\0\0\0"..., 56, 0, {sin_family=AF_INET, sin_port=htons(111), sin_addr=inet_addr("134.102.176.57")}}, 16) = -1 EINVAL (Invalid argument) 648 close(4) = 0 648 open("/var/lib/nfs/state", O_RDWR|O_CREAT, 0600) = 4 648 read(4, "\25\0\0\0", 4) = 4 648 lseek(4, 0, SEEK_SET) = 0 648 write(4, "\27\0\0\0", 4) = 4 648 fsync(4) = 0 648 close(4) = 0 648 uname({sys="Linux", node="reno", ...}) = 0 648 gettimeofday({1033046254, 799811}, NULL) = 0 648 getpid() = 648 648 open("/etc/resolv.conf", O_RDONLY) = 4 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=51, ...}) = 0 648 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000 648 read(4, "search ant.uni-bremen.de\nnameser"..., 4096) = 51 648 read(4, "", 4096) = 0 648 close(4) = 0 648 munmap(0x40014000, 4096) = 0 648 socket(PF_UNIX, SOCK_STREAM, 0) = 4 648 connect(4, {sin_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory) 648 close(4) = 0 648 open("/etc/nsswitch.conf", O_RDONLY) = 4 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=560, ...}) = 0 648 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000 648 read(4, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 560 648 read(4, "", 4096) = 0 648 close(4) = 0 648 munmap(0x40014000, 4096) = 0 648 open("/usr/local/kde/lib/libnss_files.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/usr/local/lib/libnss_files.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/etc/ld.so.cache", O_RDONLY) = 4 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=40661, ...}) = 0 648 old_mmap(NULL, 40661, PROT_READ, MAP_PRIVATE, 4, 0) = 0x40014000 648 close(4) = 0 648 open("/lib/libnss_files.so.2", O_RDONLY) = 4 648 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\35\0\000"..., 1024) = 1024 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=32668, ...}) = 0 648 old_mmap(NULL, 36112, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40158000 648 mprotect(0x40160000, 3344, PROT_NONE) = 0 648 old_mmap(0x40160000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x7000) = 0x40160000 648 close(4) = 0 648 munmap(0x40014000, 40661) = 0 648 open("/etc/host.conf", O_RDONLY) = 4 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=26, ...}) = 0 648 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000 648 read(4, "order hosts,bind\nmulti on\n", 4096) = 26 648 read(4, "", 4096) = 0 648 close(4) = 0 648 munmap(0x40014000, 4096) = 0 648 open("/etc/hosts", O_RDONLY) = 4 648 fcntl64(4, F_GETFD) = 0 648 fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=317, ...}) = 0 648 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40014000 648 read(4, "127.0.0.1\tnewhost\tlocalhost\n\n64."..., 4096) = 317 648 read(4, "", 4096) = 0 648 close(4) = 0 648 munmap(0x40014000, 4096) = 0 648 open("/usr/local/kde/lib/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/usr/local/lib/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/etc/ld.so.cache", O_RDONLY) = 4 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=40661, ...}) = 0 648 old_mmap(NULL, 40661, PROT_READ, MAP_PRIVATE, 4, 0) = 0x40014000 648 close(4) = 0 648 open("/lib/libnss_dns.so.2", O_RDONLY) = 4 648 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\r\0\000"..., 1024) = 1024 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=12176, ...}) = 0 648 old_mmap(NULL, 15144, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40161000 648 mprotect(0x40164000, 2856, PROT_NONE) = 0 648 old_mmap(0x40164000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x2000) = 0x40164000 648 close(4) = 0 648 open("/usr/local/kde/lib/libresolv.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/usr/local/lib/libresolv.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 648 open("/lib/libresolv.so.2", O_RDONLY) = 4 648 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\'\0"..., 1024) = 1024 648 fstat64(4, {st_mode=S_IFREG|0644, st_size=56480, ...}) = 0 648 old_mmap(NULL, 65312, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40165000 648 mprotect(0x40172000, 12064, PROT_NONE) = 0 648 old_mmap(0x40172000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0xd000) = 0x40172000 648 old_mmap(0x40173000, 7968, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40173000 648 close(4) = 0 648 munmap(0x40014000, 40661) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4 648 connect(4, {sin_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("134.102.176.16")}}, 28) = 0 648 send(4, ">&\1\0\0\1\0\0\0\0\0\0\4reno\3ant\nuni-bremen"..., 40, 0) = 40 648 gettimeofday({1033046254, 834117}, NULL) = 0 648 poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 5000) = 1 648 recvfrom(4, ">&\205\200\0\1\0\1\0\1\0\1\4reno\3ant\nuni-bremen"..., 1024, 0, {sin_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("134.102.176.16")}}, [16]) = 94 648 close(4) = 0 648 stat64("/var/lib/nfs/sm", {st_mode=S_IFDIR|0700, st_size=512, ...}) = 0 648 stat64("/var/lib/nfs/sm.bak", {st_mode=S_IFDIR|0700, st_size=512, ...}) = 0 648 open("/dev/null", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a directory) 648 open("/var/lib/nfs/sm", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4 648 fstat64(4, {st_mode=S_IFDIR|0700, st_size=512, ...}) = 0 648 fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 648 brk(0x8059000) = 0x8059000 648 getdents64(0x4, 0x80525e0, 0x4000, 0) = 48 648 getdents64(0x4, 0x80525e0, 0x4000, 0) = 0 648 close(4) = 0 648 open("/var/lib/nfs/sm.bak", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4 648 fstat64(4, {st_mode=S_IFDIR|0700, st_size=512, ...}) = 0 648 fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 648 getdents64(0x4, 0x80525e0, 0x4000, 0) = 48 648 getdents64(0x4, 0x80525e0, 0x4000, 0) = 0 648 close(4) = 0 648 getsockname(0, 0xbffffc6c, [16]) = -1 ENOTSOCK (Socket operation on non-socket) 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4 648 ioctl(4, 0x8912, 0xbfffdbb4) = 0 648 ioctl(4, 0x8913, 0xbfffdbbc) = 0 648 ioctl(4, 0x8913, 0xbfffdbbc) = 0 648 ioctl(4, 0x8913, 0xbfffdbbc) = 0 648 close(4) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4 648 bind(4, {sin_family=AF_INET, sin_port=htons(826), sin_addr=inet_addr("0.0.0.0")}}, 16) = 0 648 ioctl(4, 0x5421, [1]) = 0 648 setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0 648 sendto(4, "l>\217\261\0\0\0\0\0\0\0\2\0\1\206\240\0\0\0\2\0\0\0\2"..., 56, 0, {sin_family=AF_INET, sin_port=htons(111), sin_addr=inet_addr("134.102.176.57")}}, 16) = -1 EINVAL (Invalid argument) 648 close(4) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4 648 setsockopt(4, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0 648 bind(4, {sin_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("0.0.0.0")}}, 16) = 0 648 bind(4, {sin_family=AF_INET, sin_port=htons(827), sin_addr=inet_addr("0.0.0.0")}}, 16) = -1 EINVAL (Invalid argument) 648 bind(4, {sin_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("0.0.0.0")}}, 16) = -1 EINVAL (Invalid argument) 648 getsockname(4, {sin_family=AF_INET, sin_port=htons(1024), sin_addr=inet_addr("0.0.0.0")}}, [16]) = 0 648 setsockopt(4, SOL_IP, IP_PKTINFO, [1], 4) = 0 648 getrlimit(0x7, 0xbffffb48) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 5 648 ioctl(5, 0x8912, 0xbfffdb64) = 0 648 ioctl(5, 0x8913, 0xbfffdb6c) = 0 648 ioctl(5, 0x8913, 0xbfffdb6c) = 0 648 ioctl(5, 0x8913, 0xbfffdb6c) = 0 648 close(5) = 0 648 socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 5 648 bind(5, {sin_family=AF_INET, sin_port=htons(828), sin_addr=inet_addr("0.0.0.0")}}, 16) = 0 648 ioctl(5, 0x5421, [1]) = 0 648 setsockopt(5, SOL_IP, IP_RECVERR, [1], 4) = 0 648 sendto(5, "x\343Bq\0\0\0\0\0\0\0\2\0\1\206\240\0\0\0\2\0\0\0\1\0\0"..., 56, 0, {sin_family=AF_INET, sin_port=htons(111), sin_addr=inet_addr("134.102.176.57")}}, 16) = -1 EINVAL (Invalid argument) 648 write(2, "Cannot register service: RPC: Un"..., 71) = 71 648 time([1033046254]) = 1033046254 648 getpid() = 648 648 rt_sigaction(SIGPIPE, {0x40107f28, [], 0x4000000}, {SIG_DFL}, 8) = 0 648 send(3, "<27>Sep 26 15:17:34 rpc.statd[64"..., 72, 0) = -1 ENOTCONN (Transport endpoint is not connected) 648 close(3) = 0 648 socket(PF_UNIX, SOCK_DGRAM, 0) = 3 648 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 648 connect(3, {sin_family=AF_UNIX, path="/dev/log"}, 16) = 0 648 send(3, "<27>Sep 26 15:17:34 rpc.statd[64"..., 72, 0) = 72 648 rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0 648 _exit(1) = ? ############################################################################# Regards Heinrich Rebehn University of Bremen Physics / Electrical and Electronics Engineering - Department of Telecommunications - E-mail: mailto:[EMAIL PROTECTED] Phone : +49/421/218-4664 Fax : -3341 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]