在最近更新到CentOS 6.4之后,两台机器具有setuid()限制,其功能类似于功能或se
linux,但两者都被禁用.例如.以下失败:
[root@host statd]# perl -e 'use POSIX; POSIX::setuid(99);system("id")' [root@host statd]# echo $? 0
当它应该返回类似的东西:
host:~# perl -e 'use POSIX; POSIX::setuid(99);system("id")' uid=99(nobody) gid=0(root) groups=99(nobody),0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
强调perl的调用,setuid()调用成功,但system()子进程立即退出,就像selinux或类似的终止一样.但是,即使在semodule -DB之后,/ var / log / audit / audit.log中也没有日志条目.
setuid32(99) = 0 getuid32() = 99 geteuid32() = 99 pipe([3,4]) = 0 clone(child_stack=0,flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,child_tidptr=0xb7705728) = 10073 close(4) = 0 rt_sigaction(SIGINT,{SIG_IGN,[],0},{SIG_DFL,8) = 0 rt_sigaction(SIGQUIT,8) = 0 waitpid(10073,[{WIFEXITED(s) && WEXITSTATUS(s) == 255}],0) = 10073 --- SIGCHLD (Child exited) @ 0 (0) --- rt_sigaction(SIGINT,NULL,8) = 0 read(3,"\r\0\0\0",4) = 4 close(3) = 0 exit_group(0)
第一次重新启动后,由于“无法访问本地netconfig数据库:未找到Netconfig数据库”,nfs.statd失败,此问题变得明显.并且rpc.rquotasd失败,因为“RPC:服务器localhost需要更强的身份验证.”
nfs.statd问题可以通过以root身份运行来修复(chown root:root / var / lib / nfs / statd).以root身份运行计算机上的所有内容似乎不是一个很好的解决方法.