오래된 메일 정리하기
사실 메인이메일을 gmail 로 옴긴지 한참 되었습니다.
하지만 기존 메일계정은 그대로 두고 있지요.
얼마전 아는 형님께서 이메일 보냈는데 왜 답이 없냐길레 ㅠㅠ
기존 이메일을 열기로 했습니다.
많이 두려웠죠. 일단 서버가 P3 듀얼 1기가에 하드는 pci 에 꼽은 sata 카드에 달려있는 200기가입니다.
imap 으로 쓰는데 쌓여 있는 메일은 ... ㅠㅠ
스팸필터링을 신뢰하지 않는 관계로 메일은 자주자주 제가 지워주는 스타일이어서 스팸필터링을 아예 달지 않았습니다.
그레이 리스팅과 spf 정도는 설정을 해주었습니다만 그래도 스팸이 꽤 들어오죠.
이제 메일을 열려고 윈도우에 선더버드 2.0 을 깔고 imap 을 열었습니다. 1시간동안 서버로드가 5-8을 헤메고 썬더버드는 아직 ㅎㄷㄷ 이러고 있더군요.
6시부터 12시까지 고생을 하다가 ( offline 으로 해서 삭제하고 싱크도 걸어보고 등등 )
포기하고 스크립트를 짜기 시작했습니다.
( 처리해야할 이메일은 14만통에 가깝습니다 )
그냥 한번 돌릴 스크립트로 만든것이니 코드의 질은 보장하지 않습니다;;;
import glob import re, sys, os from cStringIO import StringIO from email.parser import Parser from time import sleep maildir = "/Maildir/cur/" spamdir = "/Maildir/.Trash/new/" maillist = glob.glob(maildir + "*") e = Parser() log = open("tempspam.log","a") for amail in maillist: tmail = StringIO() old = amail amail = amail.replace(",","\,") amail = amail.replace(":","\:") amail = amail.replace("=","\=") tmail.write(os.popen("cat %s | spamassassin" % amail).read()) tmail.seek(0) msg = e.parse(tmail,True) if msg["X-Spam-Flag"] == "YES": try: log.write("%s %s %s %s \n" % ( msg["subject"] , msg["sender"] , msg["Return-Path"] , old)) except: log.write(old + "\n") newpath = old.replace(maildir,spamdir) os.rename(old,newpath) log.flush() sleep(0.1)
쉽게 설명을 하면 스팸어세신을 불러서 메일을 집어넣고 헤더를 파싱해서 스팸이면 쓰레기통에 넣습니다.
그런데 써버가 느리다보니 ㅠㅠ 로드 1을 유지하면서 겨우 12시간동안 8000통을 처리했군요. 뭐.. 급한건 아니니까 1달내에는 처리하겠지요.
여러분은 오래된 메일계정을 어떤식으로 마이그레이션 하시나요?
그리고 웃긴점은 "발기" 로 검색해서 삭제하니.. 2만통이 날아가더군요 -_-;;;;
댓글
(php에서) gc안된 세션
(php에서) gc안된 세션 파일 디렉토리 열때와, 1년 이상 방치해둔 메일 디렉토리 열때가 가장 두렵습니다.
뭣모르고 ls 한번 하면 하세월...
자체 메일 서버를 돌린다는건 꾸준히 관리감독하지 않는 이상, 요즘같은 시대엔 자살행위에 가까울 것 같아요.
예전에 한번 qmail + vpopmail 등으로 서비스를 한 적이 있었는데, 유독 특정 도메인의 특정 아이디에만 메일이 엄청
쌓이더군요. 죄다 스팸.. (한번도 열어보지 않은 모양.. -_-;;) 메일 유저에게 현재 메일 사용하고 있냐 물어봤더니 '무슨 메일?'
하길래 두말않고 메일 디렉토리 통째로 날렸습니다. 그리고 qmail + vpopmail을 날리고, gmail의 apps를 이용하기 시작했지요.
메일요? 그런거 모릅니다. ㅎㅎ
--->
데비안 & 우분투로 대동단결!
--->
데비안 & 우분투로 대동단결!
발기 어쩌고 하는
발기 어쩌고 하는 메일의 발송 아이피는 거의 중국...
중국에서 메일 받을일 없으면 중국 아이피 차단!
http://star4u.org
http://mirror.star4u.org
댓글 달기