環境
本機安裝sendmail了, 但是沒有啟動. 其他機器上有mail server, 并且已經把本機加到open relay列表中了, 可以通過該mail server發送郵件。做法如下:1. 安裝 sendmail-cf 軟件包2. 修改 /etc/mail/submit.mc
1 FEATURE(`msp'', `[127.0.0.1]'')dnl2 修改為3 FEATURE(`msp'', `[Your mail server ip]'')dnl
3. 在 /etc/mail/ 目錄下執行 make測試
mail -s ''hello world!'' user1@chxbd.com或mail -s ''hello world!'' user1@chxbd.com < "包含郵件文本內容的文件"
附件1. 安裝軟件包 sharutils (使用其中的uuencode工具)2. 把要發送的若干附件通過uuencode處理后整合到一個文件中(如attach.tmp)3. 如果同時發送文本內容,把文本內容直接追加到附件文件中。 如果文本與附件交叉追加,只有第一次追加的以郵件正文顯示,后續追加的會以txt文件的形式放到附件里。4. 以mail -s ''hello world!'' user1@chxbd.com < attach.tmp 的形式發送郵件在郵件客戶端顯示時會自動把郵件正文和附件區分開發件人默認的發件人是當前登錄用戶的名稱,如果未設置hostname,將在客戶端顯示為 user1@localhost.localdomain而被標記為垃圾郵件。解決:1) 設置 hostname 如果 hostname 為 sina.com,則發件人將顯示為 user1@sina.com2) 修改 /etc/hosts 在 127.0.0.1 對應的條目中(ipv4),在最前面(localhost.localdomain和localhost前,其中localhost.localdomain必須存在)添加主機名 如: #127.0.0.1 localhost.localdomain localhost 127.0.0.1 126.com localhost.localdomain localhost發件人將顯示為 user1@126.com如果 hostname 和 /etc/hosts 文件同時設置,而hostname又未在/etc/hosts中設置,則hostname 優先;如果把自定義的域名和hostname同時設置在 /etc/hosts 中,則使用最前面的那個,如: 127.0.0.1 126.com node1.test.com localhost.localdomain localhost126.com是發件人要顯示的域名,node1.test.com是 hostname 命令得到的主機名。如此看來,發件人的域名與 hostname 命令得到的主機名有關,如果 hostname 命令得到的主機名在 /etc/hosts 中沒有對應條目,則使用 hostname 得到的主機名,如果設置在了 /etc/hosts 中,則采用對應條目中的第一個主機名/域名。
新聞熱點
疑難解答