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

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

作者: IT_man    時間: 2016-4-15 17:22
標題: linux 下 mail 指令大全
寄信:
9 ?  v5 u6 J; a& k- @, {. \" C參數說明:( `. L  u, W( m) P# m
-s 設定這封信的主旨,當主旨內容留有空白字元時,需將其用引號包住。\\例 :-s “test mail”# b) X# }+ C7 i7 ^) r7 `5 b) W! I
-a 想在信件中夾帶附加檔案,用這個參數就對了。
  b  b& Q' }: O例 :-a ~/testfile2 F, d2 s6 L7 |  N1 T' ?! w
-c 指定信件的副本。" L1 S. O; G% ^; D) ^
例 :-c barry,vivian2 \0 d& h* C. K( }) j  E" r- u
-b 指定信件的密件副本 ( 將收件者的郵件地址隱藏 )。. m2 s! o8 m; \& H
例 :-b mary,tina@msa.hinet.net
5 B. z9 z% f. C/ D4 l-q 以指定的檔案做為信件的起始內容。
/ B; ~/ s) }2 b2 W例: -q ~/mailfile& l( R4 P/ p* f" R  {/ I& B! C
-r 設定 mail from 的郵件地址。" u7 v' H8 h0 |4 E2 h- t
例:-r admin@paching.idv.tw# K% T: \+ g  ]5 z7 Q$ D
-u 讀取使用者的 mailbox。
! K! i. P6 M5 U例 :-u barry
9 j# f4 v$ R6 Z# T# K  x* f6 p7 d1 i-f 讀取使用者的 mailbox。
8 V* F, {/ a2 s+ c1 C) b例 :-f /var/spool/mail/barry8 e% c2 p# m7 A3 h% N
3 u4 T  R( I& ?

# @9 b7 h$ q9 A% J2 S# i& w: P' Y/ R% t# h2 Q  X% @# b
將content.txt文件的內容寄出(非附件寄出)
/ G8 Z% f! H6 R# _# cat content.txt ||mail -s "mail test" test@gmail.com
$ z4 D# ]. o  r8 Z1 ?* Z或者$ a* D7 Z* B* X8 Q9 X
3 E7 C& F& B. d" k3 j4 s
# mail -s "This is a test" aa@aa.com < content.txt
' {% h0 K- N# ?1 L7 [9 ]( p編輯模式寄出:
  Q9 Q' J, |  E3 k  @& |# mail kevin@av4u.info. O1 i  X! R$ P2 w$ {7 g( C% ^
Subject: This is a test mail+ L# s; y$ Z! `+ l
There are writing area!
& I; D" T( ^$ Q4 M4 k- V; A3 YYou can't use the Up/Down button in this form...
+ Z, o) k8 J" ]2 c5 _9 Y! _1 k( lyou can finish with "."
: @8 ?8 x+ t( \2 w" W.  <==這個『.』就是結束符號!要正常離開編輯畫面就是 . !
) V- G9 l; k0 m" H, K) D% f7 G4 T' d7 G
mail/mailx命令使用外部SMTP來發送郵件: @  h! k+ B% V0 l4 `  v2 e7 F
/bin/mail會默認使用本地sendmail發送郵件,這樣本地的機器必須安裝和啟動Sendmail服務,配置非常麻煩,而且會帶來不必要的資源佔用。而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的SMTP服務器發送郵件的目的:, v/ V0 c$ H/ W: p. R- ]
修改/etc/mail.rc 加入底下設定:
3 M0 ~% M) R1 G* P
  1. set from=fromuser@domain.com smtp=domain.com: v+ x  r/ p7 v' [  p
  2. set smtp-auth-user=username smtp-auth-password=password& t6 o8 a8 p- Y. r/ ?  Z( y: \
  3. set smtp-auth=login
複製代碼
說明:
( w" X  h) X% B0 `4 {7 Jfrom是發送的郵件地址7 ]6 E7 ^9 F+ U; r& M: P" l
smtp是發生的外部smtp服務器的地址3 S( i7 i4 I1 W6 @$ f( Z
smtp-auth-user是外部smtp服務器認證的用戶名
2 [7 h- F  [8 R# g1 vsmtp-auth-password是外部smtp服務器認證的用戶密碼( m1 i3 ?4 C8 s2 ]7 U6 g* Z  {
smtp-auth是郵件認證的方式6 E" i1 G) _6 Q9 K) O- E# G( D2 O
配置成功後,就可以使用了,可以發送一封郵件測試一下:
0 ?4 B+ q) r* ]5 B( a4 K# mail -s "test" user@domain.com < content.txt
2 V$ P% Y' u$ J7 [  W在linux下利用Google的SMTP來發郵件
* J# }# h5 W4 K+ ?7 d/ P$ `6 w
' b$ W- W- |' O( x$ v5 j在维護伺服器的時候,經常需要建立一個伺服器錯誤抱錯系统,而郵件是一個很好的工具。
, Z" Z5 @7 c$ [3 j) c在linux下,一般是透過mail來寫郵件,而傳遞默認使用sendmail服務。這樣雖然能向外界發送郵件,但郵件不能回復,並且sendmail服務要求發送方是系统可試别用户,配置比較麻煩。下面是透過使用Google的SMTP伺服器來發送郵件,不但减輕負担,而且可以使用類似的公共郵件地址來作為發送方。
/ ]) q$ N& `: M" w
* u, B1 Z9 f1 q+ O
+ d& |4 r+ v; Q5 L0 I$ @
! g. Z  ?: i9 w$ G
下面所有步骤,全部基於CentOS 5.11,其他發行版本類似。* u) L5 x+ k' f7 I9 P
1.安装mail6 l+ r$ [  v3 N3 m' h* R
yum install mailx -y: N; L6 U2 u- [! D' n
7 z) c% L* f" s
2.如果想直接使用sendmail來發送郵件,需要啟動sendmail服務,或者saslauthd服務
& @8 I# m5 i* ]( A' o' Q0 j+ V% ]% l
3.如果想利用外部SMTP來送郵件,需编輯/etc/mail.rc,加入以下内容
7 f; T1 M" m6 M  P+ |" yset from=demo@qq.com1 |- q' }' X0 V7 C9 [  b# X
set smtp=smtp.qq.com  : E1 F, |# ?, ]% K! ]5 ?( O3 m
set smtp-auth-user=demo , F3 s1 S( }. C/ Z3 F. j; e
set smtp-auth-password=demopass # G6 u8 N+ z) _/ c) O, m$ }+ r: C
set smtp-auth=login
- ?' Q8 E/ ^# \& k但是這個設置只適合那些支持非ssl鏈接的SMTP伺服器,但對於想Google,强制使用SSL加密鏈接的,需根據第4步配置mail2 ~! ^8 ~4 j. B# P: E
8 V' A  V1 k8 X8 `
4.利用Google的SMTP發送郵件# B$ `" T/ E/ C5 j( N* A1 g
在裝有 Firefox 的 Linux 主機, 將 ~/.mozilla/firefox/xxxxxxxx.default/ 的 cert*.db 與 key*.db 複製到 ~/.mozilla_nss_shared_db/ o: l9 q" U* ]; W) D- M/ [
编輯/etc/mail.rc,加入以下内容
9 R6 W. p! w+ l( v3 I/ gset ssl-verify=ignore
) F% F% |7 F, k3 aset nss-config-dir=~/.mozilla_nss_shared_db- P8 Z) G, C. x% c! a0 Q
set from="myaccount@gmail.com(myname)"
5 v2 L. a2 \1 P- G3 P, u$ Z' nset smtp=smtps://smtp.gmail.com:465
  `" e; K0 p; u& a8 ^! hset smtp-auth=login
% V5 k$ F+ L& C. A9 _, {3 g$ L; \set smtp-auth-user=myaccount5 [3 r; W' B; I3 K% b
set smtp-auth-password=mysecret
9 e  C" d3 n: Y
% o* g0 Q; w/ a如果想添加多個帳號,那就這樣寫配置文件3 U2 f" \) ]2 q- c( Y! s( @8 _
account starttls {
. D/ H2 u' s4 \" q/ Mset smtp-use-starttls
# J/ [0 i3 l% K7 ~2 \set ssl-verify=ignore
  T5 U# m3 O, J9 E& p: dset nss-config-dir=~/.mozilla_nss_shared_db1 \# o" s+ V& t
set from="myaccount@my.smtp.host(myname)"2 E' p3 I& C/ I
set smtp=smtp://my.smtp.host:25# M2 X% U8 [! S8 z0 K3 c1 W9 M% s
set smtp-auth=login, c  L# B/ G3 p- b9 m) K4 `! {
set smtp-auth-user=myaccount9 q5 z: h0 J' i
set smtp-auth-password=mysecret( m4 Z* f6 E/ j" q! w& {! e
}
3 [! G$ x: {7 W8 K+ r( A8 uaccount gmail {, K" A: G  r" y) J2 H. s; H7 f$ j
set ssl-verify=ignore
3 j( ?: y: G) oset nss-config-dir=~/.mozilla_nss_shared_db) g/ s5 e2 q. }6 R' I, I
set from="myaccount@gmail.com(myname)"1 {, w2 m/ _+ T+ H
set smtp=smtps://smtp.gmail.com:4653 r* {5 p1 L2 V' j  T& m; g
set smtp-auth=login
# }' _/ E' `0 ]% P8 V5 B2 Pset smtp-auth-user=myaccount. O. A+ N" [0 ]: Z, q" ^3 J
set smtp-auth-password=mysecret5 v4 t0 \+ U# v8 w6 a
}, c5 q' y. @/ U& m8 V' E3 ^" o
不過在發送郵件的時候,需要用-A参數指定發送帳號,比如-A gmail
) ?* b: q8 r# {6 ?1 S% {
但經我測試好像沒作用
) ]+ h% {% C; [1 X2 c2 h讀信:#mail
; b$ i" K! i: X- ~9 q, N- O4 L; O* K假如讀信時空間已滿,可以查看 /var/spool/mail之下哪一個使用者檔案最大,例如 root(一般也是root最大),將它清空:. c! g5 x0 F4 b: Z
#> /var/spool/mail/root
: N, y2 |5 i, g. m- n3 D; ]在執行 mail 就可正常讀信了
. E' z0 h( c: |7 W; D. N
6 V: ^7 h6 U- w: m+ k2 E

. G0 N: D; d  k) f( z! i請參考:- Y& R8 `2 g9 B) n  K
http://linux.vbird.org/linux_server/0380mail.php#mua_mail  X- e( _+ R6 g5 ^+ ?

; }" u/ D4 U8 @4 V- n




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