썬더번드 백업시 용량문제

Mozilla Thunderbird 사용에 대한 일반적인 질문과 답을 해 주는 게시판입니다. 질문을 하기 전에 FAQ를 읽어 보시는게 도움이 될 것입니다.
Post Reply
백업

썬더번드 백업시 용량문제

Post by 백업 »

메일 용량이 많아 지면서 백업할 때 용량을 생각하게 되는데요,
저 같은 경우엔 이런 문제가 있습니다.
주로 사진을 첨부파일형식이 아닌, 메일내용에 직접삽입하는 형식으로
해서 보내는데, 그러다보니까, 벌써 보낸편지함의 sent파일이 600메가가
넘습니다.

이렇게 사진을 메일내용에 집어 넣어 보내는 경우, 사진을 제외하고
텍스만 따로 저장해 둘 수 있는 방법은 없는지 궁금합니다.

첨부파일 분리해주는 확장이 있다고 하는데, 이런 경우에도 해당되는 건가요?

도움부탁드려요.
jeongkyu
서포터즈
서포터즈
Posts: 85
Joined: 2004 11 25 08:07 31
Contact:

Post by jeongkyu »

첨부파일 분리는 베타 테스트 중인 1.5 부터 자체적으로 지원하는 기능인데, 삽입한 이미지를 분리하는 기능은 아직 없는 것 같습니다.

한가지 방법이 있다면 간단한 프로그램으로 메일박스를 직접 조작하는 것입니다.영문 버전을 사용하는 경우, 선더버드 프로파일 디렉토리 안에서 Sent, Sent.msf 라는 파일을 찾을 수 있습니다. 여기서 Sent 라는 파일은 mbox 형태로 저장된 보낸 편지함의 메일들이고 Sent.msf 는 인덱스와 메일에 대한 메타 정보를 포함한 데이터베이스 파일입니다.

mbox 의 데이터를 변경하는 여러가지 방법이 있겠지만, 이것 저것 시도해보니 python을 이용해서 스크립트를 작성하는 것이 제일 쉬운 것 같습니다. 아래는 제가 작성한 간단한 스크립트 입니다. (제 첫번째 python 프로그램입니다. 공부하면서 짠 것이라 조금 부실하네요. :-))

Code: Select all

import mailbox
import email
import base64

replaced_image = base64.encodestring(open("removed.png","rb").read())

fp_in = open("mbox")
firstline = fp_in.readline()
mbox = mailbox.UnixMailbox(fp_in, email.message_from_file)

fp_out = open("mbox_out","w")
fp_out.write(firstline)
msg = mbox.next()
while msg != None :
	for part in msg.walk():
		if part.get_content_maintype() == "image" and part['Content-ID'] :
			part['Content-Type'] = 'image/png'
			part['filename'] = "removed.png"
			part.set_payload(replaced_image)
			
	fp_out.write(msg.as_string())
	msg = mbox.next()

fp_out.close()
스크립트를 이용하는 방법은 다음과 같습니다.

0. Python 이 없으면 설치해야겠죠?
1. 선더버드를 띄워 보낸 편지함을 압축하고 나서 선더버드를 종료합니다.
2. Sent 파일을 임의의 디렉토리에 복사하고 파일 이름을 mbox 로 바꿉니다.
3. 같은 디렉토리에 위 스크립트를 replace_image.py 라는 이름으로 저장합니다.
4. 원본 이미지가 삭제되었다는 것을 알려주는 작은 이미지를 하나 만들어서 removed.png 로 저장합니다.
5. 명령줄에서 python replace_image.py 를 실행합니다.
6. 스크립트가 종료되면 원본 이미지가 작은 이미지로 바뀐 mbox_out 이라는 메일 박스가 생깁니다.
7. 파일 이름을 Sent로 바꾸고 프로파일 디렉토리에 덮어 씁니다.
8. 프로파일 디렉토리에 있는 Sent.msf 를 삭제합니다. ( 이 파일은 선더버드를 시작할 때 자동으로 다시 생깁니다)
9. 선더버드를 다시 띄웁니다~.

한가지 문제는 msf 파일을 새로 생성하기 때문에 저장된 메타 정보(Read/Unread, Flag 정도 등) 가 없어진다는 것인데, 보낸 편지함이라면 별 문제가 없겠죠? 이것이 괜찮다면 스크립트를 한 번 이용해보시기 바랍니다. 설명은 복잡한데 알고 보면 간단한 일입니다.

제가 테스트할 때 사용한 removed.png 와 replace_image.py를 압축해서 올려놓았으니 참고하시길 바랍니다.
http://oooko.net/gomme/wp-content/uploa ... _image.zip
김정규
한국 오픈오피스 커뮤니티 운영자
http://openoffice.or.kr
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest