opendirectoryd потребляет 40% процессора

22

У меня есть MacBook Pro с процессором Lion 10.7.2, 2,26 ГГц и 2 ГБ оперативной памяти DDR3.

Если я позвоню

top -o cpu

/usr/libexec/opendirectorydпроцесс потребляет более 40% CPU.

$ ps aux | grep opend                                                                       
root 27834 40,4 0,3 2472048 5780 ?? Rs 6:36PM 167:19.66 /usr/libexec/opendirectoryd

введите описание изображения здесь

Хуан Пабло
источник
@slhck /usr/libexec/opendirectoryd
juanpablo

Ответы:

22

Проблема связана с неработающими символическими ссылками в Dropbox. Найдите их, используя:

find ~/Dropbox -type l -printf "%Y %p\n" | grep "^N"

Решение: удалить мертвые символические ссылки. Если findнет printfвозможности, используйте:

find -L ~/Dropbox -type l

Ссылки

Чтобы найти мертвые символические ссылки

Хуан Пабло
источник
Интересно, как у вас появилось первое решение для работы с BSD findв OS X. Вам нужно как минимум установить GNU, findutilsчтобы получить эту printfопцию.
slhck
Я установил findutils find --version 13:17 find (GNU findutils) 4.4.2
juanpablo
Хорошо, хорошо, он не поставляется с OS X, так что команда, которую вы использовали, не сработала бы.
slhck
BSD-версия команды find, в которой перечислены неработающие символические ссылки: find '~/Dropbox' -type l -print0 | xargs -0 file | grep broken
Петр Чапла
11

Как уже упоминалось @juanpablo, это может быть вызвано символическими ссылками.

По-видимому, если символическая ссылка указывает на /home, autofs или automountd срабатывают и требуют много ресурсов процессора, чтобы выяснить, что это место действительно не существует.

Посмотрите на /etc/auto_homeи /etc/autofs.conf.

Чтобы увидеть, если вы столкнулись с этой конкретной проблемой, установите

AUTOMOUNTD_VERBOSE=TRUE

опция в autofs.conf, перезапустите automountd

sudo launchctl stop com.apple.automountd

и просмотрите файл syslog.log (вы можете использовать приложение: Консоль). Эта проблема затрагивает вас, если вы видите нечто подобное:

May 20 17:53:43 xxx automountd[31709]: od_search failed

Чтобы обойти это, отредактируйте файл /etc/auto_masterи удалите (или хэшируйте #) строку, начинающуюся с /home. Затем запустите:

sudo automount -vc
Marek
источник
1
Спасибо, это также решило мою проблему, и это было связано с Dropbox - у меня были неработающие ссылки /homeв моей папке Dropbox (оставшиеся резервные копии из предыдущих систем), которые вызывали такое поведение. Отключение /homeв auto_home исправило это.
zzamboni
1

Для меня то, что действительно решило это, было отключение кабеля Ethernet от моего iMac. Как бы безумно это не звучало :) На меня напали снаружи, грубо говоря на моем sshd. У меня есть маршрутизатор (от UPC, Cisco EPC3925) по умолчанию, который перенаправляет весь трафик извне на один порт Ethernet. Отключив кабель, атака прекратилась, поскольку iMac был оставлен только на WiFi.

Очевидно, sshd использует opendirectoryd, и именно поэтому это происходит.

Скрат
источник