Содержание
- Введение в Akonadi
- При входе в папку IMAP появляется сообщение об ошибке «Невозможно извлечь элемент из серверной части»
- Письма не отправляются, несмотря на отсутствие сообщений об ошибке
- «Невозможно извлечь элемент из серверной части … [LRCONFLICT]»
- Поддержание чистоты областей вспомогательного хранилища данных KMail
- Исправление записей KMail «в обработке»
KMail активно развивается с 1997 года. За эти годы появилось множество ошибок, многие из них уже исправлены. Информация о старых ошибках содержится на странице вики KDE UserBase «KMail/FAQ, подсказки и советы». Также посетите главную страницу отслеживания ошибок KDE, чтобы узнать историю более свежих ошибок.
В настоящий момент (2021) многие из проблем, с которыми сталкиваются пользователи KMail, связаны с сервером Akonadi. Akonadi — это вспомогательное приложение, работающее как промежуточное звено между KMail (и другими PIM-приложениями) и фоновой службой базы данных общего назначения (наиболее распространённый вариант — это «mysqld»). Оно также обеспечивает обмен данными между процессами различных частей PIM-приложений. В зависимости от параметров системы Akonadi может запускаться во время загрузки или входа в систему. Либо оно может не запускаться до тех пор, пока не будет запущено PIM-приложение (например, KMail, KAddressBook или Kontact).
Предусмотрены две программы, позволяющие взаимодействовать с сервером Akonadi напрямую: akonadictl (программа для управления через терминал) и akonadiconsole (программа с графическим интерфейсом). Далее представлена краткая информация об обеих программах.

Отчёт о состоянии Akonadictl, запущено 32 агента
На снимке экрана изображена одна из команд, которой можно воспользоваться в программе akonadictl. Далее представлены все команды, которые распознаёт akonadictl.
~$ akonadictl start
Запускает сервер Akonadi.
~$ akonadictl stop
Останавливает сервер Akonadi.
~$ akonadictl restart
Перезапускает сервер Akonadi.
~$ akonadictl status
Выводит отчёт о состоянии, проиллюстрированный на предыдущем снимке экрана.
~$ akonadictl instances
Выводит список экземпляров сервера Akonadi (возможна одновременная работа нескольких экземпляров).
~$ akonadictl vacuum
Очищает хранилище данных Akonadi или хотя бы пытается выполнить очистку.
~$ akonadictl fsck
Выполняет проверку целостности файла. Выводимые этой командой данные могут быть достаточно объёмными, особенно если в KMail были добавлены собственные папки. Воспользуйтесь этой версией команды (с передачей вывода через конвейер в grep), чтобы проверить целостность базы данных Akonadi без лишнего вывода.
~ $ akonadictl fsck 2 >&1 | grep ^Found Found 0 external files. Found 0 external parts. Found no unreferenced external files. Found 0 parts to be moved to external files Found 0 parts to be moved to database Found 6 collections without RID. Found 0 items without RID. Found 0 dirty items.
RID — это сокращение от RemoteId, именованного поля в таблицах базы данных mysql. Если есть хотя бы одна запись без RID, это небольшая проблема, которую следует исправить. Если есть хотя бы одна запись «в обработке», это может быть серьёзная проблема, которую необходимо исправить. Подробнее — в разделах «Невозможно извлечь элемент из серверной части…» и «Исправление записей KMail в обработке» ниже.
Работа Akonadiconsole
Программа akonadiconsole предлагает двенадцать различных «окон» во внутреннее устройство приложений PIM. Ниже приведено краткое описание доступных представлений.
- Вкладка Agents.
Здесь представлен список агентов пользователя (обработчиков).
- Вкладка Browse.
На этой вкладке представлено описание различных коллекций данных, которые сопровождает Akonadi, организованное в древовидную иерархию, где показано, сколько записей хранится в каждой коллекции.
- Вкладка Debugger.
Здесь можно включить или выключить отладку и просмотреть журнал отладочных сообщений.
- Вкладка Logging.
Эта вкладка позволяет просмотреть сообщения, отправляемые разными компонентами Akonadi.
- Вкладка DB Browser.
Эта вкладка позволяет просматривать базы данных mysql. В базе данных представлено множество разных таблиц.
- Вкладка DB Console.
Здесь можно послать запрос базе данных mysql.
- Вкладка Query Debugger.
На этой вкладке можно включить или отключить отладочные запросы к базе данных. KMail отправляет запросы в базу данных mysql много раз всего за несколько секунд; выходные данные могут занимать большой объём.
- Вкладка Job Tracker.
Приложения PIM выполняют различные функции, инициируя «задачи». Эта вкладка позволяет включить или выключить слежение за этими задачами.
- Вкладка Resources Schedulers.
Эта вкладка позволяет увидеть, какие ресурсы требуются при вызове определённой функции PIM. Список ресурсов Akonadi в используемой системе расположен в папке
~/.config/akonadi/.- Вкладка Notification Monitor.
Эта вкладка позволяет просматривать уведомления, отправленные разными ресурсами Akonadi.
- Вкладка Item Search.
Эта вкладка позволяет осуществлять общий поиск. Этот поиск можно ограничить календарём, контактами, электронной почтой или заметками.
- Вкладка Monitors.
Здесь представлен список всех средств наблюдения, запущенных в Akonadi, а также их свойства. Наблюдение ведётся за агентами, ресурсами и некоторыми приложениями.