Сервисы akonadi и mysqld используют слишком много памяти в kubuntu 16.04

Недавно я установил kubuntu 16.04 на свою Dell Studio xps 1640, на которой установлено 8 ГБ памяти. Все работает нормально, но что-то действительно беспокоит меня. После новой загрузки, когда я проверяю системные ресурсы, mysqld занимает около 150~200MB of RAM и работает куча akonadi сервисов (контакты, день рождения, почта *, sendalter & ...), и я действительно не ' Мне не нужны эти сервисы, и это пустая трата памяти. Но серьезная проблема связана с mysqld, через некоторое время (3-4 часа) mysqld занимает около 800MB~1GB оперативной памяти, и он не освободится, пока я не перезагружу систему. Я должен отметить, что у меня нет никаких работающих баз данных и я вообще не использую mysql! Так что только Ubuntu использует это.

Итак, мой вопрос заключается в следующем:

  • Во-первых, как я могу отключить (удалить) нежелательные сервисы akonadi и не позволить им автоматически запускаться и запускаться (я отключил akonadiserver) но не помогло). Единственный сервис, который я использую от akonadi - это krunner, и мне действительно не нужны kMail, Calendar и ...

  • Во-вторых, почему mysqld использует этот объем памяти (хотя я предполагаю, что это связано с проблемой akonadi, упомянутой выше, потому что процесс Parent of mysqld является akonadiserver) и как я могу предотвратить это. потому что моя работа связана с использованием оперативной памяти, и мне действительно нужна память, поэтому я не могу позволить, чтобы нежелательные службы использовали такое количество ресурсов.

Я очень ценю, если вы поможете мне решить эту проблему. Заранее благодарим за помощь.

10
задан 29 May 2016 в 19:45

7 ответов

Пока человечность не обеспечивает фиксацию для этой проблемы, я нашел обходное решение!

я использую команду pkill -f akonadi и добавляю его к запуску. Параметры настройки системы>> Запуск & Завершение работы>> Автоматический запуск. использование этой команды, все akonadi сервисы уничтожаются при запуске и процессе mysqld, будет уничтожено наряду с ним, и вся память, занятая ими, будет освобождена.

после этого все обычно работает, и я не нашел ошибок или missfunctionalities вообще.

Удаление akonadi сервисы

команда sudo apt-get remove --purge kmail akonadi-server Using можно удалить akonadi-сервер и все, что это интегрировало сервисы без любых вредных изменений в системе. этим путем использование памяти идет, менее чем 500 МБ и mysqld не выполнят и возьмут ресурсы.

0
ответ дан 30 May 2016 в 05:45
  • 1
    Большое спасибо, @Sergiy Kolodyazhnyy, насколько я понял Ваш ответ, я должен буду передать выходную строку по каналу функции sum_line_tokens в другой сценарий, который - прежде, чем выполнить другую операцию - снова преобразовал бы его в массив. Пожалуйста, объясните Свой упомянутый подход вместо этого наличия ' локальный массив в основном, которое тогда может быть доступно для дочернего functions'? – brunuser 18 September 2017 в 08:57

У меня была та же проблема, и хотя я не знаю, как удалить akonadi, я удалил приложения, которые делают использование из него: свяжитесь, kaddressbook, kmail, узлы и korganizer. Akregator, кажется, не запускает akonadi, таким образом, я позволяю, он установил.

sudo apt-get remove kontact kaddressbook kmail knotes korganizer

Мое использование памяти уменьшилось почти с 900 МиБ меньше чем до 500 МиБ после запуска благодаря akonadi, не запускаемому. Поскольку akonadi не запускается, ни один, которым случается так, что процесс mysqld, который заканчивает трату больше чем 800 МиБ через некоторое время (делающий использование общей памяти 1.5 ГиБ без любого другого выполнения программы).

, Если Вы не хотите удалять это приложения, можно закрыть их всех от системного лотка. В моем случае там выполняли kmail и korganizer. В случае korganizer необходимо снять флажок с опцией напоминания событиям от его значка в системном лотке (я думаю, что это появляется как демон напоминания о событиях или что-то подобное). Таким образом, в следующий раз, когда Вы загружаете компьютер, это обрабатывает, не будет инициализирован, и akonadi не будет запущен.

, Но знать, запуская любое из этого приложения только однажды запустят akonadi, пока Вы не закроете компьютер, он не уничтожается при закрытии приложения (примечание: можно остановиться, это от терминала с 'akonadictl останавливается').

0
ответ дан 30 May 2016 в 05:45
  • 1
    Уверенный @brunuser, я могу добавить это также. I' m работающий над добавлением awk версия к решению, также. – Sergiy Kolodyazhnyy 18 September 2017 в 09:17

Если Вы хотите отключить сервисы вместо того, чтобы удалить их для предотвращения будущих проблем зависимости, можно просто отключить их путем редактирования конфигурационного файла.

Для отключения сервера отредактируйте akonadi конфигурационный файл сервера по телефону ~/.config/akonadi/akonadiserverrc.

Изменение StartServer=true к StartServer=false.

0
ответ дан 30 May 2016 в 05:45
  • 1
    если я могу быть свободен задать другой вопрос: Вы знаете об изящном способе выполнить функцию sum_line_tokens для [только 112] n строки , независимо от того, насколько больше строк (т.е. бесконечный в случае ttylog) сгенерировано функцией generate_lines? – brunuser 18 September 2017 в 09:36

Я встретился с этой проблемой также, и pkill является немного жестоким, я думаю

, Так как я не использую akonadi зависимых заявок, которые я подаю akonadictl stop, когда mysqld становятся слишком много взвешенными. Это не перезапустит, пока я не запущу что-то как Kmail, Kontact, что средства никогда! К сожалению, это возобновится на перезагрузке. Я не сделал нашел любое решение зафиксировать это постоянно

0
ответ дан 30 May 2016 в 05:45
  • 1
    Средний раздел этого ответа о каналах и подоболочках является фактической базовой проблемой, даже для OP' s исходный сценарий. Используя альтернативу каналу это doesn' t работают linesToArraySum / sum_line_tokens в подоболочке, полная фиксация, даже без другие изменения как предварительное объявление arraySum и использование main функция. OP' s исходный код будет работать , если, вместо того, чтобы передать по каналу от echo, здесь представят в виде строки - или что-нибудь это doesn' t работают, функция в подоболочке - используется. После этих слов я действительно соглашаюсь искренне с советом использовать awk для этого! – Eliah Kagan 18 September 2017 в 13:16

Это фиксируется в MySQL 5.7.13 (см. Ошибку 80772): https://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-13.html#mysqld-5-7-13-bug

Это зафиксировало его для меня.

В данный момент последняя версия, доступная через Кв., 5.7.12 так для получения 5.7.13, можно использовать одну из опций здесь: https://dev.mysql.com/downloads/mysql /

Занимают время все же. Я использовал MySQL PPA для установки и срочно отправил все это, и теперь я повредил Akonadi в Kubuntu. То, которым это кажется, трудно зафиксировать.

0
ответ дан 30 May 2016 в 05:45
  • 1
    @brunuser сделан. Я обратился к тому комментарию также – Sergiy Kolodyazhnyy 18 September 2017 в 10:15

Только для ссылки: Это считают mysql ошибкой и прослеживают в https://bugs.launchpad.net/bugs/1576930

До сих пор, ответ от Firouziam является корректным обходным решением для тех, которые не используют kdepim.

0
ответ дан 30 May 2016 в 05:45
  • 1
    благодарен за то, что George выручает меня путем форматирования моего сообщения/ответа. – SIDDHARTH 18 September 2017 в 07:15

Вы также можете переключиться на SQlite3 в качестве серверной части.

Хотя это официально не поддерживается, есть сообщения, что это уменьшает объем памяти.

инструкцию можно найти здесь: https://shevchuk.co/notes/2018/03/04/reduce-akonadi-memory-usage-to-40-mb

0
ответ дан 9 June 2020 в 12:45

Другие вопросы по тегам:

Похожие вопросы: