Назад | Перейти на главную страницу

cyrus imapd сломан после восстановления сервера из резервной копии

Мне пришлось восстановить vserver с запущенной установкой cyrus imapd из 24-часовой резервной копии. После этого время ожидания клиентов imap истекает, и журнал заполняется следующей информацией:

хвост /var/log/mail.info:

24 декабря 20:59:16 h2229778 cyrus / master [3570]: pid уведомления службы 10857 в состоянии READY: аварийное завершение

24 декабря 20:59:16 h2229778 cyrus / master [3570]: процесс 10858 завершен, сигнал смерти 11

Перезапуск через сценарий инициализации дает следующее:

./cyrus-imapd restart
* Restarting Cyrus IMAPd cyrmaster
find: /run/cyrus/lock': No such file or directory
find: /run/cyrus/proc': No such file or directory

без изменения поведения.

Я нашел много сообщений для обеих цитат, но мало что связано с моей проблемой. Однако я подозреваю, что одна из баз данных cyrus была повреждена.

Может в этом проблема?

Как я могу определить настоящую причину?

Если это проблема с базой данных, как я могу их правильно восстановить?

Я использую cyrus 2.4.12-2.

Большое спасибо!

Отсутствие файлов блокировки указывает на то, что cyrus не работает, возможно, база данных повреждена.

Вы можете попробовать восстановить БД, используя:

sudo -u cyrus ctl_cyrusdb -r

Он не показывает никаких результатов, вы можете открыть tail -f для syslog, чтобы увидеть, что происходит.

Если это не удается, вы можете попробовать удалить / var / lib / cyrus / db / * и снова выполнить ту же команду.

Хорошая идея - создать резервную копию всех пользователей в текстовом файле, вы можете сделать это с помощью этой команды:

sudo -u cyrus /usr/sbin/ctl_mboxlist -d > /tmp/mboxlist.txt

Вы можете воссоздать пользовательскую БД из этого файла позже, используя:

cat /root/mboxlist.txt | sudo -u cyrus /usr/lib/cyrus/bin/ctl_mboxlist -u

Примечание. Все пути указаны для Debian, в других дистрибутивах Linux они могут отличаться.