Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2521075
  • 博文数量: 323
  • 博客积分: 10211
  • 博客等级: 上将
  • 技术积分: 4934
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-27 14:56
文章分类

全部博文(323)

文章存档

2012年(5)

2011年(3)

2010年(6)

2009年(140)

2008年(169)

分类: 系统运维

2009-05-11 09:24:45

现象:
crontab表中加了一些定时工作的命令,按手册的说法,命令的标准输出和标准错误会mail 到相应的用户,比如root用户,但现在却不mail,并且也没做重定向。也就是说/var/spool/mail目录下是空的,不知哪儿出了问题?直接手工测试邮件,也出现问题。所有邮寄的东西都还在邮件队列里,即/var/spool/mqueue目录中,没有转发。
 
解决思路:
 
1.crontab中的脚本要用全路径。
 
2.注意脚本运行时的用户需要的环境变量。比如需要su -c “命令”
 
3.如果是非root用户,最好将这个用户名添加到crontab.allow中。
 
4.权限问题,这个也是最复杂的。
 
以上这个问题就是来自lu的一个案例。是权限问题导致的。解决方法如下:
 
1.在邮件由邮件队列/var/spool/mqueue转发不到相应的用户时,用newaliases命令
重建别名库aliases.db会提示如下信息:
WARNING: Group writable directory /
WARNING: Group writable directory /spool
WARNING: Group writable directory /var/spool/mqueue
hash map "Alias0": missing map file /etc/mail/aliases.db: Group writable directory
dbm map "Alias0": missing map file /etc/mail/aliases
WARNING: cannot open alias database /etc/mail/aliases
Cannot create database for alias file /etc/mail/aliases: A system call received a parameter that is not valid.

2.但邮件运行正常的机器上运行newaliases命令提示的却是:
WARNING: Group writable directory /var/spool
WARNING: Group writable directory /var/spool/mqueue
/etc/mail/aliases: 4 aliases, longest 9 bytes, 57 bytes total
于是我想是不是该把根目录/ 的组可写权限去掉呢?于是呼我用如下命令:
chmod g-w /
再做newaliases命令,提示的正式我想要的,
连忙去/var/spool/mail看,怎么还是空的?对,运行 sendmail -q -v 命令,让sendmail
立刻转发,再到 /var/spool/mail一看,邮件全来了,OK!

3.原因
有可能是我不小心改了根目录 / 的权限。
 
阅读(2945) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~