Команда оболочки ...
sample Finder
... будет отслеживать все вызовы функций, выполняемые Finder, и создавать текстовый файл, показывающий стеки вызовов каждого из потоков Finder. Даже знающие непрограммисты (если хотите, суперпользователи) часто могут извлечь из этого ценную информацию. Также полезно прикрепить к отчету об ошибках Apple через http://bugreport.apple.com/ .
По сути, это то же самое, что кнопка «Пример процесса» в Activity Monitor.
Обновление: О, даже лучше, чем sample(1)
есть spindump(8)
, что похоже, sample
но добавляет видимость того, что делает ядро, когда потоки приложения блокируются в ожидании ядра.
sudo spindump Finder
Текстовый файл, который он создает /tmp
, потребует чтения привилегированных прав пользователя, поскольку он может содержать привилегированную информацию.
Больше подсказок можно почерпнуть из ...
lsof -p $PIDOfFinder
(где $ PIDOfFinder - это идентификатор процесса Finder, который вы можете найти через ps
.)
Похоже, вы можете получить ту же информацию в Activity Monitor. Выберите Finder, нажмите кнопку «Проверить» и выберите вкладку «Открыть файлы и порты».
Другим интересным моментом данных будет то, случится ли проблема с новой чистой учетной записью пользователя в той же системе. Просто создайте новую учетную запись пользователя, выйдите из своей обычной учетной записи (не используйте быстрое переключение пользователей - мы не хотим, чтобы ваш «плохой» экземпляр Finder работал в фоновом режиме и сбивал с толку), и войдите в новую чистую учетную запись и посмотреть, если проблема там тоже происходит.
Используете ли вы какие-либо хаки InputManager, в том числе основанные на SIMBL, или "гаксы" Unsanity Application Enhancer (APE)?
Возникает ли проблема при загрузке в «Безопасном режиме» (то есть при загрузке с <shift>
нажатой клавишей)?