標籤:網路 關閉 問題 default 發送 自己 efault 經驗 驗證
今天查看記憶體的時候 出現一天奇怪的提示
You have new mail in /var/spool/mail/root
有的時候每敲一下斷行符號,就出來You have new mail in /var/spool/mail/root的提示,究竟是為什麼呢?
Linux 系統經常會自動發出一些郵件來提醒使用者系統中出了哪些問題(收件匣位置:/var/mail/)。可是這些郵件都是發送給 root 使用者的。出於系統安全考慮,通常不建議大家直接使用 root 帳戶進行日常操作。所以要想點辦法來讓系統把發給 root 使用者的郵件也給自己指定的外部郵箱發一份,或者是直接關閉此項服務。
1、關閉sendmail服務,這裡介紹一種不用關閉sendmail服務的方法
echo “unset MAILCHECK” >> /etc/profilesource /etc/profile
關閉sendmail的功能:
chmod 0 /usr/sbin/sendmailmv /usr/sbin/sendmail /usr/sbin/sendmail.bakln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
清空 /var/spool/mail/root日誌
cat /dev/null > /var/spool/mail/rootcat /dev/null>;/var/spool/mail/root
2、root郵件轉寄到自己的郵箱
或者轉寄到自己的郵箱,下面介紹下怎麼轉寄到自己的郵箱(此方法未經本人親自驗證 來源於網路,有喜歡折騰的請自己研究,成功了 可以跟帖分享經驗)
方法一:
修改此檔案
/etc/log.d/logwatch.conf
添加MailTo = root,[email protected]
方法二
/etc/aliases
添加root: [email protected]
注意:好像如果設定成和主機同域的,好像郵件就發不成,比如本機郵件就是moper.me,那麼發這個就沒法發,相應的發其他郵箱就可以成功。
關於“/etc/aliases”:
當sendmail收到一個要送給xxx的信時,它會依據/etc/aliases檔案中的內容送給另一個使用者。這個功能可以創造一個只有在信件 系統內才有效使用者。例如mailing list就會用到這個功能,在 mailing list 中,我們可能會創造一個叫 redlinux@link.ece.uci.edu的 mailinglist,但實際上並沒有一個叫redlinux的使用者。實際 aliases檔的內容是將送給這個使用者的信都收給mailing list處理程式負責分送的工作。
/etc/aliases是一個文字文件,而sendmail需要一個二進位格式的 /etc/aliases.db。newaliases的功能傳是將/etc/aliases轉換成一個sendmail所能瞭解的db檔案:
[[email protected] ~]# newaliases
//somebody除root外的其它用的郵件可以通過在使用者/home/下建立一個.forward檔案實現轉寄:
other1
other2
檔案許可權設為600,作用一樣,但.forward可以由使用者自我維護,而aliases則只有治理員才能修改。
設定~/.forward檔案加入轉寄目的即可
網上很多教程是你抄我,我抄你,根本就沒有驗證過的,比如有種方法是修改”/usr/share/logwatch/default.conf/logwatch.conf“設定檔,在centos6中根本就沒有這個檔案,至於以前的版本有沒有就不知道了。
還有很多教程,只有“echo "unset MAILCHECK" >> /etc/profile”,而沒有“source /etc/profile”,這也是不對的。
解決Centos關閉You have new mail in /var/spool/mail/root提示(轉)