業(yè)務(wù)反饋某臺應(yīng)用服務(wù)器,普通用戶使用mutt程序發(fā)送郵件時,提示“postdrop warning: mail_queue_enter: create file maildrop/713410.6065: permission denied”,而且普通用法使用crontab -e 編輯自身任務(wù)計劃時,也會提示“ crontab: edits left in /tmp/crontab.xxxxcl0blz” 。
使用postfix check命令檢測發(fā)現(xiàn)有如下報錯:
postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postqueue postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postdrop
上面的提示其實已經(jīng)非常清楚了,在這兩個可執(zhí)行文件的組權(quán)限中,沒有s權(quán)限位。慎重起見,不審找了一臺主機對比下,發(fā)現(xiàn)確實不存在s權(quán)限,正常的權(quán)限如下:
# ll /usr/sbin/postqueue -rwxr-sr-x. 1 root postdrop 259992 Jan 27 2014 /usr/sbin/postqueue
解決方法非常簡單:
chmod g+s /usr/sbin/postqueue chmod g+s /usr/sbin/postdrop postfix reload
使用crontab -e發(fā)現(xiàn)可以正常查看,但是編輯完,保存時提示“ crontab: edits left in /tmp/crontab.XXXXCl0bLz” 。即然上面第一個問題是s權(quán)限位引起的,這個問題想必也是,所以未做strace 或?qū)徲嫺櫍亟硬榭?usr/bin/crontab權(quán)限位,發(fā)現(xiàn)和正常主機對比,發(fā)現(xiàn)用戶權(quán)限上少了s權(quán)限 ---crontab命令和passwd命令類似,需要用戶具有s權(quán)限位。執(zhí)行如下命令后,問題解決:
chmod u+s /usr/bin/crontab rccron restart
注:這點對比了下SuSE和redhat下的區(qū)別,發(fā)現(xiàn)user權(quán)限下如果沒有s權(quán)限位。在redhat下提示:
而且直接crontab -l命令查看時,都會提示上面的錯誤。而在SuSE沒有這個s權(quán)限,仍然可以正常的通過crontab -l 進行查看。