opendirectoryd zużywa 40% procesora

22

Mam MacBooka Pro z Lion 10.7.2, procesorem 2,26 GHz i 2 GB pamięci RAM DDR3.

Jeśli zadzwonię

top -o cpu

/usr/libexec/opendirectorydproces zużywa więcej niż 40% CPU.

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

wprowadź opis zdjęcia tutaj

juanpablo
źródło
@slhck /usr/libexec/opendirectoryd
juanpablo

Odpowiedzi:

22

Problem dotyczy martwych dowiązań symbolicznych w Dropbox. Znajdź je za pomocą:

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

Rozwiązanie jest następujące: Usuń martwe dowiązania symboliczne. Jeśli findnie ma takiej printfopcji, użyj:

find -L ~/Dropbox -type l

Referencje

Aby znaleźć martwe dowiązania symboliczne

juanpablo
źródło
Zastanawiam się, jak dostałeś pierwsze rozwiązanie do pracy z BSD findw OS X. Aby findutilsuzyskać tę printfopcję, musisz przynajmniej zainstalować GNU .
slhck,
Zainstalowałem findutils find - wersja 13:17 find (GNU findutils) 4.4.2
juanpablo
Okej, cóż, nie jest dostarczany z OS X, więc użyte polecenie nie zadziałałoby.
slhck,
Wersja BSD polecenia find wyświetlającego zepsute dowiązania symboliczne: find '~/Dropbox' -type l -print0 | xargs -0 file | grep broken
Piotr Czapla
11

Jak wspomniano @juanpablo, może to być spowodowane linkami symbolicznymi.

Najwyraźniej, jeśli wskazuje dowiązanie symboliczne /home, autofs lub automatyczny montaż ognia i potrzeba dużo procesora, aby dowiedzieć się, że to miejsce naprawdę nie istnieje.

Spójrz na /etc/auto_homei /etc/autofs.conf.

Aby sprawdzić, czy ten konkretny problem Cię dotknął, ustaw

AUTOMOUNTD_VERBOSE=TRUE

opcja w autofs.conf, uruchom ponownie automountd

sudo launchctl stop com.apple.automountd

i przejrzyj syslog.log (możesz użyć aplikacji: Console). Ten problem dotyczy Ciebie, jeśli zobaczysz coś takiego:

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

Aby obejść ten problem, edytuj plik /etc/auto_masteri usuń (lub usuń skrót #) wiersz zaczynający się od /home. Następnie uruchomić:

sudo automount -vc
Marek
źródło
1
Dziękuję, to również rozwiązało mój problem i było związane z Dropbox - miałem kilka martwych linków wskazujących /homew moim folderze Dropbox (resztkowe kopie zapasowe z poprzednich systemów), które powodowały to zachowanie. /homeNaprawiono wyłączenie w auto_home.
zzamboni,
1

Dla mnie tym, co naprawdę rozwiązało, było odłączenie kabla Ethernet od mojego iMaca. Szalony jak się wydaje :) Byłem atakowany z zewnątrz, brutalnie na moim sshd. Router, który mam (z UPC, Cisco EPC3925) domyślnie przekazuje cały ruch z zewnątrz do jednego portu Ethernet, który ma. Po odłączeniu kabla atak został zatrzymany, ponieważ iMac został pozostawiony tylko na Wi-Fi.

Najwyraźniej sshd używa opendirectoryd i dlatego tak się dzieje.

skrat
źródło