作者 主題: 請教關於 procmail 的問題  (閱讀 6789 次)

0 會員 與 1 訪客 正在閱讀本文。

akuan

  • 懷疑的國中生
  • **
  • 文章數: 38
    • 檢視個人資料
請教關於 procmail 的問題
« 於: 2003-06-25 08:53 »
我在 procmailrc.d 中加入

:0c
* ^To: test
! backup

目的在備份所有test帳號的信件到backup這個帳號
目前已經能正確執行!但有一個奇怪的現象,
每1封給test的信件,都會轉寄11封給backup!
內容基本上是一樣的,不過信件大小有差異,會差1~10K。
請問這該如何解決呢?謝謝!

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #1 於: 2003-06-25 12:58 »
引用
每1封給test的信件,都會轉寄11封給backup!

你把 同一封信第一封和最後一封的信 POST 上來,
讓大家來幫你判斷 ~~
我遇過像這種情形, 通常是 loop 造成的

akuan

  • 懷疑的國中生
  • **
  • 文章數: 38
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #2 於: 2003-06-25 14:17 »
剛剛我再測試一遍 又發現一個新情況
1. 直接用Outlook收信,會收到procmail轉寄的11封一模一樣的信(大小有差)。
2. 若改以IE用 openwebmail 2.10 讀取,則只有一封,但內容一樣不過大小是11封的總和。
3. 另外 root 帳號 會收到一封
寄件人 Mail Delivery Subsystem
主旨為 Returned mail: see transcript for details
內容為
The original message was received at Wed, 25 Jun 2003 14:02:26 +0800
from localhost.localdomain [127.0.0.1]

   ----- The following addresses had permanent fatal errors -----
<backup@abc.idv.tw>
    (reason: 554 5.4.6 Too many hops)

   ----- Transcript of session follows -----
554 5.4.6 Too many hops 26 (25 max): from <root@abc.idv.tw> via localhost.localdomain,
to <akuan@abc.idv.tw>

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #3 於: 2003-06-25 14:34 »
引用
1. 直接用Outlook收信,會收到procmail轉寄的11封一模一樣的信(大小有差)。
2. 若改以IE用 openwebmail 2.10 讀取,則只有一封,但內容一樣不過大小是11封的總和。
3. 另外 root 帳號 會收到一封


我猜是 Loop ,因為你的 procmail 的條件不夠嚴謹所致
TEST 轉到 backup, 結果就一直轉一直轉,
直到 max hop 值到了為止

檢験方法:
看 mail daemon 是不是很多 process ....
看每一封信的表頭, 第一封如何 ? 第二封多了什麼....第十封

根據表頭的不同處去處理
想不出來 ....那就把
! backup 改成 pipe (|) 的方式處理
提示你一種方法, 用
| sendmail ......
並在判斷處多加一個條件

我想你自己多試試才可以學得好哦 !! 加油

Bolunamiwa

  • 憂鬱的高中生
  • ***
  • 文章數: 156
    • 檢視個人資料
Re: 請教關於 procmail 的問題
« 回覆 #4 於: 2003-06-26 08:12 »
引述: "akuan"
我在 procmailrc.d 中加入

:0c
* ^To: test
! backup

目的在備份所有test帳號的信件到backup這個帳號
目前已經能正確執行!但有一個奇怪的現象,
每1封給test的信件,都會轉寄11封給backup!
內容基本上是一樣的,不過信件大小有差異,會差1~10K。
請問這該如何解決呢?謝謝!


使用.forward 備份不是比較快

akuan

  • 懷疑的國中生
  • **
  • 文章數: 38
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #5 於: 2003-06-26 09:03 »
謝謝大家的回覆喔!

astaka

  • 憂鬱的高中生
  • ***
  • 文章數: 164
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #6 於: 2003-08-06 18:26 »
找到有人和我遇到同樣的問題,,了..請問你是怎麼解決的呢?
還有abelyang大大,把! 拿掉換成pipe(|),可以秀個小範例嗎?比如要forward給A.

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #7 於: 2003-08-06 18:32 »
:0 Hc
* ^From: .*@(localhost\.localdomain|pcserver).*
* !^X-LOOP: 1
| (formail -I "X-LOOP: 1" -I "Bcc: abel" | $SENDMAIL -oi -t $TO)


X-LOOP  設了表示巳經經過 procmail 處理了
這是我的寄出備份範例 ~~
當然我有改 sendmail.cf 讓 outgoing mail 都從 procmail 後才出去 ~~
在 procmail 處理時給他加了副件密本 (Bcc) 的 header,再給 sendmial 出去

因為精華區巳有一篇這類文章~~我就不獻醜了
http://phorum.study-area.org/viewtopic.php?t=17149

astaka

  • 憂鬱的高中生
  • ***
  • 文章數: 164
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #8 於: 2003-08-06 19:17 »
引述: "abelyang"
:0 Hc
* ^From: .*@(localhost\.localdomain|pcserver).*
* !^X-LOOP: 1
| (formail -I "X-LOOP: 1" -I "Bcc: abel" | $SENDMAIL -oi -t $TO)

 :( 抱歉,小弟實在不才.有了範例還試不成功(玩linux不到一個月,公司又急著要用... :cry:  :cry:  :cry: ),,,..,,

我要把 aaa.com.tw 寄來的信都自動轉一封給老闆,而我參照! 做法就會產生和前位同志一樣的問題,要改大大的方法,可是我是進來的信要轉寄,大大的是出去的信要備份,所以我想依樣畫..改成如下...
* ^From: .*@aaa.com.tw
* !^X-LOOP: 1
| (formail -I "X-LOOP: 1" -I "Bcc: myboss" | $SENDMAIL -oi -t $TO)


 :roll:  ....結果寄到我老闆那裡去一封,而收信人卻收到二封...... :cry: ,感謝大大的好意,可以我真的是沒資質的感覺,那些語法我都看不懂也...-I 是代表什麼? 為何要" "包起來?$SENDMAIL , $TO又是什麼? -oi -t  ? .....真想去仆~~ :cry:

abelyang

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 1097
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #9 於: 2003-08-06 22:33 »
如果您 outgoing mail 要轉寄給某人建議您換 postfix (好像拚錯了)
Always bcc 的功能自動幫您轉
可參考 http://linux.vbird.org/linux_server/
如果你一定要用 Sendmail. 那就參考精華區那一篇...
不建議您用我的方法
因為我的方法要動 sendmail.cf , 且對 formail / procmail 的運作
要了解.這對一般人來說可能較不容易理解

astaka

  • 憂鬱的高中生
  • ***
  • 文章數: 164
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #10 於: 2003-08-07 00:58 »
感謝學長~
我去查查postfix,但是公司目前同事都已經在用了,sendmail可以直接升到postfix嗎?還是完全二碼子的東西........因為我看我的webmin管理選項中.postfix server上面寫未安裝.. :( 如果裝了是整合在一起的還是sendmail就無作用而要用postfix,因為之前有改寫netman學長的一支script去判斷三日未取信就copy一份到老闆那裡去,是否也有影響了..

gljou

  • 懷疑的國中生
  • **
  • 文章數: 47
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #11 於: 2004-03-16 17:55 »
我覺得我比較笨
造著做也沒錯誤訊息還是沒辦法執行
完完全全沒動作
有可能是哪裡錯誤嗎

-------------
經過測試及看LOG檔發現
PROCMAIL不會對寄出的MAIL做檢查
sendmail.cf檔我有更改過
真糟糕,還是找不到問題點

gljou

  • 懷疑的國中生
  • **
  • 文章數: 47
    • 檢視個人資料
請教關於 procmail 的問題
« 回覆 #12 於: 2004-03-19 14:48 »
我後來又測試
發現雖然PROCMAIL.LOG有對收到的信做轉寄的動作
但還是沒有收到信
在查了MAIL.log
我已經找到問題了
Mar 19 14:19:32 mail sendmail[25823]: i2JJJWaK025823: SYSERR(UID0): Who are you?: Permission denied
Mar 19 14:19:32 mail sendmail[25826]: i2JJJWcE025826: SYSERR(UID0): Who are you?: Permission denied
轉寄的信會被主機問你是誰.......
可不可以請教各為大大
這又是什麼問題阿