Попробуйте удалить файлы системного журнала Apple в /var/log/asl/
:
sudo rm /var/log/asl/*.asl
Это помогло мне.
Каждый раз, когда я запускаю iTerm или терминал, не используя его в течение нескольких часов, требуется от 10 до 20 секунд, чтобы вернуть запрос. Экран пуст, и хотя я могу печатать, я не могу выполнять какие-либо команды.
Если я закрою какое-либо приложение, последующие запуски (если они будут сделаны относительно скоро после этого) будут довольно быстрыми. Замедление происходит только в том случае, если приложение не запускалось в течение нескольких часов.
Я использую OSX 10.5.7 на MacBookPro. У меня точно такая же настройка на другом компьютере, без замедлений.
Есть идеи, как ускорить процесс?
Попробуйте удалить файлы системного журнала Apple в /var/log/asl/
:
sudo rm /var/log/asl/*.asl
Это помогло мне.
Другой совет может быть полезным:
Измените оболочку запуска с по умолчанию /usr/bin/login
на /bin/bash -l
или, /usr/bin/zsh
если вы используете zsh.
Это может привести к запуску вашего терминала / iTerm2 со скоростью света!
Для терминала: «Настройки» → «Запуск»: измените «Оболочка входа в систему по умолчанию» на «Команда: /bin/bash -l
»
Для iTerm2: «Настройки» → «Профили» → «Общие» → «Команда»: сменить «Оболочка входа» на «Команда: /bin/bash -l
»
Требуется ли определенная репутация для комментирования сообщений? В любом случае, очистка системных журналов сделала это и для меня, спасибо. Я попытался пропатчить path_helper с помощью патча здесь: gist.github.com/123525, как это было предложено в комментарии на http://mjtsai.com/blog/2009/04/01/slow-opening-terminal-windows/ ( упоминалось ранее в этой теме) но безрезультатно. Я получаю загадочную ошибку. Однако этот патч должен ускорить запуск Terminal.app.
дополнение: как я уже упоминал, очистка журналов принесла мне пользу, но проблема продолжает возникать, так как журналы постоянно увеличиваются после того, как я их удалил. Я обнаружил, что «настройка» /etc/asl.conf дала мне более постоянное решение. Модификация состоит в том, чтобы регистрировать только те сообщения, которые классифицированы как «критические» или более важные, чем эта, в отличие от регистрации категории «уведомления» и каждой более важной, чем эта. Кроме того, я игнорирую сообщения от ftp, mail, 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
Из статьи, которую я прочитал пару недель назад: Медленное открытие терминала Windows
/usr/libexec/path_helper
очень медленно загружается /etc/paths
Если вы удалите все записи /etc/paths
и убедитесь, что эти элементы доступны в вашем, .bash_profile
это решит проблему. Это все равно для меня.
Если приложение терминала загрузилось, но у вас еще нет приглашения, то ваша оболочка требует времени для инициализации.
Это, вероятно, означает, что у вас слишком много или что-то отнимает много времени .bashrc
( если вы используетеbash
).
Я предполагаю, что со временем что-то использует много памяти. Когда вы запускаете терминал после того, как некоторое время не используете его, необходимо сделать доступной некоторую память, перенеся ее содержимое на диск. Если вы уничтожите процесс терминала и перезапустите его относительно быстро, память все еще будет доступна и она быстро запустится. Это должно происходить и с другими приложениями.
Вы должны контролировать использование памяти с помощью Activity Monitor и посмотреть, сможете ли вы определить, куда он движется.
Более постоянное решение путем редактирования sudo vi /etc/asl.conf
предоставляется здесь .
Откройте /etc/profile
и добавьте строку, PATH=""
чтобы она выглядела так:
if [ -x /usr/libexec/path_helper ]; then PATH="" eval `/usr/libexec/path_helper -s` fi