Иногда я вижу, как distnoted
процесс внезапно ускоряется и жует 100% ЦП (на одно ядро) и тонну памяти, часто около 1,5 ГБ или около того. Это происходит несколько раз в день, начиная примерно месяц назад.
Командная строка /usr/sbin/distnoted agent
, и она запущена launchd
, ни одна из которых не очень помогает. Обычно он работает где-то между 4 и 24 часами, прежде чем он раскручивается и привязывает процессор.
Поиски в сети говорят, что distnoted
управляет доставкой уведомлений, и многие другие люди сообщают о той же проблеме с ним, но я еще не нашел решения. Некоторые люди считают, что закрытие приложения-виновника (например, Skype) останавливает его, но я еще не нашел виновника на своей машине. Обычно я запускаю только несколько приложений: Emacs (24.2 от Homebrew), Firefox, Adium и Dash.
Я на Mavericks в конце 2012 13 "Retina MBP. Заранее спасибо!
Обновить:
Я включил distnoted
вход в системный журнал, коснувшись /var/log/do_dnserver_log
, но это не сильно помогает. Я вижу такие строки (uid 501 это я, 89 я еще не нашел):
distnoted[80011]: # distnote server agent absolute time: 48754.144787848 civil time: Wed Nov 20 10:52:03 2013 pid: 80011 uid: 501 root: no
distnoted[20]: # distnote server daemon absolute time: 2.808112262 civil time: Tue Nov 19 09:52:24 2013 pid: 20 uid: 0 root: yes
distnoted[444]: # distnote server agent absolute time: 16.656997509 civil time: Tue Nov 19 09:52:38 2013 pid: 444 uid: 501 root: no
distnoted[1271]: # distnote server agent absolute time: 52.518265717 civil time: Tue Nov 19 09:53:14 2013 pid: 1271 uid: 89 root: no
distnoted[689]: Interruption - exiting now.
Я также запустить sudo dtruss -p PID
на неактивном до distnoted
процесса, и он извергает линию , как это:
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
__disable_threadsignal(0x1, 0x0, 0x0) = 0 0
kevent64(0x3, 0x7FFF7C3FD130, 0x1) = 1 0
workq_kernreturn(0x20, 0x0, 0x1) = 0 0
...
Ответы:
Резюме от ОП : Это был отличный инструмент для отладки. Первоначально он указывал мне на то, что Spotlight переиндексирует файловую систему, но я сузил все, что разрешено индексировать, и все еще видел проблему. Я закончил тем, что установил работу cron, чтобы регулярно убивать distnoted. Смотри ответ дальше вниз.
Вы можете отлаживать distnoted путем создания файла.
/var/log/do_dnserver_log
Это заставляетCFNotificationCenter
server (distnoted
) записывать информацию обо всех уведомлениях в системный журнал.Я бы начал там, перезагружался и смотрел системный журнал, когда процессор нагонял. Это должно легко выявить виновника.
Более подробную информацию об
CFNotificationCenter
отладке можно найти в официальных документах для разработчиков здесь: Техническое примечание TN2124> CFNotificationCenterисточник
/var/log/system.log
, но это также не ускорилось, так как я начал регистрацию. скрещенные пальцы.Nov 23 07:56:15 hell.local distnoted[2644]: # distnote server agent absolute time: 77.445654904 civil time: Sat Nov 23 07:56:15 2013 pid: 2644 uid: 89 root: no
sudo dtruss -p PID
и посмотрите, какие системные вызовы действительно пытается сделать процесс, и если есть какие-либо сбойные (состояние не равно 0).strace
, но я не знал оdtruss
. Я обязательно попробую это в следующий раз. pids - это просто соответствующий процесс distnoted, и единственные uids - это я и_appserveradm
пользователь встроенной системы, о котором я мало что знаю.Я тоже это видел. Emacs 24.3.1, Mavericks 10.9.
Я обнаружил, что процесс distnoted успокаивается в течение нескольких секунд после выхода из Emacs.
Я подал ошибку Emacs здесь: http://permalink.gmane.org/gmane.emacs.bugs/80836
источник
Я знаю, что опаздываю на вечеринку, но это утечка памяти, характерная для Emacs Cocoa на Mavericks, которая исправлена в стволе. На данный момент есть патч, который вы можете использовать для сборки emacs 24.3 только с исправлением.
https://gist.github.com/anonymous/8553178
источник
brew reinstall emacs --cocoa --with-gnutls
может решить проблему тоже. Это также должно быть исправлено в 24.4, но это еще не достигло стабильной.top
), а убийство -9 emacs не работало, но после убийства -HUP разошелся, emacs отреагировал на убийство.У меня были те же проблемы с
distnoted
El Capitan в течение некоторого времени. Мое решение не такое суровое, как его регулярное убийство, скорее я проверяю его выход из-под контроля (высокая загрузка ЦП), а затем убиваю его. Я использую этот скрипт:Скрипт запускается из cron каждую минуту с этой строкой в crontab:
На практике сценарий убивает
distnoted
один или два раза в день, и обычно это происходит послеbackupd
запуска.Для тех, кому неудобно использовать оболочку OS X (командная строка), следующий скрипт установит как
checkdistnoted
скрипт, так и запись crontab:Вам нужно сохранить вышеперечисленное как
install_checkdistnoted.sh
на рабочем столе, затем запуститьApplications/Utilities/Terminal
и набрать:Если он работает полностью, он напечатает подтверждение каждого из шагов. Скрипт не будет перезаписывать существующий
checkdistnoted
скрипт или запись в crontab.источник
Я сдался и взял кувалдный подход: убивай его автоматически, каждую минуту. вздох.
я положил это в
~/Library/LaunchAgents/org.snarfed.pkill_distnoted.plist
:а затем установил его с
launchctl load ~/Library/LaunchAgents/org.snarfed.pkill_distnoted.plist
.источник
disnoted
есть оперативная память.disnoted
вчера я съел 63 ГБ оперативной памяти на моей High Sierra. Даже Райан, в своем вопросе, утверждает, что процесс жевал тонну памяти .Я делал разные комбинации для удаления настроек, чтобы сузить это поведение; Я думаю, что это режим коминтов. На 10.9 с emacs 24.3.1 из homebrew (или из emacsforosx) утечка distnoted + emacs (они оба медленно увеличивают потребление памяти) произойдет с одним открытым буфером режима оболочки. Не будет, если вы просто посетите файлы.
Просто хотел отметить это здесь, gmane, кажется, не работает, и я продолжаю находить эту дискуссию в моем дважды в неделю поиске продолжения этой проблемы.
источник
Я думаю, что могу вспомнить только 2 случая, когда distnoted стала бесполезной. В этом случае двое из них сидели на вершине списка процессоров, и один был более 400%. Это произошло вскоре после возвращения в офис и подключения пары внешних дисплеев - один из которых питается от USB - я предположил, что это может быть связано. Я больше ничего не делал, чтобы попытаться решить проблему, прежде чем вытащить USB-дисплей, который мгновенно вернул здравомыслие. И затем его подключение не привело к повторным проблемам.
Что доказывает что? Без понятия!
Я подключаю их сотни раз, и мне впервые пришло в голову, что это может быть связано. И поскольку это происходит не каждый раз, когда я их подключаю, это может быть связано с тем, что они слишком быстро подключаются друг к другу, или что-то в этом роде. Во всяком случае, я бы поделился, если другие люди обнаружат, что это связано с подключением периферийных устройств (если это внешний экран).
источник
Похоже, это происходит, когда приложение каким-то образом неправильно использует API уведомлений, предоставляемый macOS. В моем случае виновником был iTerm2. После его выхода
distnoted
процессы вышли. Другие выявленные виновники - это Emacs и iTunes.источник
Что бы это ни стоило, я смог решить эту проблему, отключив антивирусное программное обеспечение.
источник
Это случилось и со мной, distnoted с ума сходила. После закрытия кучки приложений ничего не помогло.
Затем я заметил, что одно из диалогов «Сообщить в Apple» из сбойного процесса Python оставалось открытым всю ночь.
Хотя это могло быть просто совпадением, после закрытия диалога процесс с разделением на части успокоился.
источник
Я столкнулся с подобной проблемой с distnoted несколько месяцев назад и не мог отследить, почему загрузка ЦП достигла 100%. Наконец,
killall distnoted
каждые две минуты я добавлял запись в свой crontab, что решало мою проблему.Недавно у меня возникла проблема с Sublime Text, когда при наборе текста
subl path/to/file
не удалось правильно открыть файл в Sublime Editor. Перезапуск приложения устранил проблему, но это быстро начало происходить снова.После того, как я без конца ломал голову, я обнаружил тот факт, что каждые две минуты я убивал разобщенный процесс, и почему команда subl таинственным образом перестала работать.
Вывод: сверхвысокая загрузка ЦП могла быть связана с возвышенным. Теперь, когда Sublime обновился, надеюсь, мой вывод верен, загрузка ЦП остается низкой, и моя команда subl возвращается к работе, как и ожидалось, теперь, когда distnoted снова работает, и мой crontab не убивает процесс каждые 2 минуты.
источник
У меня тоже была эта проблема, довольно давно, но периодически. Очевидно, что distnoted является частью iTunes и также вызывает проблемы в Windows . Когда я убил iTunes (который проигрывал песню),
distonted
процесс, который использовал 400% моего процессора (у меня 4 ядра), перестал быть проблемой.Поэтому мой ответ, пока я не узнаю лучше, - рекомендовать вам убить iTunes, а не
distnoted
сообщать нам, что происходит.источник
Я также вижу distnoted go haywire, в моем случае это похоже на fontd. У меня есть три запущенных дистрибутива, один для _spotlight, один для _distnote и один для моего пользователя.
Всякий раз, когда distnoted потребляет процессор (30-90%), шрифтщик и fontd съедает по 30-60% процессора каждый. Как только я убиваю fontd, distnoted и fontworker для моего пользователя успокаивается. Убийство шрифтовщика ничего не делает. Через пару минут после перезапуска и запуска fontd все начинается снова.
Я понятия не имею, почему это происходит ...
источник
Питер Бакли прав, я не прав. Я ненавижу, когда это происходит.
Не удаляйте distnoted, следующая загрузка будет совсем не веселой.
источник
distnoted
как упомянул ConorR (а позже исправили, спасибо!), Требуется загрузка OSX (10.9.5 в моем случае).