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

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

作者: IT_man    時間: 2016-4-15 17:22
標題: linux 下 mail 指令大全
寄信:
) M1 G/ X2 q) k, E4 s3 F& z9 J參數說明:: r$ X; n* e! V8 |1 Z/ Z. s
-s 設定這封信的主旨,當主旨內容留有空白字元時,需將其用引號包住。\\例 :-s “test mail”
4 ^' F$ M& C6 p7 a-a 想在信件中夾帶附加檔案,用這個參數就對了。
! }- M* m7 p% d3 o9 j例 :-a ~/testfile
! _+ o9 B' i, R0 _0 Q-c 指定信件的副本。
3 e4 ]' z% z5 p例 :-c barry,vivian
( d+ m# B+ I3 ~- E" {2 f-b 指定信件的密件副本 ( 將收件者的郵件地址隱藏 )。+ J0 W) }* C0 Q3 C
例 :-b mary,tina@msa.hinet.net* y  I$ a3 O% h  M; V
-q 以指定的檔案做為信件的起始內容。3 c, ^; \% ~% H  W9 n0 H
例: -q ~/mailfile
: \8 y/ c0 K; H0 \( H0 s5 l: `6 S3 k-r 設定 mail from 的郵件地址。
% Q$ p$ T; j+ G  }' H, f6 y7 h5 w例:-r admin@paching.idv.tw) q  H2 u, `/ R
-u 讀取使用者的 mailbox。9 s' ~% |$ g- Q% h* F
例 :-u barry
; L6 O* a2 b$ A6 G-f 讀取使用者的 mailbox。* x3 z9 c: F! J1 M5 [; c- {
例 :-f /var/spool/mail/barry
7 L5 x7 q% @: A3 ?4 |! I7 e# {
  f% S8 B4 X+ G) N' n( w

8 |6 q1 h! W2 S5 M; p, l
/ |$ V; W# ^/ t( t+ l# O. Q( W將content.txt文件的內容寄出(非附件寄出)3 H4 X0 C% T  F
# cat content.txt ||mail -s "mail test" test@gmail.com- i$ r; b9 ]+ w6 a9 @; [6 V" \- ^
或者  @# V% W7 a/ l- |0 a

+ a% h; X7 m9 G7 d6 E* v7 v3 |# mail -s "This is a test" aa@aa.com < content.txt
) n  S: x0 S1 d& R8 b, _7 O% j編輯模式寄出:
' z2 e! p' d; g2 \# mail kevin@av4u.info
6 l7 I1 g( z% a+ C: @: L. dSubject: This is a test mail
% B7 f, D9 p& w; C% YThere are writing area!
( B+ N- n, P5 R7 y. n8 uYou can't use the Up/Down button in this form...' e( c4 D3 U- ~6 w- H* u
you can finish with "."$ |- l5 ]2 [0 E( }3 `4 n% {, e/ l
.  <==這個『.』就是結束符號!要正常離開編輯畫面就是 . !2 V& N0 U, e: C( P4 L1 H

- S5 z3 i. g( e! K/ x7 qmail/mailx命令使用外部SMTP來發送郵件
; G; r) ^3 b& K0 f/bin/mail會默認使用本地sendmail發送郵件,這樣本地的機器必須安裝和啟動Sendmail服務,配置非常麻煩,而且會帶來不必要的資源佔用。而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的SMTP服務器發送郵件的目的:
" V) Q/ ?! I* m' r$ f. z修改/etc/mail.rc 加入底下設定:6 ]# Q$ [6 X" d; G
  1. set from=fromuser@domain.com smtp=domain.com
    & P# R& `' I6 g6 D) S
  2. set smtp-auth-user=username smtp-auth-password=password
    - T+ U, u( O6 n
  3. set smtp-auth=login
複製代碼
說明:
' h/ }( ]$ o. F5 g5 Vfrom是發送的郵件地址
9 V% b2 _! U- P6 ], }9 F+ ~$ e: ]( Gsmtp是發生的外部smtp服務器的地址
) ]7 f9 U& {6 B: |1 C1 ?1 \smtp-auth-user是外部smtp服務器認證的用戶名6 G# ~$ Z9 e4 Y' h0 [' g
smtp-auth-password是外部smtp服務器認證的用戶密碼/ o1 M( V2 U8 J! W# R
smtp-auth是郵件認證的方式
, r* Y' {7 @  Z7 L$ O1 m配置成功後,就可以使用了,可以發送一封郵件測試一下:
& [( s! H$ e" g6 o5 \) S# mail -s "test" user@domain.com < content.txt
4 c" o% b. q9 Y8 a% q* o% u6 a在linux下利用Google的SMTP來發郵件
4 \& ~# G9 e$ V  S  n/ J2 q5 O" v" B4 `5 l, Q# Z& \
在维護伺服器的時候,經常需要建立一個伺服器錯誤抱錯系统,而郵件是一個很好的工具。
6 t5 Z2 F* v$ b' T6 H) o& u在linux下,一般是透過mail來寫郵件,而傳遞默認使用sendmail服務。這樣雖然能向外界發送郵件,但郵件不能回復,並且sendmail服務要求發送方是系统可試别用户,配置比較麻煩。下面是透過使用Google的SMTP伺服器來發送郵件,不但减輕負担,而且可以使用類似的公共郵件地址來作為發送方。" N  f8 }; ~/ a* J8 @
' p, Q4 V1 q6 o" `0 A+ b/ O
; r0 |+ D2 e# T% H+ x

  h& N: C# I+ L下面所有步骤,全部基於CentOS 5.11,其他發行版本類似。3 b0 f6 k3 P1 n' m5 x1 X
1.安装mail
& t' Z' b4 |* C  Lyum install mailx -y
  V  W3 d# n/ B# Y' j3 C
) @" N4 q% {" @; h& n2 i2.如果想直接使用sendmail來發送郵件,需要啟動sendmail服務,或者saslauthd服務4 I7 w; J' g/ ^5 |  p2 V0 ]2 D! H- T' n

  Y+ r) ?* J8 N/ A$ g. B/ T3.如果想利用外部SMTP來送郵件,需编輯/etc/mail.rc,加入以下内容
; P+ i/ k, y8 y( S- L5 Sset from=demo@qq.com
% u5 ]. B/ p! Z! U5 E! tset smtp=smtp.qq.com  - L7 O9 i$ ^2 l( v* y+ F2 L& n* s
set smtp-auth-user=demo & N0 h) \, M: L/ y4 {
set smtp-auth-password=demopass 8 Q/ `3 O% I5 V! N
set smtp-auth=login' @6 [+ |+ y8 c* s1 n
但是這個設置只適合那些支持非ssl鏈接的SMTP伺服器,但對於想Google,强制使用SSL加密鏈接的,需根據第4步配置mail. n+ M) I8 i4 Y. T5 T4 n4 o
/ v- I; }: d8 I% I: X! l, _
4.利用Google的SMTP發送郵件  ^) `$ ^3 [- d3 X0 \
在裝有 Firefox 的 Linux 主機, 將 ~/.mozilla/firefox/xxxxxxxx.default/ 的 cert*.db 與 key*.db 複製到 ~/.mozilla_nss_shared_db! X" j' j9 J# u- o
编輯/etc/mail.rc,加入以下内容
1 E4 A) P) L+ g; R, H* dset ssl-verify=ignore
1 n. Y; G; J, W! i2 Kset nss-config-dir=~/.mozilla_nss_shared_db
, {$ T4 \+ w' v+ g' a. u* Vset from="myaccount@gmail.com(myname)"5 F, |6 ]7 P8 {! k  F. o& y
set smtp=smtps://smtp.gmail.com:465
: x+ ?, m4 T  sset smtp-auth=login
5 y0 r$ C! E& z2 g/ tset smtp-auth-user=myaccount
5 T6 n6 B, C7 v) sset smtp-auth-password=mysecret
& J- L0 i$ m- n# J7 ~; Y9 F! \1 V7 |3 h$ H4 Y1 a9 q) S: O7 j* [
如果想添加多個帳號,那就這樣寫配置文件
5 R% p: \' R. F; F" g9 W+ R9 raccount starttls {
8 Y2 Y4 K5 l7 g% W  O. ]2 [set smtp-use-starttls
0 w! V# M" j! uset ssl-verify=ignore& I2 u- v0 Y" ~% c0 I2 @; n
set nss-config-dir=~/.mozilla_nss_shared_db
7 S  Z) }0 R$ K2 b$ F7 qset from="myaccount@my.smtp.host(myname)"
& R7 k- e2 S- _& A0 kset smtp=smtp://my.smtp.host:25
4 t( G8 b' ~* [8 a$ Jset smtp-auth=login
3 Z( t; w5 i6 A3 f+ h7 s% u/ Bset smtp-auth-user=myaccount
3 h) k& C: [; a  f$ u; |4 Bset smtp-auth-password=mysecret
8 v, \, w8 t, s" w# }}: U; j; b6 F; X( T9 \" P, H* `$ Q, V
account gmail {
- O1 p) i+ A2 [3 ]! D* Wset ssl-verify=ignore
2 d0 l. @( j1 z% j' t& iset nss-config-dir=~/.mozilla_nss_shared_db$ V6 ~0 S; T* S, I1 i$ A; `
set from="myaccount@gmail.com(myname)"5 g4 j& R$ S% E
set smtp=smtps://smtp.gmail.com:465
! \/ c8 }! @& G1 Y5 c* E5 O' `set smtp-auth=login
7 w5 v" f% E! a! W1 w* Qset smtp-auth-user=myaccount3 A+ S) @) L5 N% |, J# [- H, O
set smtp-auth-password=mysecret
* Z' p4 ]5 Q2 e0 Q- M8 n}; m2 \2 B* [! |# @& L6 w0 R1 u; T
不過在發送郵件的時候,需要用-A参數指定發送帳號,比如-A gmail
* q. L. L) y! h& U* X) I! d
但經我測試好像沒作用
/ R5 p! f% Z7 H2 @! m讀信:#mail$ Z$ K* P  x; n) h2 J  B! A
假如讀信時空間已滿,可以查看 /var/spool/mail之下哪一個使用者檔案最大,例如 root(一般也是root最大),將它清空:
/ S" Z- H: Q+ z#> /var/spool/mail/root
3 r0 C8 X, o: p' I& Z$ }5 b4 S在執行 mail 就可正常讀信了/ R8 P* P( x& P7 I+ ^4 ~. F/ H
% D7 b' S5 N1 w/ f/ f  _
  `6 F+ C* i' H  K' X! b
請參考:+ d* Q4 ^4 H; }3 e) X7 u" N2 W
http://linux.vbird.org/linux_server/0380mail.php#mua_mail
, B1 X$ p! B8 i/ K% R' Y/ ?& T; w& t) e; @6 b/ t; K8 B





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