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

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

作者: IT_man    時間: 2016-4-15 17:22
標題: linux 下 mail 指令大全
寄信:
3 j; z2 ~4 ^) a8 b9 \# s參數說明:
: W% }# l. l! t9 u0 x6 `7 w- C' W-s 設定這封信的主旨,當主旨內容留有空白字元時,需將其用引號包住。\\例 :-s “test mail”
8 Y$ t' ^) U7 e0 u8 F) @-a 想在信件中夾帶附加檔案,用這個參數就對了。$ ]& t/ p# S- [+ b
例 :-a ~/testfile: t7 V( e7 W, c6 J, K& h0 _# I
-c 指定信件的副本。1 }  p2 ~% t) e5 q
例 :-c barry,vivian6 t/ P; V/ [: U
-b 指定信件的密件副本 ( 將收件者的郵件地址隱藏 )。
7 Y- Q( S& h# a/ |例 :-b mary,tina@msa.hinet.net
9 |( Z7 _  s+ ~. e* w1 a6 `-q 以指定的檔案做為信件的起始內容。5 _$ G. m1 H# d7 O2 U
例: -q ~/mailfile  C- X6 S  T) X- Q, z
-r 設定 mail from 的郵件地址。4 L/ I1 {- l$ r
例:-r admin@paching.idv.tw
2 A3 s, S" @- s! p$ ^& c3 Z-u 讀取使用者的 mailbox。0 p2 k1 t0 e# o5 R8 @6 @
例 :-u barry
5 [- `$ G# E/ ?. h7 o-f 讀取使用者的 mailbox。4 u" d  t; x! k4 `2 L# z! `
例 :-f /var/spool/mail/barry' {% x( ^! n/ ]. n( j

$ r/ u3 t  p% U; e! D3 ~
, t* ~6 @9 j2 x# ~
- r3 U" {+ ]9 l9 q* x( S* l$ s
將content.txt文件的內容寄出(非附件寄出); m/ F' o9 o2 K' [9 S/ Q0 \
# cat content.txt ||mail -s "mail test" test@gmail.com4 \# u. B7 O3 c
或者  j) Y& Y' c  t% |! ^4 i% Y
+ B. m1 k8 \, t0 k5 J& p+ U
# mail -s "This is a test" aa@aa.com < content.txt! p# _7 A2 h+ r' [( H3 j
編輯模式寄出:; A$ `8 I6 b. p& _  n) Y  v1 ?
# mail kevin@av4u.info: c5 c" _+ t9 t
Subject: This is a test mail
  R0 m9 M- v. C& X) e5 M5 h( yThere are writing area!
6 q# E" p! d  B7 w0 O7 UYou can't use the Up/Down button in this form...) g# Z9 I! O9 h
you can finish with "."' a- H9 s$ m9 B) D+ e
.  <==這個『.』就是結束符號!要正常離開編輯畫面就是 . !
" n4 q! s% G; n5 v( Z4 V2 R9 N# @
5 s# f/ l6 S  `' s1 omail/mailx命令使用外部SMTP來發送郵件5 L$ O! f( N6 r2 B$ E( m
/bin/mail會默認使用本地sendmail發送郵件,這樣本地的機器必須安裝和啟動Sendmail服務,配置非常麻煩,而且會帶來不必要的資源佔用。而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的SMTP服務器發送郵件的目的:
! p* k; I" j0 F& W: a" f) q修改/etc/mail.rc 加入底下設定:
& v9 o' m: x" Y
  1. set from=fromuser@domain.com smtp=domain.com
    - O1 S/ h6 l$ \5 G3 V* |
  2. set smtp-auth-user=username smtp-auth-password=password
    0 E2 m! \0 }# s3 s* w# \
  3. set smtp-auth=login
複製代碼
說明:
- g4 J9 E8 s5 y5 E( Q3 i- tfrom是發送的郵件地址
  G( v0 |/ @( x. d3 o5 L8 r& lsmtp是發生的外部smtp服務器的地址
- Q( n- x; K( }3 W5 ]+ D  Gsmtp-auth-user是外部smtp服務器認證的用戶名
8 b3 D8 i8 z' J7 H" F( Y  y- o. L, d* xsmtp-auth-password是外部smtp服務器認證的用戶密碼
- ]- ^! E* h4 F! S- A# Q  \smtp-auth是郵件認證的方式
5 w1 C# j) j9 m  s配置成功後,就可以使用了,可以發送一封郵件測試一下:
; Q( c& B9 V( N: I! u- N$ K0 M$ j* M# mail -s "test" user@domain.com < content.txt
* y2 X& v% I4 h7 R& o% c; N+ I在linux下利用Google的SMTP來發郵件
  ]3 q2 U$ y" `+ G
+ A: |; t7 @$ A0 C2 ~在维護伺服器的時候,經常需要建立一個伺服器錯誤抱錯系统,而郵件是一個很好的工具。
! D6 i: S, ^' t7 O! e在linux下,一般是透過mail來寫郵件,而傳遞默認使用sendmail服務。這樣雖然能向外界發送郵件,但郵件不能回復,並且sendmail服務要求發送方是系统可試别用户,配置比較麻煩。下面是透過使用Google的SMTP伺服器來發送郵件,不但减輕負担,而且可以使用類似的公共郵件地址來作為發送方。
! c6 M4 z2 k$ o9 ]

- h+ S  A, ~9 h$ z4 Y0 x/ G9 u
6 k! T$ z4 w+ [4 y$ P  J, H
4 _1 T& i% ?' D- V& B. K3 I0 J% n
下面所有步骤,全部基於CentOS 5.11,其他發行版本類似。
. M. p! v, Z" [, [1.安装mail, j4 }+ E/ ^3 n8 g9 e
yum install mailx -y
' G) [  v3 Z  n, O( G& d1 M6 S# ~3 m- b0 R
2.如果想直接使用sendmail來發送郵件,需要啟動sendmail服務,或者saslauthd服務. r. w$ U  o: t9 T: @/ s5 m9 Z$ M4 M
  W2 ?) `- K( j3 S0 `5 U
3.如果想利用外部SMTP來送郵件,需编輯/etc/mail.rc,加入以下内容% t: |1 \, y* _: R
set from=demo@qq.com
2 z' M6 T0 d3 g+ Kset smtp=smtp.qq.com  * w& N' J2 T9 S! ~- L2 t- Z
set smtp-auth-user=demo
% u; S/ ~# L4 Q' f( iset smtp-auth-password=demopass 7 ]! \( G8 I) K. F; m
set smtp-auth=login
- R9 ?; [# u9 ], ?5 y7 w但是這個設置只適合那些支持非ssl鏈接的SMTP伺服器,但對於想Google,强制使用SSL加密鏈接的,需根據第4步配置mail3 f$ I- p  G' T

; e- J% r2 Y0 u: Q8 V% f1 L4.利用Google的SMTP發送郵件
* L$ s1 l4 h, c' v, ]$ A0 @* Y3 g在裝有 Firefox 的 Linux 主機, 將 ~/.mozilla/firefox/xxxxxxxx.default/ 的 cert*.db 與 key*.db 複製到 ~/.mozilla_nss_shared_db
' X# f' E' B# f' t9 [; K7 [编輯/etc/mail.rc,加入以下内容
0 F, p$ {8 j% g( gset ssl-verify=ignore5 ?, X4 k& t$ h. R* Y' L# U: l. ?
set nss-config-dir=~/.mozilla_nss_shared_db
2 z# J% Z* W* R9 tset from="myaccount@gmail.com(myname)"
, O$ h# D( [3 }( k) [set smtp=smtps://smtp.gmail.com:4655 `# l3 |6 W9 g( ]# b
set smtp-auth=login! \: `* ?% T: l/ C  e
set smtp-auth-user=myaccount$ M+ g$ r4 B8 {2 d# w) I
set smtp-auth-password=mysecret6 F5 D; R- f( a, f
" T  j. c$ R" v: _. ~4 i
如果想添加多個帳號,那就這樣寫配置文件
* m. R1 T, _& Caccount starttls {
6 u1 ^  O$ @/ d  n; Gset smtp-use-starttls
' i2 W% Q, W; `/ ?2 ?set ssl-verify=ignore6 z( ]8 m7 \% f7 U
set nss-config-dir=~/.mozilla_nss_shared_db+ @4 v, F" Q: A: x
set from="myaccount@my.smtp.host(myname)"! \6 _+ j! ]! x- k/ q# e
set smtp=smtp://my.smtp.host:252 l8 H# w* P" C- M/ g/ Q( }2 G
set smtp-auth=login
) ~$ t3 @) I. P) O2 {9 I" D6 {set smtp-auth-user=myaccount
1 z1 i& \( Z4 [% |, ?set smtp-auth-password=mysecret# w0 ^3 @: x! u* F2 ^+ d: ^: ~
}& p7 K0 U( R) t6 L$ j8 `) i
account gmail {* u! q2 o( F- k6 K
set ssl-verify=ignore
) [. j& w5 ~0 N& E. R# ^: [set nss-config-dir=~/.mozilla_nss_shared_db( V' i1 k4 k. {$ i0 N; H  Z5 T
set from="myaccount@gmail.com(myname)"
4 e: m4 c( p6 K6 k4 |set smtp=smtps://smtp.gmail.com:465
& w" f3 D  {8 V0 A& N# ?' z4 sset smtp-auth=login
6 Z: J  @. Q$ P1 H7 Xset smtp-auth-user=myaccount8 b9 O8 g1 p& M. j, p. d( u/ W; s
set smtp-auth-password=mysecret& y. _+ t# n8 W4 b; m8 Q
}( m3 _! f9 k* b
不過在發送郵件的時候,需要用-A参數指定發送帳號,比如-A gmail
) z+ V# L& M' |% |$ y+ H7 f
但經我測試好像沒作用- \& X1 _* r- W8 Y
讀信:#mail6 T; t" ~) y3 V! i4 @+ O. w) H
假如讀信時空間已滿,可以查看 /var/spool/mail之下哪一個使用者檔案最大,例如 root(一般也是root最大),將它清空:% j& Y- O* H; d6 I. G; Q( @' h
#> /var/spool/mail/root
5 ]& ?: ^1 f# o8 Y. o& b6 }在執行 mail 就可正常讀信了
2 m, U. @! _0 a% {" m1 i7 C- t

4 D, o$ P5 x9 y% l
+ b; Y! t/ r  Z6 k0 D  T
請參考:
% l) v: r+ M* i3 U; w  p( s! B6 `6 p: Jhttp://linux.vbird.org/linux_server/0380mail.php#mua_mail
" r& \! X$ ?0 t. q! ]  `
: K) @3 m+ M9 M" y




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