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