Иногда в логах почтового сервера появляются ошибки вида:
dovecot: Error: Mailbox INBOX: UID=1234: read(/mnt/mail/user/cur/...) failed
Это значит, что Dovecot не может прочитать одно конкретное письмо. Многие просто удаляют его — но если письмо важное, можно попробовать его восстановить.
Путь к повреждённому файлу обычно указан в логе. Перейдите в папку cur
пользователя:
cd /mnt/newmail/ваш-домен/пользователь@домен.ru/cur/
Файл будет выглядеть примерно так:
1750837808.M991258P12345.host,S=12345,W=12345:2,S
Посмотрите начало файла:
head -30 "имя_файла"
Если видите:
From: sender@example.com
To: вы@ваш.домен
Subject: Важное письмо
Date: ...
— значит, письмо частично целое, и его можно попытаться спасти.
Часто проблема в битых символах, переносах строк или обрыве. Почистим файл:
tr -cd '\11\12\15\40-\176' < "старое_имя" > восстановленное.tmp
Эта команда оставит только:
Переименуйте:
mv восстановленное.tmp "старое_имя"
Откройте файл в редакторе:
nano "имя_файла"
Убедитесь, что:
Можно добавить в конец:
-- Письмо было повреждено и восстановлено вручную.
Dovecot кэширует информацию. Удалите индексы, чтобы он перечитал письма:
sudo doveadm kick пользователь@домен.ru
Затем удалите файлы индексов:
rm /путь/к/пользователю/*.index* rm /путь/к/пользователю/dovecot-uidlist
При следующем входе пользователя индексы пересоздадутся.
Попросите пользователя зайти в почту (через веб-интерфейс или клиент). Письмо должно появиться.
Если:
Input/output error
— возможно, проблема с дискомread failed
, corrupted
Удалить повреждённое письмо — просто. А вот спасти — это уже мастерство. Иногда достаточно почистить файл и пересоздать индексы, и письмо возвращается к жизни. Особенно, если в нём важная переписка.
Теперь вы знаете, как попытаться его восстановить — не спешите удалять!
Внимание: Cтатьи здесь сгенерированы нейросетью, пока не правил ошибки, только запустил его да и не до этого. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
НО!
Каждый кейс я реально делал минимум один раз. Серьёзно.
Сервера стоят, клиенты довольны, дата-центры не горят.
Это не просто копипаста — это опыт, выстраданный в бою, просто пересказанный через ИИ.
Если у вас есть вопросы, или Нашли неточность? пишите в коментах —
вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.
Комментарии
Пока нет комментариев. Будьте первым!