1. 程式人生 > >解決Centos關閉You have new mail in /var/spool/mail/root提示

解決Centos關閉You have new mail in /var/spool/mail/root提示

昨天搬到阿里雲了。

裝的系統是Centos 6.9的加固版

今天檢視記憶體的時候 出現一天奇怪的提示

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/profile;

source /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

除root外的其它用的郵件可以通過在使用者/home/下建立一個.forward檔案實現轉發:

 程式碼如下 複製程式碼
//somebody
other1
other2

檔案許可權設為600,作用一樣,但.forward可以由使用者自行維護,而aliases則只有治理員才能修改。

設定~/.forward檔案加入轉寄目的即可

網上很多教程是你抄我,我抄你,根本就沒有驗證過的,比如有種方法是修改”/usr/share/logwatch/default.conf/logwatch.conf“配置檔案,在centos6中根本就沒有這個檔案,至於以前的版本有沒有就不知道了。

還有很多教程,只有“echo "unset MAILCHECK" >> /etc/profile”,而沒有“source /etc/profile”,這也是不對的。

 

報錯資訊如下

 

Error: ossl_pkey_ec.c:In functin 'ossl_ec_group_initialize': ossl_pkey_ec.c:816:error: 'EC_GROUP_new_curve_GF2m' undeclard (first use in this function) ossl_pkey_ec.c:816:error: (Each undeclard indentifier is reported only once ossl_pkey_ec.c:816 error:for each function it appearts in.)

 

產生問題的原因是:centos6.4的openssl的配置變更取消了對EC_GROUP_new_curve_GF2m的支援,所以出現該錯誤.

 


報錯的檔案為:ossl_pkey_ec.c

 

用find命令找到ossl_pkey_ec.c檔案路徑

 

find / -name ossl_pkey_ec.c 
編輯檔案ossl_pkey_ec.c,如下圖所示,在相應位置新增紅框內的程式碼即可
 

 

解決centos6.4編譯ruby1.9.3報錯:ossl_pkey_ec.c

 

 

 

解決centos6.4編譯ruby1.9.3報錯:ossl_pkey_ec.c

 

儲存退出後,重新make

 

報錯如下:
 
 

 程式碼如下 複製程式碼
Could not init font path element catalogue:/etc/X11/fontpath.d, removing from list!

其日誌內容如下:
 

 程式碼如下 複製程式碼
 
[    22.264] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[    22.264] (II) AIGLX: enabled GLX_INTEL_swap_event
[    22.264] (II) AIGLX: enabled GLX_ARB_create_context
[    22.264] (II) AIGLX: enabled GLX_ARB_create_context_profile
[    22.264] (II) AIGLX: enabled GLX_EXT_create_context_es2_profile
[    22.264] (II) AIGLX: enabled GLX_SGI_swap_control and
GLX_MESA_swap_control
[    22.264] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer
objects www.111cn.net
[    22.264] (II) AIGLX: Loaded and initialized r600
[    22.264] (II) GLX: Initialized DRI2 GL provider for screen 0
[    22.269] (II) RADEON(0): Setting screen physical size to 846 x 238
[    22.269] [dix] Could not init font path element
catalogue:/etc/X11/fontpath.d, removing from list!
[    22.269] [dix] Could not init font path element built-ins, removing
from list!
[    22.269]
Fatal server error:
[    22.269] could not open default font 'fixed'
[    22.269] (EE)
Please consult the CentOS support
         at http://wiki.centos.org/Documentation
for help.
[    22.269] (EE) Please also check the log file at
"/var/log/Xorg.1.log" for additional information.
[    22.269] (EE)
[    22.269] (II) AIGLX: Suspending AIGLX clients for VT switch
[    22.276] Server terminated with error (1). Closing log file.

解決辦法:
 

 程式碼如下 複製程式碼
yum install libXfont