У меня есть клиент, который создал около 20 почтовых ящиков на сервере, и они используют их в течение нескольких недель. Так что в них есть почта, которую нельзя потерять.
Теперь они восстановили резервную копию этих почтовых ящиков от старой хостинговой компании и хотят, чтобы я объединил эти резервные копии с текущими почтовыми ящиками. Я много чего пробовал с dsync и doveadm sync, но не могу найти правильный синтаксис, может ли кто-нибудь мне помочь?
По сути, я просто хочу объединить, скажем, / home / backup / account1 / Maildir с /home/vmail/domain.tld/account1/. На этом сервере account1@domain.tld уже будет ссылаться на /home/vmail/domain.tld/account1 в соответствии с конфигурацией dovecot, поэтому я должен иметь возможность использовать -u, если я правильно это понимаю, но как мне ссылаться на резервную копию ? похоже, что синхронизация doveadm совместима только с другим сервером dovecot, которого у меня нет? Я думал о том, чтобы просто настроить совершенно другой почтовый сервер и использовать imapsync, который действительно прост в использовании, но я думаю, что должен быть способ сделать это с помощью doveadm sync или dsync, который не требует потери времени. Спасибо
Вы можете использовать программное обеспечение imapcopy или imapsync для объединения серверов. Я постоянно использую его для резервного копирования почты. Обратной стороной является необходимость знать пароли к учетным записям.
Некоторое время назад я перенесла почту с тарифного плана на мой почтовый сервер, объединив почтовые ящики. Как и у вас, у меня была резервная копия maildirs, которая фактически содержит структуру каталогов / файлов вашего почтового ящика IMAP. Если вы сделаете ls -la
в /home/backup/account1/Maildir
вы должны увидеть что-то вроде:
# ls -la
drwx------. 19 vmail vmail 4096 4 mag 18.15 .
drwxr-xr-x. 3 vmail vmail 4096 29 nov 17.23 ..
drwx------. 2 vmail vmail 4096 4 mag 18.15 cur
-rw-------. 1 vmail vmail 496 4 mag 18.15 dovecot.index
-rw-------. 1 vmail vmail 28656 4 mag 18.09 dovecot.index.cache
-rw-------. 1 vmail vmail 40 4 mag 18.15 dovecot.index.log
-rw-------. 1 vmail vmail 32864 4 mag 18.15 dovecot.index.log.2
-rw-------. 1 vmail vmail 23 15 feb 11.22 dovecot-keywords
-rw-------. 1 vmail vmail 360 29 nov 17.39 dovecot.mailbox.log
-rw-------. 1 vmail vmail 485 4 mag 18.09 dovecot-uidlist
-rw-------. 1 vmail vmail 8 29 nov 17.49 dovecot-uidvalidity
-r--r--r--. 1 vmail vmail 0 29 nov 17.37 dovecot-uidvalidity.565b29d3
drwx------. 5 vmail vmail 4096 15 feb 16.24 .Drafts
drwx------. 5 vmail vmail 4096 30 nov 10.38 .Job
drwx------. 5 vmail vmail 4096 3 mag 22.48 .Junk
-rw-------. 1 vmail vmail 3056 4 mag 18.09 maildirsize
drwx------. 2 vmail vmail 4096 4 mag 18.15 new
drwx------. 5 vmail vmail 4096 29 nov 17.39 .Newsletter
drwx------. 5 vmail vmail 4096 30 nov 10.38 .Personali
drwx------. 5 vmail vmail 4096 15 feb 16.24 .Sent
-rw-------. 1 vmail vmail 140 29 nov 17.39 subscriptions
drwx------. 2 vmail vmail 4096 4 mag 18.09 tmp
drwx------. 5 vmail vmail 4096 29 mar 22.44 .Trash
каждый .Something
Каталог - это папка IMAP, содержащая:
# ls -la .Trash/
drwx------. 5 vmail vmail 4096 29 mar 22.44 .
drwx------. 19 vmail vmail 4096 4 mag 18.15 ..
drwx------. 2 vmail vmail 4096 29 mar 22.43 cur
-rw-------. 1 vmail vmail 7060 29 mar 22.44 dovecot.index.cache
-rw-------. 1 vmail vmail 3136 29 mar 22.44 dovecot.index.log
-rw-------. 1 vmail vmail 10 2 gen 20.46 dovecot-keywords
-rw-------. 1 vmail vmail 957 29 mar 22.43 dovecot-uidlist
drwx------. 2 vmail vmail 4096 15 lug 2015 new
drwx------. 2 vmail vmail 4096 29 mar 22.43 tmp
cur
и new
папки содержат ваши письма для этой папки IMAP (каждый файл - это почта), tmp
является временным каталогом и должен быть пустым:
# ls -ls .Trash/cur/
4 -rw-------. 1 vmail vmail 2039 22 ott 2015 1445534803.M462117P23470V0000000000000901I000000000122C00E_0.srv-nya,S=2039:2,S
4 -rw-------. 1 vmail vmail 1191 2 gen 20.45 1451763951.M751917P11002.srv-nya,S=1191,W=1223:2,Sa
64 -rw-------. 1 vmail vmail 64457 4 feb 14.57 1454594258.M272724P14796.srv-nya,S=64457,W=65380:2,S
8 -rw-------. 1 vmail vmail 5163 7 feb 13.41 1454848911.M448032P9360.srv-nya,S=5163,W=5256:2,S
4 -rw-------. 1 vmail vmail 2156 24 feb 10.18 1456305519.M460217P17448.srv-nya,S=2156,W=2200:2,S
4 -rw-------. 1 vmail vmail 2193 24 feb 12.07 1456312052.M200955P5273.srv-nya,S=2193,W=2237:2,Sa
4 -rw-------. 1 vmail vmail 2200 24 feb 12.12 1456312374.M662245P6161.srv-nya,S=2200,W=2243:2,Sa
4 -rw-------. 1 vmail vmail 1518 21 mar 21.36 1458592592.M566137P20473.srv-nya,S=1518,W=1557:2,Sa
12 -rw-------. 1 vmail vmail 9784 29 mar 12.29 1459247350.M595698P12652.srv-nya,S=9784,W=9937:2,Sa
8 -rw-------. 1 vmail vmail 5176 29 mar 13.10 1459249819.M474900P19505.srv-nya,S=5176,W=5269:2,Sa
8 -rw-------. 1 vmail vmail 5325 29 mar 14.43 1459255390.M406958P2566.srv-nya,S=5325,W=5427:2,Sa
8 -rw-------. 1 vmail vmail 5668 29 mar 19.08 1459271296.M76075P16861.srv-nya,S=5668,W=5765:2,Sa
8 -rw-------. 1 vmail vmail 5673 29 mar 19.16 1459271792.M922218P18404.srv-nya,S=5673,W=5770:2,Sa
8 -rw-------. 1 vmail vmail 5755 29 mar 20.12 1459275164.M71573P28250.srv-nya,S=5755,W=5853:2,Sa
8 -rw-------. 1 vmail vmail 5622 29 mar 21.26 1459279615.M929486P8464.srv-nya,S=5622,W=5718:2,Sa
Вы также можете увидеть некоторые dovecot.something
файлы, которые являются файлами поддержки для dovecot и maildirsize
файл, содержащий информацию о вашей квоте IMAP (если она включена).
Если ваш старый хостинг использует что-то отличное от dovecot (например, courier), вы увидите похожие файлы с такими именами, как courier.*
.
Если вы хотите объединить старые и новые почтовые ящики, вы можете переместить все файлы почты (например, 1459279615.M929486P8464.srv-nya,S=5622,W=5718:2,Sa
) в соответствующий каталог в новом почтовом ящике.
Для этого вы можете:
ПЕРЕД НАЧАЛОМ СОЗДАТЬ РЕЗЕРВНУЮ КОПИЮ СТАРЫХ И НОВЫХ ПОЧТОВЫХ ЯЩИК
Рекурсивно удалить все dovecot.*
файлы и maildirsize
из резервной копии
Переместите / скопируйте все остальные файлы в новый почтовый ящик, объединив каталоги (вы сможете сделать это с помощью cd /home/backup/account1/Maildir
&& rsync -av --progress . /home/vmail/domain.tld/account1/
). Примечание: имена файлов писем обычно содержат имя хоста почтового сервера, поэтому конфликтов имен не должно быть.
При необходимости рекурсивно исправляйте права доступа / владение файлом / контекст SELinux для нового почтового ящика
Удалить maildirsize
файл из нового почтового ящика, чтобы исправить счетчик квот (dovecot воссоздает его, когда в этот почтовый ящик будет доставлено новое письмо, исправляя ошибки)
Из вашего почтового клиента подпишитесь на все папки IMAP (если необходимо, а не автоматически)
Это сработало для меня, если вы хотите попробовать, я рекомендую вам сначала протестировать его на копии почтового ящика (например, создать новый почтовый ящик с именем test@yourdomain.com, скопировать в него все файлы почтового ящика account1@yourdomain.com, исправить разрешение / владение файлом, убедитесь, что он работает через веб-почту / IMAP-клиент, объедините почтовые ящики, как было сказано ранее, отправьте письмо на test@yourdomain.com, чтобы принудительно создать maildirsize, и снова проверьте через клиент IMAP, что вся почта читается)