Как ускорить работу Terminal.app или iTerm на Mac OSX?

Каждый раз, когда я запускаю iTerm или Terminal после того, как не использовал его в течение нескольких часов, для возврата подсказки требуется от 10 до 20 секунд. Экран пуст, и хотя я могу напечатать, я не могу выполнять какие-либо команды.

Если я покину любое приложение, последующие запуски (если они будут сделаны относительно скоро после этого), будут довольно быстрыми. Медленность возникает только в том случае, если приложение не работает в течение нескольких часов.

Я запускаю OSX 10.5.7 на MacBookPro. У меня точно такая же настройка на другом компьютере, без замедления.

Любые идеи о том, как ускорить работу снова?

41 голос | спросил pmaiorana 28 PM00000070000005831 2009, 19:08:58

7 ответов


30

Другой совет может быть полезным:

Измените запуск оболочки по умолчанию /usr/bin/login до /bin/bash -l, или /usr/bin/zsh, если вы используете zsh.

Это может привести к тому, что ваш терминал /iTerm2 начнет работать со скоростью света!

  • Для терминала: Предпочтения → Ввод в эксплуатацию: изменение с «Обозначения по умолчанию» на «Команда: /bin/bash -l"

  • Для iTerm2: Предпочтения → Профили → Общие → Команда: измените значение «Входная оболочка» на «Команда: /bin/bash -l"

ответил user150579 6 PM000000120000002631 2012, 12:10:26
9

Мне нужна была известность, чтобы комментировать сообщения? В любом случае, очистка системных журналов сделала это для меня, спасибо. Я попытался исправить path_helper с патчем здесь: gist.github.com/123525, как было предложено в комментарии к http://mjtsai.com/blog/2009/04/01/slow-opening-terminal-windows/ (упоминается ранее в этом разделе), но безрезультатно , Я получаю загадочную ошибку. Однако этот патч должен ускорить запуск терминала.

дополнение: Как я уже упоминал, очистка журналов сделала трюк для меня, но проблема продолжает возникать, поскольку журналы меняются после того, как я их удалил. Я обнаружил, что «настройка» /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
ответил tmadsen 28 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowMon, 28 Sep 2009 14:09:51 +0400 2009, 14:09:51
7

Из статьи, которую я прочитал пару недель назад: Низкая открывающаяся панель Windows

/usr/libexec/path_helper ужасно медленно при загрузке /etc/paths Если вы удалите все записи в /etc/paths и убедитесь, что эти элементы доступны в вашем .bash_profile, это решит проблему. Это все равно для меня.

ответил Chealion 29 AM000000120000004731 2009, 00:10:47
1

Если приложение терминала загружено, но у вас еще нет приглашения, тогда ваша оболочка займет некоторое время, чтобы инициализировать.

Это, вероятно, означает, что у вас слишком много или что-то много времени в вашем .bashrc ( при условии, что вы используете bash )

ответил Mike McQuaid 28 PM00000070000004031 2009, 19:32:40
0

Я предполагаю, что со временем что-то использует много памяти. Когда вы запускаете терминал после его ненадлежащего использования, некоторое количество памяти должно быть доступно путем замены его содержимого на диск. Если вы убьете процесс терминала и перезапустите его относительно быстро, память все еще доступна, и она быстро запускается. Это должно происходить и с другими приложениями.

Вам следует следить за использованием вашей памяти с помощью Activity Monitor и посмотреть, можете ли вы сказать, куда она идет.

ответил KeithB 28 PM00000080000001531 2009, 20:29:15
0

Более постоянное решение путем редактирования sudo vi /etc/asl.conf предоставляется здесь .

ответил Ioannis Filippidis 24 +04002013-10-24T01:26:29+04:00312013bEurope/MoscowThu, 24 Oct 2013 01:26:29 +0400 2013, 01:26:29
0

Откройте /etc/profile и добавьте строку PATH="", поэтому он выглядит так:

if [ -x /usr/libexec/path_helper ]; then
    PATH=""
    eval `/usr/libexec/path_helper -s`
fi
ответил davidcondrey 23 J0000006Europe/Moscow 2015, 04:09:17

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132