DB_RUNRECOVERY (Если почты под рукой не будет)
У cyrus (например при некорректном завершении) могут слетать пермиссии на файлы в папке
/var/imap/db
Понять это можно по словам в логе (system.log)
Dec 26 13:08:56 mahler mbpath[8485]: DBERROR: init() on berkeley
Dec 26 13:08:56 mahler mbpath[8485]: DBERROR db4: environment not yet opened
Dec 26 13:08:56 mahler mbpath[8485]: DBERROR: opening /var/imap/mailboxes.db: Invalid argument
Dec 26 13:08:56 mahler mbpath[8485]: DBERROR: opening /var/imap/mailboxes.db: cyrusdb error
Dec 26 13:08:56 mahler mbpath[8486]: DBERROR db4: fatal region error detected; run recovery
Dec 26 13:08:56 mahler mbpath[8486]: DBERROR: dbenv->open ‘/var/imap/db’ failed: DB_RUNRECOVERY: Fatal error, run database recovery
Рекаверить (
$ su root
# mv /var/imap /var/imap.old
# mkdir /var/imap
# /usr/bin/cyrus/tools/mkimap
# chown -R cyrus:mail /var/imap
# sudo -u cyrus /usr/bin/cyrus/bin/reconstruct -i
)
ничего не нужно!
Для начала следует проверить права доступа:
[mahler:/var/log] root# ls -al /var/imap/db
total 52416
drwxr-xr-x 10 cyrus mail 340 26 Dec 13:08 .
drwxr-xr-x 15 cyrus mail 510 26 Dec 13:18 ..
-rw——- 1 cyrus mail 8192 26 Dec 13:08 __db.001
-rw——- 1 cyrus mail 663552 26 Dec 13:08 __db.002
-rw——- 1 cyrus mail 98304 26 Dec 13:08 __db.003
-rw——- 1 cyrus mail 18563072 26 Dec 13:08 __db.004
-rw——- 1 root mail 32768 26 Dec 13:08 __db.005
-rw-r–r– 1 cyrus mail 0 31 May 2005 log.0000000001
-rw——- 1 cyrus mail 7464789 26 Dec 13:08 log.0000000065
-rw——- 1 cyrus mail 4 26 Dec 08:13 skipstamp
и исправить:
chown cyrus:mail __db.005 (или все файлы в каталоге)


Комментариев: 1
Всё хорошо. Но папки, они на полке, а у компьютера это директории, как ни крути.
Автор: Анонимный Блюститель Грамотной Речи | 12/26/2005 в 22:04