У меня есть centos 6 VPS с ispconfig, который сейчас не в хорошей форме. Yum не подлежит ремонту, и похоже, что лучший вариант для меня - переустановка.
Я планирую сделать резервную копию, установить centos 7 и все мое серверное программное обеспечение, заново создать учетные записи и восстановить файлы на той же машине. Приобретение второй машины может быть вариантом, так как она закончится в следующем месяце, но я не уверен, что получу такую же настройку, потому что у меня есть дополнительный IP-адрес в моем плане, который мне нужен.
Мои проблемы связаны с почтовыми учетными записями postfix - я раньше использовал imapsync для миграции, но в данном случае это не сработает, потому что у меня не будет двух серверов одновременно. Похоже, я могу копировать файлы maildir и системные файлы пользователей, но мне это кажется хрупким.
Также я подумываю о переходе с ispconfig на vestacp. (Изменить: я придерживаюсь ispconfig)
Мы будем благодарны за любые предложения, которые сделают это проще. Если я ошибаюсь, дайте мне знать.
Изменить: пояснения
На этот вопрос есть и другие хорошие ответы, но они довольно теоретические. Я подумал, что вам будет полезно узнать, что я делал это несколько раз, и это нормально, но на серверах CentOS с использованием dovecot и sendmail, а в качестве формата хранения я использую mbox. Я знаю, что вы используете postfix и Maildir, и мне жаль, что я не могу пролить конкретный свет на это; Надеюсь, это все еще пригодится.
Сохраненная электронная почта будет находиться в домашних каталогах людей, обычно в ~/mail
, но они могли настроить иначе. Пока вы берете все домашние каталоги и восстанавливаете их с помощью соответствие UID / GID, сохраненная электронная почта должна быть в порядке.
Непрочитанное / неотправленное письмо находится под /var/spool/mail
. Опять же, возьмите весь этот каталог, восстановите, как указано выше, и все будет работать.
Если у меня есть конкретный совет, это
Все свалить. Не будьте избирательны. Сделайте резервную копию все, убедитесь, что он доступен для чтения, и сохраните его. VPS имеют небольшой размер, поэтому храните несколько копий (т. Е. Не пытайтесь восстановить из вашего единственного tar-файла, чтобы при случайном вводе tar c
вместо того tar t
а бекап перезаписываешь, беда). Вы никогда не знаете, какой странный файл вам нужно восстановить, чтобы все работало после перемещения.
Сейчас не время начинать что-то менять. Возможно, вы мечтали рационализировать свои UID или изменить формат хранения почты (или изменить панель управления, но мы не будем об этом говорить, потому что это сделало бы ваш вопрос не по теме для SF) но сейчас не время менять что-нибудь. Потому что ты делаешь это на месте, у вас нет подстраховки. Сейчас не время, чтобы стать умным.
Идеальная практика делает совершенство. Это VPS. Они почти ничего не стоят. Amazon буквально позволит вам получить его бесплатно. Попробуйте пробную миграцию, отточите свои навыки, когда пули не летают. Хорошо, что люди в Интернете говорят вам, что это не проблема, но это ваш файлы, ваш пользователи, ваш данные. Здорово быть уверенным!
Первый ответ от jornane, насколько это возможно, верен, однако я не верю, что он касается того, что OP действительно пытается достичь - как лучше всего справиться с миграцией электронной почты и учетных записей, а не как обрабатывать DNS.
Обычно есть много способов решить эту задачу, но потому что мы имеем дело только с одним сервером, на котором будет производиться переустановка ОС. Я приму как должное утверждение OP о том, что yum каким-то образом стал непоправимым или настолько поврежден, что ремонт будет более сложным или трудоемким, чем переустановка ОС. Я также буду считать само собой разумеющимся, что это ваш единственный доступный сервер и что вы знакомы с imapsync. Я также предполагаю, что вы используете dovecot-imapd в качестве своего IMAP-сервера, потому что postfix - это SMTP-сервер, а не IMAP-сервер (но dovecot, как я считаю, является одной из наиболее широко используемых систем IMAP с postfix).
Один из вариантов этого сценария - использовать imapsync для резервного копирования ваших учетных записей в серию бесплатных учетных записей Gmail. Сделайте резервную копию каждой учетной записи в Gmail (вы можете сделать несколько одновременно, в зависимости от того, насколько мощно работает ваш текущий сервер и какую тактику защиты от спама Google использует для IMAP в последнее время). Вы можете использовать этот скрипт:
imapsync \
--host1 your.oldserver.ext --port1 993 --user1 source@gmail.com \
--passfile1 /path/to/gmail_mirror.passfile1 --ssl1 \
--host2 imap.gmail.com --port2 993 --user2 username@yourdomain.com \
--passfile2 /path/to/gmail_mirror.passfile2 --ssl2 \
--useheader 'Message-Id' --skipsize \
--syncinternaldates --noauthmd5 -nofoldersizes \
--split1 100 --split2 100 \
Обратите внимание, что это зависит от TCP-порта IMAPS по умолчанию 993. Если вы используете IMAP с открытым текстом на своем сервере, вам следует подумать о том, чтобы не делать этого как можно скорее, а в настоящее время вы можете изменить свой порт на 143 или что-то еще, что вы используете. . Вы, вероятно, также можете использовать localhost
для host1 в первом скрипте и host2 во втором скрипте, опять же, в зависимости от ваших настроек. Вам также потребуется использовать пароль. Дополнительная информация о правильных флагах и способах их использования доступна здесь: http://imapsync.lamiral.info/OPTIONS
Чтобы выгрузить электронные письма от Google на новый сервер, вы можете сделать это, что будет работать для ваших папок Вся почта и Отправленные:
imapsync \
--host1 imap.gmail.com --port1 993 --user1 username@gmail.com
--passfile1 /path/to/gmail_mirror.passfile1 --ssl1 \
--host2 your.newserver.ext --port2 993 --user2 username@your.newserver.ext
--passfile2 /path/to/gmail_mirror.passfile2 --ssl2 \
--useheader 'Message-Id' --skipsize --allowsizemismatch \
--syncinternaldates --noauthmd5 -nofoldersizes\
--split1 100 --split2 100 \
--regextrans2 's/\[Gmail\]/username\@somedomain/' \
--include "All Mail|Sent Mail" --delete2 --expunge2
Преимущества этого подхода в том, что вероятность того, что он что-то сломает, очень мала. Потому что я исхожу из предположения, что yum
безвозвратно поврежден, и, поскольку я не знаком с этим сервером, вполне возможно, что другие компоненты также сломаны или повреждены. Этот метод очень прост и оставляет мало места для тонких ошибок.
Есть и другие варианты, которые имеют дополнительные преимущества: в первую очередь, другие варианты резервного копирования и восстановления будут намного быстрее, поскольку они не будут зависеть от подключения к Интернету. Однако для изучения этих параметров потребуется более подробная информация о вашей среде, например: действительно ли ваш сервер использует Dovecot для предоставления IMAP или другой программы? Использует ли ваш сервер какую-нибудь CMS, например cpanel или Plesk? Есть ли у вашего демона IMAP серверная часть MySQL? Вы используете системных или виртуальных пользователей?
Имейте в виду, что перенос почтового сервера может быть затруднен разными способами. Например, существует множество различных схем аутентификации, которые могут усложнить миграцию пользователей и их почтовых ящиков, в отличие от простой передачи их электронной почты, как я изложил здесь. Если вы хотите воссоздать пользователей, которые могут отправлять сообщения с использованием SMTP, используя ту же архитектуру, что и ваш предыдущий сервер, нам нужно будет взглянуть на соответствующие части ваших файлов конфигурации main.cf и IMAP (для dovecot это будет dovecot.conf) .
TL; DR Почтовые серверы будут держать сообщения в очереди несколько дней, если они не могут быть доставлены. Обычно во время миграции вам нужно изменить записи DNS, но, поскольку вы остаетесь на том же сервере (с тем же IP), в этом нет необходимости. Вы можете просто выключить сервер, установить новый, и все готово. Важно только то, что вы не должны принимать входящую почту во время миграции.
Вот что вам следует сделать:
chown
соответственно. Помните, что некоторые почтовые серверы требуют, чтобы Maildir принадлежал mail
группа (используйте chgrp
).Когда кто-то пытается доставить электронное письмо во время вашей работы, он будет остановлен брандмауэром и попытается повторить попытку позже. По этой причине доставка всех отложенных писем займет некоторое время, вплоть до пары дней. Так что предупредите своих клиентов, что их почта может задерживаться.