首页 > 学技术 > 技术网文 > Mail服务器 > 正文

[保留] multilog被删除,重装daemontools为何不行?


来源 chinaunix.net 酷勤网整理

我也是用的qmail-1.03以及其他辅助程序,包括daemontools-0.70安装在redhat7.2上。服务器已经正常运行了几个月了,但是昨天被菜鸟把multilog删了,我重新安装了daemontools也没有报错,但问题还在,就像没有multilog一样报错:setuidgid:fatal:unable to run /usr/local/bin/multilog:access denied
各位老大,我除了重装还有别的办法吗?救命啊,我们头一直在等着用哪!



 noress 回复于:2003-10-27 11:20:52

把你的那个用svscan启动的服务的目录设置sticky bit
chmod +t yourservice


 microroad 回复于:2003-10-27 11:28:29

那三个目录都加了t属性:chmod +t /var/qmail/supervise/qmail-send
                                  chmod +t /var/qmail/supervise/qmail-smptd
                                  chmod +t /var/qmail/supervise/qmail-pop3d


 noress 回复于:2003-10-27 13:18:08

对,就是那样!
还出错吗?


 microroad 回复于:2003-10-27 13:34:41

multilog还在的时候,服务器已经设好的,所以这几个属性本来就正确设置了,我也重新核对了,是对的,但就是说multilog不能运行。我是不是可以就不要它运行,那会不会影响邮件服务器的正常工作?


 gadfly 回复于:2003-10-27 18:37:18

不影响正常运行,最多,tcpserver的日志不记了。

手工执行,看看什么错误


 noress 回复于:2003-10-27 19:58:49

你可以不使用daemontools来启动你的服务器。
直接写一个脚本,用tcpserver启动,用splogger来记录你的日志。


 noress 回复于:2003-10-27 20:02:06

能不能把你的run文件贴出来看看?


 microroad 回复于:2003-10-28 22:19:00

引用:原帖由 "gadfly" 发表:
不影响正常运行,最多,tcpserver的日志不记了。

手工执行,看看什么错误



谢谢gadfly。手工执行是一样的错误报告——access denied


 microroad 回复于:2003-10-28 22:45:24

我已经跳过multilog,但qmail 系统也遭到了破坏,在系统给本地用户发信:echo to :me |/var/qmail/bin/qmail-inject ,一直说不能打开share library:libc.s0.6.1,不知道问题又出在哪里了?


 noress 回复于:2003-10-28 23:30:56

先找到这个文件在哪:
#find / -name libc.s0.6.1
找到这个文件所在的目录.
#vi /etc/ld.so.conf
把那目录加上
#ldconfig
 OK!


 microroad 回复于:2003-10-29 02:45:04

我也找到它了,就在/lib下,我也用你说的方法做了,可就是睁眼不认,真是莫名其妙!


 gadfly 回复于:2003-10-29 17:36:31

cat /etc/ld.so.conf

ldd /var/qmail/bin/qmail-inject

ls -l multilog


 microroad 回复于:2003-10-30 08:25:39

谢谢gadfly,cat /etc/ld.so.conf   和 ls -l multilog是找不出茬的。也许在 ldd /var/qmail/bin/qmail-inject 能找出问题来,因为我当时没想这里。可惜由于头们等不及,我已经重装了整个qmail,现在已经正常运行。

真的感谢gadfly和noress的鼎力帮助!


 leftatrium 回复于:2007-03-02 18:04:22

setuidgid:fatal:unable to run /usr/local/bin/multilog:access denied 
这行错误跟qmail应该没关系,/usr/local/bin/multilog这个程序应该是daemontools里面带的,说的权限不够的问题,是qmaill用户无法执行/usr/local/bin/multilog文件造成的,你可以:
ls -al /usr/local/bin/multilog一下看看是否是没有qmaill用户的执行权限,或者存放daemontools的目录无法被qmaill用户读取。其实,你ls -al /usr/local/bin/multilog看看就知道,这个文件链接到/command/multilog里面,而/command/multilog又链接到你当时解压daemontools的目录中,也就是说,你执行package/install的时候,系统只是编译了一下程序,然后,做了两个软连接,这么说明白否?你只要试一下:
su qmaill
/usr/local/bin/multilog t /var/log/qmail/smtpd看看,如果还是权限不够的话就去修改一下你安装daemontools的目录里面的属性就可以了。




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=188794
转载请注明作者名及原文出处



收藏本页到: