茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1730119 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_00102.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

小企鵝開談 : [轉貼]postfix 重複收信問題

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15773
[轉貼]postfix 重複收信問題

postfix 重複收信問題

用了這麼久,第一次遇到這個問題,USER反應說信一直重複收到,還以為是對方如果是OUTLOOK EXPRESS,有時後寄信會發生選寫完信要按寄信時,寄件匣其實已經加入一封待傳的信,但是那個編輯信的視窗卻沒自動關閉,一直按傳送都不會關閉,按幾次就寄幾封一樣的信…………….

但是這次不一樣,看LOG可以發現收信敵確是一直重複…………雖然重啟MAIL SERVER後正常,不過還是照下面步驟把alias內的都補成完整MAIL格式,再觀察看看………

 

主題: 解決Postfix alias 重複寄信的問題
作者: scottie_lin2006-04-11 13:14


相信很多人都會遇到同樣的問題。
那就是postfix 在處理alias的時候,如果alias裡面有個local account是不存在的如:
testA:  test1,test2,test3………..test3帳號不存在於系統
這時候postfix會產生很多defered信件於/var/postfix/defer下,然後會一直重試寄信,於是testA群組的人就會收到很多重複的信件。我覺得這其實是postfix的一個bug,因為同樣的情況並不會在sendmail上產生。要處理這種問題其實很簡單,只要把alias裡面本來使用帳號的名稱改成完整的mail address即可,如:
testA:  test1@mydomain.com,test2@mydomain.com,test3@mydomain.com
如此一來就算系統內沒有test3帳號,也不會有重複信件的產生。
提供一點小小的心得跟各位交流,謝謝。
謝謝。



主題: 解決Postfix alias 重複寄信的問題
作者: simon.lin2006-04-11 14:41

有这种事?我原来也有用过POSTFIX,也是碰到邮件重复问题才又换成SENDMAIL,我还是有点疑问,假设本地帐户都有存在,转发规则如下:
A:A@ABC.COM,B@ABC.COM
B:B@ABC.COM,C@ABC.COM
C:C@ABC.COM
如果一封邮件同时发给A和B,那C会不会收到两封?


主題: 解決Postfix alias 重複寄信的問題
作者: scottie_lin2006-04-11 14:50

引用自: "simon.lin"

有这种事?我原来也有用过POSTFIX,也是碰到邮件重复问题才又换成SENDMAIL,我还是有点疑问,假设本地帐户都有存在,转发规则如下:
A:A@ABC.COM,B@ABC.COM
B:B@ABC.COM,C@ABC.COM
C:C@ABC.COM
如果一封邮件同时发给A和B,那C会不会收到两封?

會收到兩封沒錯,這是postfix設計上的處理方法。postfix不會像sendmail先把郵件裡面所有收信人展開處理,而是一個收信人就馬上處理一次,這也是postfix會比sendmail快的原因之一。
我所列出的方法,主要是處理alias產生defered信件的解決方式。
詳情請參考http://www.postfix.org/faq.html#duplicate


主題: 解決Postfix alias 重複寄信的問題
作者: paulso2006-04-12 17:16


我試過我的 postfix 不會這樣子哦
我使用一台 qmail 作我的 smtp server,  send 去一台 postfix server, 並沒有你所說的問題發生, 在 postfix 或 qmail, 兩台 server 也沒有把 mail queue 下來
我的 postfix 是 2.1.5
你使用的 postfix version 是?


主題: 解決Postfix alias 重複寄信的問題
作者: scottie_lin2006-04-12 21:16

引用自: "paulso"

我試過我的 postfix 不會這樣子哦
我使用一台 qmail 作我的 smtp server,  send 去一台 postfix server, 並沒有你所說的問題發生, 在 postfix 或 qmail, 兩台 server 也沒有把 mail queue 下來
我的 postfix 是 2.1.5
你使用的 postfix version 是?

Postfix 2.0.18
以前使用sendmail並沒有遇到alias群組裡面有不存在的帳號然後就重寄的問題。不過自從我換用posftfix後,這問題就發生了。由於我的alias最多的可到一百人一個群組,所以維護很不容易,而mailman又有時效問題不合需求。找了很久的internet都沒看到解答,後來無意中自行發現改成mail address即可,故提出來與大家分享。


主題: 解決Postfix alias 重複寄信的問題
作者: paulso2006-04-13 09:02


因為一個群組一百人, 所以發現問題
有沒有嘗試先簡單化, 例如3~5個人, 看看 aliases 這個群組 (其中一個不存在) 看看問題有否發生
先簡單化, 查出是否真的因為 aliases


主題: 解決Postfix alias 重複寄信的問題
作者: twu22006-04-13 10:28

自己建一個大的 alias 看看就知道是不是這問題了吧.
依照我們公司三年前的經驗, 用 alias 時, 只要裡頭有某個人無法正常送出, 就會連帶其它人也一直重覆收到該信.
你可以把 quota 打開, 然後把其中一個的 quota 用到超過, 接著寄信給含該 account 的 alias, 就可以發現那封信會無法寄給該 account, 但是可以寄給其它 account, 接著, postfix 會一直重寄… 所有人都會一直重覆收到信.
我們之前也是用 2.0.x 版. 後來就不用 alias, 自己用 php 寫程式來展開收件人, 所以不確定後來的版本有沒有改進了.


主題: 解決Postfix alias 重複寄信的問題
作者: scottie_lin2006-04-13 12:13

引用自: "twu2"


自己建一個大的 alias 看看就知道是不是這問題了吧.
依照我們公司三年前的經驗, 用 alias 時, 只要裡頭有某個人無法正常送出, 就會連帶其它人也一直重覆收到該信.
你可以把 quota 打開, 然後把其中一個的 quota 用到超過, 接著寄信給含該 account 的 alias, 就可以發現那封信會無法寄給該 account, 但是可以寄給其它 account, 接著, postfix 會一直重寄… 所有人都會一直重覆收到信.
我們之前也是用 2.0.x 版. 後來就不用 alias, 自己用 php 寫程式來展開收件人, 所以不確定後來的版本有沒有改進了.

想請教一下學長這個問題,不知道有無解?
http://phorum.study-area.org/viewtopic.php?t=38491
困擾我很久了,謝謝。


主題: 解決Postfix alias 重複寄信的問題
作者: paulso2006-04-13 12:30

原來是這樣
我找了:

引用自: "ftp://ftp.cuhk.edu.hk/pub/packages/mail-server/postfix/official/postfix-2.2.10.HISTORY"


20030315
   Bugfix: the Postfix 2.0 recipient map checking code broke
   the VRFY command, causing it to reply with status code 252
   for non-existent addresses. This required re-architecting
   the recipient table lookup code. File:  smtpd/smtpd_check.c.

若果這個 bugfix 是你們所說的問題的話, 在 2.0.20 已經修正了, 不過可惜我找不到 2.0.18 下載給我試試


主題: 解決Postfix alias 重複寄信的問題
作者: twu22006-04-13 12:32

我不用 procmail, 不知道怎麼做.


主題: 解決Postfix alias 重複寄信的問題
作者: paulso2006-04-13 15:51

在鳥哥的下載區內, 找到一個 2.0.6 的版本…  (不要打我>"<)
新增了二百個帳戶, 使用 aliases
all: a1,a2,…a200
試過 1. 當中沒有帳戶, 2. 爆了partition 的 quota, 3. 設定 postfix/main.cf 中的 mailbox_size_limit
也還不到問題, 環境是 CentOS 4.0
也許需要真實運行的 server 才能遇到..



原文出處:postfix 重複收信問題 | No Money No Honey
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15773
[轉貼]postfix 重複收信–unable to lock for exclusive access: Resource temporarily unavailable 訊息作怪–更新

postfix 重複收信–unable to lock for exclusive access: Resource temporarily unavailable 訊息作怪–更新

另外發現若是 OUTLOOK EXPRESS內的帳號有設定 “在伺服器上保留備份”的選項時,若更改Outlook express的收信MAIL SERVER IP時,會出現 lock 問題。

1

分析原因大概如下:

若設定“在伺服器上保留備份”時,兩台電腦設定同帳號狀態下,兩台電腦都可以收到完整的信,也就是說A電腦收到6/10~6/13日的信,B電腦在5日內收信(這裡設刪除5日後的信),也可以完整收到6/10~6/13日的信。但OUTLOOK EXPRESS是用什麼機制來判定這兩台有何不同? 這點還不清楚。


會發生卡住的原因,研判本來A電腦解析 mail server 為外部實體IP,收過信後,再重複收信可以看到SERVER上有多少信,但是收下來的信是0封,因剛剛已經收過信了,此時再連線 WEB VPN 後,mail server 變成解析為内部IP,照理說OUTLOOK EXPRESS剛已經收過信了,但此時再按收信,正常要能順利收信,且若無新信,也只會收0封信才對,但是此時若收信,會卡在準被收信狀態(顯示 SERVER上還有多少封信以及準備要收信),再看mail server log,會發現 pop3正常收信訊息應該會有兩行:

Jun 13 20:56:15 mail dovecot: pop3-login: Login: user=<mailbak>, method=PLAIN, rip=x.x.x.x, lip=x.x.x.x
Jun 13 20:56:15 mail dovecot: POP3(mailbak): Disconnected: Logged out top=0/0, retr=2/2421, del=2/2, size=2388

pop3連線後再來會開始紅色的收信部份,但是若是上面說的狀況下,只會出現黑色連線的訊息,並不會出現紅色收信的部份,與OUTLOOK EXPRESS卡住的情形吻合。

目前的解決方式:

一、拿掉 “在伺服器上保留備份” 的選項。

二、直接在 伺服器 選項給mail server的外部實體IP,不透過DNS解析,這樣就算連線 WEB VPN 後,收信還是會直接走外部IP,不更換收信的IP位置時,在 “在伺服器上保留備份” 的狀態下測試也是可以正常收發信,不會有卡住的情形。


2

==========================================================================

今天一早,台中分註點反應有兩台PC MAIL無法收,另一台NB收發信沒問題,試了一早上,發現連VPN收信會卡住,但是不使用VPN則可以正常收發信,這就不好搞了,到底是VPN與SERVER端連線有問題嗎?可是若有問題,那NB應該也要跟著有問題。試到下午想撞牆,後來發現……………….

當有兩台電腦同時用同帳號使用 OUTLOOK EXPRESS 收發信,尤其其中一台若是使用IMAP,另一台使用POP3,MAIL SERVER就會發生 /var/spool/mail/該帳號 LOCK住的情形,此時就無法收信,會卡在那邊收不下來。

ll /var/spool/mail/ 後看到帳號被系統 lock,這時後想要強制刪除 帳號.Lock 是沒有辦法的。

1

 

[root@mail ~]# lsof | grep roger 秀出該帳號在系統中使用的狀況,這邊可以看到系統還是有卡住該使用者帳號的 POP3 IMAP等程序。
2 

 


真正的解決辦法是叫使用者把OUTLOOK EXPRESS都關掉,等個5~10分鐘,系統會自動解除 lock ,確認帳號 lock 被解除,[root@mail ~]# lsof | grep roger 內沒有POP3與IMAP等程序,再請使用者開OUTLOOK EXPRESS使用看看,應該就可以正常收信了。
4 
3


 

題外話:那卡住的時候,為何被卡住同帳號不使用VPN連線直接走外線就可以收信呢?我只想到這個合理的解釋,就是收信網段的問題,vpn收信是直接使用內部網段IP,所以內部網段造成的收信 lock 問題,與外部網段的程序是區隔開來的,當然還要試試看如果兩台PC同時用同帳號由外部網段直接收信看會不會LOCK才能確定,但是使用者已經快把我殺了,只好作罷,暫時先這樣結案…………不完美的結案。

=================================================================

mail server 用 fedora 9  postfix + dovecot + mailscanner 架設,最近常聽到有重複收信的問題,後來看LOG發現有一些時候會出現 unable to lock for exclusive access: Resource temporarily unavailable 這個訊息,導致這封信會重複寄送,直到信完成寄出系統才會Remove 這封信,也就是說如果有使用 aliases ,如果裡面有5個收信人,結果其中一位收信人收現了這種訊息一直無法寄到使用者信箱,那麼另外四個人會一直收到重複的信,直到這五個人全部都成功寄出為止,難怪一早來又看到有重複的信………

上網查了一下,應該就是下面這位大大所說的原因,先改看看再觀察囉。

 

參考文章: http://bojack.pixnet.net/blog/post/25926521

==================================================================

目前系統的環境是 Postfix + Dovecot

這是最近出現在 maillog 訊息


Mar 15 08:49:49 mail postfix/local[4491]: C7EFD2B7C9D: to=<xxx@xxx.edu.tw>, orig_to=<xxx2008>, relay=local, delay=21, delays=0.06/0/0/21, dsn=4.2.0, status=deferred (cannot update mailbox /var/mail/xxx for user maxling. unable to lock for exclusive access: Resource temporarily unavailable)

因為郵件系統內設定有許多 Aliases,當有人正在針對特定的 Aliases 寄送信件,且此群組內某一個人正好在使用 POP3 收信時,可能就會發生 Lock 的情況,導致系統會重新再寄信該封信件,變成同一封信會收到 2 次以上 ( 大容量信件更是可怕 )

目前查了相關資訊,建議是將 Postfix 和 Dovecot Lock 的機制都設定為一樣,還不確定是否可以解決,正在觀察是否會出現相同的情況

Postfix 目前的設定

mailbox_delivery_lock = flock, dotlock

Dovecot 目前的設定

mbox_read_locks = flock dotlock
mbox_write_locks = flock dotlock

參考的資料如下


酷學園 – postfix 產生cannot update mailbox 和 Resource temporarily unavailable

Mool – maillog 出現 Resource temporarily unavailable

記。回憶 – Postfix + Dovecot , mbox Lock 問題

Dovecot – Mbox Locking


原文出處:postfix 重複收信–unable to lock for exclusive access: Resource temporarily unavailable 訊息作怪–更新 | No Money No Honey
前一個主題 | 下一個主題 | 頁首 | | |



Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|