Quản Trị Mạng - IMAPCopy cho phép bạn sao chép một cách đệ quy tất cả các tin nhắn email và thư mục từ tài khoản IMAP khác. Nó hỗ trợ giao thức IMAP và IMAPS. Trong bài viết này chúng tôi sẽ hướng dẫn các bạn di chuyển hộp thư giữa các máy chủ IMAP bằng cách sử dụng IMAPcopy. Một số lưu ý khi sử dụng chương trình:
Trang 1Di chuyển hộp thư giữa các máy chủ IMAP với IMAPcopy
Quản Trị Mạng - IMAPCopy cho phép bạn sao chép một cách đệ quy tất cả các tin nhắn email và thư mục từ tài khoản IMAP khác Nó hỗ trợ giao thức IMAP và IMAPS Trong bài viết này chúng tôi sẽ hướng dẫn các bạn di chuyển hộp thư giữa các máy chủ IMAP bằng cách sử dụng IMAPcopy
Một số lưu ý khi sử dụng chương trình:
IMAPcopy chỉ có chức năng sao chép, không xóa mail ở hộp thư nguồn
Để sử dụng chương trình, bạn phải kích hoạt giao thức IMAP ở cả hai hộp thư nguồn và và hộp thư đích
Chỉ có thể sao chép các mail trong INBOX, không sao chép trong SENT, DELETED, TRASH… Nếu các bạn sử dụng chương trình mail client (MS Outlook, Mozilla Thunderbird,…) để giao dịch mail thì khi sao chép mail qua hộp thư mới, mail client sẽ phải download lại toàn bộ mail
Trong bài minh họa sau chúng tôi sử dụng hai máy chủ Debian hoặc Ubuntu Với các distribution khác thì quy trình cũng tương tự, chỉ khác ở phần cài đặt Java bởi IMAPcopy sẽ có sự khác biệt
Server nguồn: server1.example.com
Server đích: server2.example.com
Mục đích của chúng ta sẽ là di chuyển hộp thư sales@example.com (username: sales@example.com, password: secret) trên Server1.example.com tới hộp thư sales@example.com trên server2.example.com (username và password cũng giống như trên server1.example.com)
Ngoài ra người dùng Ubuntu cần lưu ý rằng cần chạy toàn bộ lệnh sau với quyền root, vì vậy hoặc là bạn thêm chuỗi sudo vào sau mỗi dòng lệnh hoặc trở thành root bằng lệnh:
sudo su
Chuẩn bị
Trước khi bắt đầu, chúng ta hãy kiểm tra cả hai hộp thư xem có những gì trong đó (bạn có thể làm điều này bằng một dịch vụ email client bất kỳ như Outlook,
Trang 2Thunderbird hay web mail như SquirrelMail mà chúng tôi sử dụng dưới đây) server1.example.com:
server2.example.com:
Trang 3Sau khi thực hiện như hướng dẫn sau, ba tin nhắn trong server1.example.com sẽ xuất hiện trong server2.example.com
Cài đặt IMAPcopy
Việc cài đặt IMAPcopy trên server1.example.com hay server2.example.com đều không quan trọng, thậm chí bạn có thể cài nó lên một máy thứ 3 mà không có rắc rối nào
Tuy nhiên cài đặt Java là cần thiết với IMAPcopy, vì vậy chúng ta sẽ cài đặt gói openjdk-6-jre Thêm vào đó, hãy chắc chắn rằng unzip được cài đặt để có thể giải nén gói IMAPcopy
apt-get install openjdk-6-jre unzip
Tiếp theo tải về và cài đặt IMAPcopy trong đường dẫn /usr/local/imapcopy/ như dưới đây:
cd /usr/local/
Trang 4mkdir imapcopy
cd imapcopy
wget http://imapcopy.googlecode.com/files/imapCopy0.3.1.zip
unzip imapCopy0.3.1.zip
Thực thi script /usr/local/imapcopy/imapCopy.sh:
chmod +x /usr/local/imapcopy/imapCopy.sh
Tiến hành di chuyển hộp thư
Sau khi cài đặt thành công bạn bắt đầu sử dụng IMAPcopy như sau:
/usr/local/imapcopy/imapCopy.sh protocol://user[:password]@server[:port] protocol://user[:password]@server[:port]
Giao thức này có thể dùng IMAP hoặc IMAPS Nếu tên người dùng là địa chỉ email cần lưu ý thay thế @ bằng %40 Cuối cùng dòng lệnh để sao chép các tin nhắn email từ sales@example.com trên server1.example.com tới
sales@example.com trên server2.example.com sẽ là:
/usr/local/imapcopy/imapCopy.sh
imap://sales%40example.com:secret@server1.example.com
imap://sales%40example.com:secret@server2.example.com
Và đây là một ví dụ về đầu ra:
root@server1:/usr/local/imapcopy# /usr/local/imapcopy/imapCopy.sh imap://s ales%40example.com:secret@server1.example.com imap://sales%40example.c om:secret@server2.example.com
2011-09-30 13:28:27,751 INFO ImapCopier - Starting
2011-09-30 13:28:27,751 DEBUG ImapCopier - Parameters length:2
2011-09-30 13:28:27,751 DEBUG ImapCopier - opening conections
20110930 13:28:27,751 DEBUG ImapCopier
opening imap conection to server1.example.com
20110930 13:28:28,737 DEBUG ImapCopier
opening imap conection to server2.example.com
2011-09-30 13:28:28,998 DEBUG ImapCopier - Creating target Folder: Drafts 20110930 13:28:29,030 DEBUG ImapCopier
Copying 0 messages from Drafts Folder
Trang 52011-09-30 13:28:29,033 DEBUG ImapCopier - Creating target Folder: Junk 20110930 13:28:29,058 DEBUG ImapCopier
Copying 0 messages from Junk Folder
2011-09-30 13:28:29,059 DEBUG ImapCopier - Creating target Folder: Trash 20110930 13:28:29,061 DEBUG ImapCopier
Copying 0 messages from Trash Folder
2011-09-30 13:28:29,061 DEBUG ImapCopier - Creating target Folder: Sent 20110930 13:28:29,120 DEBUG ImapCopier
Copying 0 messages from Sent Folder
20110930 13:28:29,527 DEBUG ImapCopier
Copying 3 messages from INBOX Folder
root@server1:/usr/local/imapcopy#
Lúc này trên server đích (server2.example.com) sẽ nhìn thấy những email từ máy server1.example.com:
Đ.Hải (Nguồn HowtoForge )