Каждый раз, когда я запускаю или iTerm или Терминал после не использования его в течение нескольких часов, это берет где угодно от 10-20 секунд для возврата подсказки. Экран является пробелом, и хотя я могу ввести, я не могу на самом деле выполнить команды.
Если я вышел из любого приложения, последующие запуски (если сделано относительно вскоре после этого) довольно быстры. Замедление только, кажется, происходит, если приложение не работало в течение нескольких часов.
Я выполняю OSX 10.5.7 на MacBookPro. У меня есть та же самая установка на другом компьютере без медленных холмов.
Какие-либо идеи, как ускорить вещи снова?
От статьи я читал несколько пар недель назад: Медленные Вводные Окна терминала
/usr/libexec/path_helper
является ужасно медленным при загрузке /etc/paths
Если Вы удаляете все записи в /etc/paths
и гарантируя, что те объекты доступны в Вашем .bash_profile
это решит вопрос. Это сделало для меня так или иначе.
Если терминальное приложение загрузилось, но у Вас нет подсказки еще затем, это - Ваша оболочка, требующая времени для инициализации.
Это, вероятно, означает, что у Вас есть слишком много или что-то трудоемкое в Вашем .bashrc
(принятие Вас использует bash
).
Мое предположение - то, что со временем, что-то использует большую память. Когда Вы запускаете терминал после не использования его некоторое время, некоторая память должна быть сделана доступной путем выгрузки ее содержания к диску. Если Вы уничтожаете терминальный процесс и перезапускаете его относительно быстро, память все еще доступна, и он запускает быстро. Это должно произойти с другими приложениями также.
Необходимо контролировать использование памяти с Монитором Действия и видеть, можно ли сказать, куда это идет.
Я требуюсь определенная репутация для комментария сообщений? Так или иначе очистка системных журналов сделала это для меня также, спасибо. Я попытался исправить path_helper с патчем здесь: gist.github.com/123525, как предложено в комментарии к http://mjtsai.com/blog/2009/04/01/slow-opening-terminal-windows/ (ссылаемый ранее в этом потоке), но напрасно. Я получаю загадочную ошибку. Однако тот патч должен ускорить запуск terminal.app.
дополнение: Как я упомянул, очищение журналов добилось цели для меня, но проблема продолжает появляться, поскольку журналы непрерывно становятся больше после того, как я удалил их. Я нашел, что "тонкая настройка"/etc/asl.conf дала мне более постоянное решение. Модификация должна зарегистрировать только сообщения, которые категоризированы как "очень важные" или более очень важные, чем это, в противоположность регистрирующейся категории "уведомления" и каждому более критическому, чем это. Кроме того, я игнорирую сообщения от ftp, почты, local0, local1. Вот вставка моего/etc/asl.conf:
##
# configuration file for syslogd and aslmanager
##
# redirect com.apple.message.domain to /var/log/DiagnosticMessages
? [T com.apple.message.domain] store_dir /var/log/DiagnosticMessages exclude_asldb
# authpriv messages are root/admin readable
? [= Facility authpriv] access 0 80
# remoteauth critical, alert, and emergency messages are root/admin readable
? [= Facility remoteauth] [<= Level critical] access 0 80
# broadcast emergency messages
? [= Level emergency] broadcast
# save kernel [PID 0] and launchd [PID 1] messages
? [<= PID 1] store
# save everything from emergency to notice
#? [<= Level notice] store
? [<= Level critical] store
# save lpr info level and above
#? [<= Level info] [= Facility lpr] store
# save all mail, ftp, local0, and local1 messages
#? [= Facility mail] store
#? [= Facility ftp] store
#? [= Facility local0] store
#? [= Facility local1] store