52AV手機A片王|52AV.ONE

標題: linux 下 mail 指令大全 [打印本頁]

作者: IT_man    時間: 2016-4-15 17:22
標題: linux 下 mail 指令大全
寄信:
" L# d2 B: G- k% ^$ j參數說明:
, V: m+ `8 ~+ K3 p# d, f-s 設定這封信的主旨,當主旨內容留有空白字元時,需將其用引號包住。\\例 :-s “test mail”
* y- v, Y! ^$ _7 m9 Q( M6 U% I-a 想在信件中夾帶附加檔案,用這個參數就對了。$ ^: p! Y2 t; f
例 :-a ~/testfile  j. L1 p2 Z1 C$ c4 N8 Q& D2 n
-c 指定信件的副本。
) R. b- l! R: @0 W" T/ M例 :-c barry,vivian
& l3 b8 C9 p, F8 V$ {- c-b 指定信件的密件副本 ( 將收件者的郵件地址隱藏 )。
: E5 p* E$ N! I% E/ n  G4 c例 :-b mary,tina@msa.hinet.net
, f; S7 R* B9 g( `& [* j1 d8 m-q 以指定的檔案做為信件的起始內容。
& h& p0 U( J0 [/ X4 q例: -q ~/mailfile
; _1 q9 z  }5 S-r 設定 mail from 的郵件地址。) `% _& q( [4 K4 V  |
例:-r admin@paching.idv.tw
4 {& @) e" t2 l/ U' _) U' g# V-u 讀取使用者的 mailbox。
& j9 h. p0 K$ M, k例 :-u barry4 n1 ~# J5 n! k6 J1 n( {, F/ N6 C5 R
-f 讀取使用者的 mailbox。
% H+ k  r' o; J0 f例 :-f /var/spool/mail/barry
6 B! F. G$ Z' q# R' L% z  l( ~: ~* a

6 y( \) _/ o6 g! q) N0 u5 T$ D
# `' N8 I& o3 p: B將content.txt文件的內容寄出(非附件寄出)- \2 N. z+ _' s1 q6 k, Z) L, v
# cat content.txt ||mail -s "mail test" test@gmail.com$ {- J; H9 w/ D8 V, Z$ p0 K5 i. ~5 }
或者2 Z$ z$ q& B3 P# a- F4 D7 j+ \
) d: k* e) H$ O" o0 K0 X& ~/ ~
# mail -s "This is a test" aa@aa.com < content.txt
+ k5 @/ x" B% f: j- f5 L9 [" D! v7 h1 S編輯模式寄出:
" N* f* [8 V4 W% n' ?2 y- o( K# mail kevin@av4u.info* p9 X& t# H2 S' l+ _# ~) F1 F' T
Subject: This is a test mail3 z+ S  ?- r8 ~5 Y- J9 P5 v7 }( S
There are writing area!2 l5 V! }+ @9 `. z1 w$ z
You can't use the Up/Down button in this form...4 E$ ?& P6 x& i
you can finish with "."
. b9 z2 Z; z8 C/ f: j: y( _4 w9 U, j9 y( ~.  <==這個『.』就是結束符號!要正常離開編輯畫面就是 . !
7 Y- N9 Q4 D* x) k, T) d
) h0 s9 Q- W) z5 q) mmail/mailx命令使用外部SMTP來發送郵件
* h- h$ x1 w! |" m# M- i$ m/bin/mail會默認使用本地sendmail發送郵件,這樣本地的機器必須安裝和啟動Sendmail服務,配置非常麻煩,而且會帶來不必要的資源佔用。而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的SMTP服務器發送郵件的目的:  L5 R3 N' `3 |5 _
修改/etc/mail.rc 加入底下設定:7 {) S$ Z: f! g& J7 m; c( M: b
  1. set from=fromuser@domain.com smtp=domain.com  X# L5 }* m" |! X" O: [
  2. set smtp-auth-user=username smtp-auth-password=password4 S1 z/ m0 d- w/ ^
  3. set smtp-auth=login
複製代碼
說明:& z# P) @2 r* P/ m- N! _
from是發送的郵件地址5 i4 P# A! k: M: l
smtp是發生的外部smtp服務器的地址& Z7 t# G) ], ?# I- ~3 |
smtp-auth-user是外部smtp服務器認證的用戶名6 N# t2 c, `2 P
smtp-auth-password是外部smtp服務器認證的用戶密碼
7 t+ L& Y; R4 d- V% u+ _# \; l( wsmtp-auth是郵件認證的方式
5 w- R% l& {( h/ x5 y配置成功後,就可以使用了,可以發送一封郵件測試一下:
) J' ]4 r3 M2 ]2 z" p& x7 X& i" \# mail -s "test" user@domain.com < content.txt. ^. _4 l4 V. I1 b* u% D3 d
在linux下利用Google的SMTP來發郵件
  w5 z, D8 u& X. G3 ^; S( W# G, ~0 I8 h
在维護伺服器的時候,經常需要建立一個伺服器錯誤抱錯系统,而郵件是一個很好的工具。  B9 C4 ~) V) x. A- m# y6 b( n8 T
在linux下,一般是透過mail來寫郵件,而傳遞默認使用sendmail服務。這樣雖然能向外界發送郵件,但郵件不能回復,並且sendmail服務要求發送方是系统可試别用户,配置比較麻煩。下面是透過使用Google的SMTP伺服器來發送郵件,不但减輕負担,而且可以使用類似的公共郵件地址來作為發送方。/ I( t5 e, y! W+ S3 q% ~/ n

- ]0 e, x. q6 `. J
; U% P" O  O/ @& U0 K8 W* Y3 d

( }5 a, l+ |0 N% I8 l, q下面所有步骤,全部基於CentOS 5.11,其他發行版本類似。8 _# {* j7 Y9 v( F) ?) t/ ~
1.安装mail
# l' n7 n* T. N5 k" Dyum install mailx -y
8 b2 W- h+ j$ }6 y: G0 [) n6 [" F
) R# {5 e( k& e8 C, w1 L2.如果想直接使用sendmail來發送郵件,需要啟動sendmail服務,或者saslauthd服務
. d7 S9 O6 S: h9 ]. W  L
; n6 Z  ~0 ^7 }" u9 t1 h3.如果想利用外部SMTP來送郵件,需编輯/etc/mail.rc,加入以下内容1 i  Z5 [3 n+ a7 _, e9 u$ s
set from=demo@qq.com4 d  \/ n% \3 s
set smtp=smtp.qq.com  " [4 P" [6 {- J: x6 s1 U
set smtp-auth-user=demo & t1 G# {7 _% q+ I) E
set smtp-auth-password=demopass - \7 X$ O% g/ |7 v
set smtp-auth=login0 }9 t" w( |! k7 [+ w
但是這個設置只適合那些支持非ssl鏈接的SMTP伺服器,但對於想Google,强制使用SSL加密鏈接的,需根據第4步配置mail
. q" k6 ?/ S4 g) F9 V6 I
: N- O) P$ P& A& q# d! c8 N0 \! N4.利用Google的SMTP發送郵件0 V" @, i- d6 n- O1 H2 B
在裝有 Firefox 的 Linux 主機, 將 ~/.mozilla/firefox/xxxxxxxx.default/ 的 cert*.db 與 key*.db 複製到 ~/.mozilla_nss_shared_db
7 Y% ^. g3 z9 q3 g$ n4 M3 b编輯/etc/mail.rc,加入以下内容; S% ]: T, b) c% `' I& Y8 s% Z
set ssl-verify=ignore' a& R& V9 B  i' j
set nss-config-dir=~/.mozilla_nss_shared_db. ~: ?) r7 g# R( f! u  D+ c
set from="myaccount@gmail.com(myname)"7 r! Z  d, E4 w0 g* G* T1 q) E  t
set smtp=smtps://smtp.gmail.com:465/ ^4 H* r# A5 F' K5 i; d
set smtp-auth=login
6 o. Y) }- m7 p3 y  a7 jset smtp-auth-user=myaccount6 w1 t7 Q, ^& |- n  l1 W1 k
set smtp-auth-password=mysecret8 B; f7 F. u5 v* N1 L
" |) h0 @; A) g5 W( ?
如果想添加多個帳號,那就這樣寫配置文件! M8 c  _% r6 b4 s
account starttls {
. p9 X" A  B) e5 Fset smtp-use-starttls" M( K( I! A! ^+ w$ w
set ssl-verify=ignore! ]  F. Z% g" [) [
set nss-config-dir=~/.mozilla_nss_shared_db, M5 a. Z; I& U- Z! d/ z
set from="myaccount@my.smtp.host(myname)"1 F7 d. X. o* ~  D* M+ r
set smtp=smtp://my.smtp.host:25
5 q% M) P* h& ~' V2 R7 uset smtp-auth=login9 T' L8 ?9 w& n/ p& ^
set smtp-auth-user=myaccount& h. ]9 d; p. M) t/ K+ W6 @$ z2 v
set smtp-auth-password=mysecret
% W0 f+ ?  s6 R- C/ `/ v( Y}; B. {9 n- g% \
account gmail {5 y' E! p: ~, b$ M! ]1 c
set ssl-verify=ignore- T) F& W' _  R: X" F
set nss-config-dir=~/.mozilla_nss_shared_db
/ L% D/ t( \* Z7 Q* b' ]' ^set from="myaccount@gmail.com(myname)"
; I0 }9 Q$ s" \' S% @set smtp=smtps://smtp.gmail.com:465% ]0 Z8 _& d3 u; B4 _% k! e
set smtp-auth=login
$ ?$ W3 T  K& B- C4 `set smtp-auth-user=myaccount
5 ^. w' C/ K" Y7 ^; p8 F3 fset smtp-auth-password=mysecret0 |/ L5 h1 {: b+ y, q  T% i
}# i) X/ b3 N2 K
不過在發送郵件的時候,需要用-A参數指定發送帳號,比如-A gmail4 H: r7 D) S6 z1 C. t& k- r
但經我測試好像沒作用2 u( Y0 F* y6 C) ^1 p
讀信:#mail( x$ s) `# B8 ^1 ~
假如讀信時空間已滿,可以查看 /var/spool/mail之下哪一個使用者檔案最大,例如 root(一般也是root最大),將它清空:
0 F! G3 {" [+ N3 ?5 T#> /var/spool/mail/root8 M. f" M" [8 T5 k% X
在執行 mail 就可正常讀信了0 ?; {/ x8 I) t2 Y( Q& z

0 i/ {  d7 H+ D: F4 }

" D$ x* A0 p; v$ L& c! V) d請參考:
5 B" R) @0 P( z# _http://linux.vbird.org/linux_server/0380mail.php#mua_mail8 w8 M% N9 z" N

- e6 X  ?# f" ]+ K5 H0 T1 {9 K




歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/) Powered by Discuz! X3.2