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

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

作者: IT_man    時間: 2016-4-15 17:22
標題: linux 下 mail 指令大全
寄信:, Z) U" j- l. c/ W% o4 M
參數說明:
" l$ G6 x, {) q0 P-s 設定這封信的主旨,當主旨內容留有空白字元時,需將其用引號包住。\\例 :-s “test mail”5 R$ h, M7 v, U
-a 想在信件中夾帶附加檔案,用這個參數就對了。
5 I4 j- e) j2 G) u例 :-a ~/testfile
1 U+ P* x8 n: c( C, P' Q( E-c 指定信件的副本。
/ x( W4 `/ x- a6 V% @3 d0 M例 :-c barry,vivian# m; [. I8 p+ _5 }) ^8 p
-b 指定信件的密件副本 ( 將收件者的郵件地址隱藏 )。
% ?$ ^9 U& E5 d6 z( _! V" A+ U例 :-b mary,[email protected], @6 w* x, F- e9 E/ q4 Z9 Y; c
-q 以指定的檔案做為信件的起始內容。, I5 o. {- A( D& t
例: -q ~/mailfile
  [/ `5 n  S2 n; S3 h1 z-r 設定 mail from 的郵件地址。
0 @! R: a( y3 W( h例:-r [email protected]+ ]+ e+ N2 _( U$ c+ m
-u 讀取使用者的 mailbox。
; l0 E: G+ e& G: y  j% O+ a例 :-u barry
8 x* f8 U) @5 G/ a2 R-f 讀取使用者的 mailbox。
. W; z% H& J/ _: H& ~2 Q例 :-f /var/spool/mail/barry
  }2 a# Q  Y9 n6 k! ]/ L8 P
- C) a4 [- N# P! O- I7 J" r6 v
; t( b- R) W: _% e) x+ h

8 `8 S' `' t9 ^, E將content.txt文件的內容寄出(非附件寄出)! w4 `- V  H0 y$ O  O' Y$ w+ b: U6 E
# cat content.txt ||mail -s "mail test" [email protected]4 |1 _1 B8 H* \3 ^( U# ]% P
或者- Q/ J- q4 F+ m9 b& T
& @! U: ^. M1 |/ I! Z+ L
# mail -s "This is a test" [email protected] < content.txt0 {. N9 z2 ], K; m. b' \
編輯模式寄出:
/ t9 O' F3 ]" d( c1 z# mail [email protected]
+ Z) x) I, }; {/ {2 }6 M5 vSubject: This is a test mail% _. Y0 L; O& U# y% \, Y+ O
There are writing area!! H1 e- j' P8 g4 J& O- i- l
You can't use the Up/Down button in this form...: r+ ?8 h# X2 B4 R5 n  z" x
you can finish with "."$ f' m  [* ]1 o, S$ a0 ?' G. Y( F
.  <==這個『.』就是結束符號!要正常離開編輯畫面就是 . !
5 E, |7 t5 k* Q1 p
/ J) \: D* z9 tmail/mailx命令使用外部SMTP來發送郵件
+ x! s# ]" Q% z4 F- \" X" S# J8 P( V/bin/mail會默認使用本地sendmail發送郵件,這樣本地的機器必須安裝和啟動Sendmail服務,配置非常麻煩,而且會帶來不必要的資源佔用。而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的SMTP服務器發送郵件的目的:% u4 ~8 D* x! }" x, t' Q
修改/etc/mail.rc 加入底下設定:% C8 `* s# x- {# Z2 s6 X
  1. set [email protected] smtp=domain.com
    4 m1 a. {. D. D8 a0 G) }& U7 `
  2. set smtp-auth-user=username smtp-auth-password=password9 x. ?" F6 u7 {! `# N
  3. set smtp-auth=login
複製代碼
說明:' {  L& i! J8 ^# Z0 ?& |
from是發送的郵件地址7 Z3 _* k+ a8 F: m
smtp是發生的外部smtp服務器的地址* P( }5 Y/ B" o6 e' I
smtp-auth-user是外部smtp服務器認證的用戶名  T& }. @* e! i; ~4 U* ~
smtp-auth-password是外部smtp服務器認證的用戶密碼
. ^' j! J' f, l7 E  }/ k5 k: @smtp-auth是郵件認證的方式; M9 q, H$ p5 f2 k$ [; v
配置成功後,就可以使用了,可以發送一封郵件測試一下:. s, c) t5 u& u
# mail -s "test" [email protected] < content.txt
  w! N; Q/ `' E/ L) t- H在linux下利用Google的SMTP來發郵件; I: i; p: t8 t% n! K& K

2 H8 o; V* H* ^: R! q" ]在维護伺服器的時候,經常需要建立一個伺服器錯誤抱錯系统,而郵件是一個很好的工具。' K' R2 v. j) B/ R. j) x* l
在linux下,一般是透過mail來寫郵件,而傳遞默認使用sendmail服務。這樣雖然能向外界發送郵件,但郵件不能回復,並且sendmail服務要求發送方是系统可試别用户,配置比較麻煩。下面是透過使用Google的SMTP伺服器來發送郵件,不但减輕負担,而且可以使用類似的公共郵件地址來作為發送方。. S! Y7 o# b. V. m, b( }) O

% W* e# J* ?. ]  w$ K- s  q2 }8 j& H  M) w0 Q( {7 D
8 _6 d3 y3 ~1 R5 |' T2 A% s
下面所有步骤,全部基於CentOS 5.11,其他發行版本類似。6 W# _- [( E; [1 r8 A- \! S: F& B
1.安装mail3 l$ J! q* n3 k8 Y/ n
yum install mailx -y
' ]0 b: @, S/ I6 ]7 Z4 |. g! n1 ]0 O& a' r1 }0 T
2.如果想直接使用sendmail來發送郵件,需要啟動sendmail服務,或者saslauthd服務
% r9 X) Y  e- l  J6 ~: t9 R$ W  ^; c' \- o& h5 e- U! }) S4 ]  g
3.如果想利用外部SMTP來送郵件,需编輯/etc/mail.rc,加入以下内容
- l8 K5 n5 G- c( Sset [email protected]
& ?! M! P6 N8 L3 T" |& K: F5 W# s* o% Yset smtp=smtp.qq.com  + ~6 S7 j0 v: U4 \, x
set smtp-auth-user=demo 1 H! E* U; l4 |- I( Q+ V
set smtp-auth-password=demopass 6 r% ]+ h3 b- u! K3 `& e
set smtp-auth=login. i( b2 A& f. [  L) A2 n
但是這個設置只適合那些支持非ssl鏈接的SMTP伺服器,但對於想Google,强制使用SSL加密鏈接的,需根據第4步配置mail
% a$ r7 ?' s9 \) @, @8 @. D. d: J% U6 K7 h% ]* |# b0 A, H
4.利用Google的SMTP發送郵件
1 W4 z. `. T0 E" G# c. A  f0 n- _在裝有 Firefox 的 Linux 主機, 將 ~/.mozilla/firefox/xxxxxxxx.default/ 的 cert*.db 與 key*.db 複製到 ~/.mozilla_nss_shared_db# `- b' V2 w& ?& C
编輯/etc/mail.rc,加入以下内容
4 M8 T: X1 ]3 }- c! eset ssl-verify=ignore
1 u" y, _! p3 \) a8 d& P! Yset nss-config-dir=~/.mozilla_nss_shared_db: T2 B: d4 t) K0 r, C2 D8 c( m6 \
set from="[email protected](myname)". T  I' x- V3 L/ t+ @" X0 F/ q" m
set smtp=smtps://smtp.gmail.com:4655 @+ J9 G0 y8 r  m
set smtp-auth=login) O) e) I" H" D, ?2 X
set smtp-auth-user=myaccount7 [* }  ?$ q. D4 o7 A! \# U# L
set smtp-auth-password=mysecret1 g0 T8 w; M6 e- P% g+ Z9 t

0 q8 ~- f% I3 K, M2 O0 U如果想添加多個帳號,那就這樣寫配置文件5 E( I1 i( q1 e/ O7 Q5 o
account starttls {
# ]; D/ E% i- O0 N: jset smtp-use-starttls
, M* Q) h8 X( [$ z7 F5 @set ssl-verify=ignore' t8 F0 e. Y8 B
set nss-config-dir=~/.mozilla_nss_shared_db
8 f& \$ e; k  }0 Iset from="[email protected](myname)"
. x2 ?- J: |) M5 W- c3 \7 N5 tset smtp=smtp://my.smtp.host:25
1 e9 U4 C; y9 Y$ ]) Hset smtp-auth=login
& H' i9 j6 N6 U3 E) b% y# y' T$ [set smtp-auth-user=myaccount
5 w6 M( ]8 ^: Oset smtp-auth-password=mysecret
* E) m2 o$ f; R}) l+ W' a0 g% b1 v7 \' C7 m& f: m
account gmail {$ A  k9 {. l5 [( c; R
set ssl-verify=ignore8 z% v" h, |# g! `4 b
set nss-config-dir=~/.mozilla_nss_shared_db
5 f. [! p6 M. Qset from="[email protected](myname)". B) q6 a8 K% i- }  l
set smtp=smtps://smtp.gmail.com:465
% s2 p3 _- h0 B- L( H$ lset smtp-auth=login
- k: n+ B. X& k' n2 R0 Dset smtp-auth-user=myaccount
9 e: q- N3 P/ r8 [6 j) \; Cset smtp-auth-password=mysecret
0 |) Z& V3 u% y8 G* s}
! ]) L+ g; W* ?+ d# S) G0 D/ t不過在發送郵件的時候,需要用-A参數指定發送帳號,比如-A gmail) H& y& w0 y* `
但經我測試好像沒作用
; F0 ?. v" Z% p/ P$ j0 G6 ?讀信:#mail
0 n/ F, r6 l$ \8 I7 |- H- ]7 U# ]假如讀信時空間已滿,可以查看 /var/spool/mail之下哪一個使用者檔案最大,例如 root(一般也是root最大),將它清空:
( P- I/ ?0 k% M#> /var/spool/mail/root
: ?- a) z6 z: v' g- _3 V0 b7 T在執行 mail 就可正常讀信了9 H; J$ Z; H$ [) v. x, _& ?+ F
# V) \5 c* G$ f, t

! L. `: X' J# w% [4 J' c請參考:7 V) j) g1 D9 U6 Q+ n. N. t  \7 V
http://linux.vbird.org/linux_server/0380mail.php#mua_mail. v0 e: B* R- R! [" q8 Z% |; c
0 J, O  h; _" J  r3 h8 k( g





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