Сервер OS X все приложения "не отвечает" и процессор закреплен

На моем сервере OS X 10.5 каждый раз, когда я запускаю приложение, оно загружается на 100% и "не отвечает". Терминал, Консоль, Системные настройки, все обычные приложения. Кажется, единственное, что не затронуто, это Finder.

Я могу подключиться к серверу по ssh, и "top" показывает любое открытое приложение, закрепленное на 100%. Я могу убить эти процессы, чтобы все вернулось к 0% (с фоновыми процессами, я полагаю), но при открытии нового приложения - например, Activity Monitor - приложение снова прикрепится.

Любые идеи, как устранить неполадки и исправить без перезагрузки?

Спасибо!

2 ответа

Я думаю, что начать с выхода из сервера. Вероятно, вы получите лучшие результаты, используя различные серверные инструменты удаленно или используя SSHing через Terminal.app.

Первые три вещи, которые я бы проверил:

  1. Что-то выглядит странно в инструменте администрирования сервера?
  2. Закреплены ли какие-либо процессы, которые НЕ принадлежат ВАШЕМУ пользователю?
  3. Если у вас есть другой пользователь в системе, ведет ли вход в систему с этим пользователем такое же поведение?

Сначала я думал, что, возможно, что-то пошло не так с учетной записью пользователя, которую вы используете для администратора, и что это может быть связано с серверным процессом, от которого зависит пользователь (например, Open Directory). Приложения, которые вы запускаете, могут пытаться получить ресурс уровня пользователя, который система по какой-то причине не разрешает, несмотря на его очевидную доступность, и поэтому они раскручиваются, пытаясь получить к нему доступ снова и снова.

Но это всего лишь начальная мысль - вы сможете диагностировать это гораздо более точно с помощью трех шагов выше.

Кроме того, используйте cat через удаленный SSH, чтобы просмотреть различные журналы сервера (если попытка запустить Console.App невозможна из-за этого 100% оборота) и посмотреть, не перебивается ли одно сообщение снова и снова.

Оттуда вы можете начать сортировать проблему. Удачи!

Другим, возможно, полезным диагностическим шагом будет запуск sample на одном из закрепленных приложений; что-то вроде sample TextEdit 10 10 - это будет смотреть на то, что TextEdit делает каждые 10 миллисекунд в течение 10 секунд (то есть на 1000 выборок), и выводит статистику в дерево вызовов. Дерево может быть довольно сложно интерпретировать, но там, вероятно, есть подсказки о том, на что программа тратит так много процессорного времени.

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