Como posso acelerar o Terminal.app ou iTerm no Mac OSX?

Como posso acelerar o Terminal.app ou iTerm no Mac OSX?

Cada vez que inicio o iTerm ou o Terminal depois de não usá-lo por algumas horas, leva de 10 a 20 segundos para retornar um prompt. A tela está em branco e, embora eu consiga digitar, não consigo executar nenhum comando.

Se eu sair de qualquer um dos aplicativos, as inicializações subsequentes (se feitas relativamente logo depois) serão bastante rápidas. A lentidão só parece ocorrer se o aplicativo não funcionar por algumas horas.

Estou executando o OSX 10.5.7 em um MacBookPro. Tenho exatamente a mesma configuração em outro computador, sem lentidão.

Alguma idéia de como acelerar as coisas novamente?

Responder1

Tente excluir os arquivos de log do sistema Apple em /var/log/asl/:

sudo rm /var/log/asl/*.asl

Isso funcionou para mim.

Responder2

Outra dica pode ser útil:

Altere o shell de inicialização do padrão /usr/bin/loginpara /bin/bash -lou /usr/bin/zshse você usar zsh.

Isso pode fazer com que seu Terminal/iTerm2 seja lançado na velocidade da luz!

  • Para Terminal: Preferências → Inicialização: Mude de "Shell de login padrão" para "Comando: /bin/bash -l"

  • Para iTerm2: Preferências → Perfis → Geral → Comando: Mude de “Login Shell” para “Comando: /bin/bash -l

Responder3

Preciso de uma certa reputação para comentar nas postagens? De qualquer forma, limpar os logs do sistema também funcionou para mim, obrigado. Tentei corrigir path_helper com o patch aqui: gist.github.com/123525, conforme sugerido em um comentário emhttp://mjtsai.com/blog/2009/04/01/slow-opening-terminal-windows/(referenciado anteriormente neste tópico), mas sem sucesso. Eu recebo um erro enigmático. No entanto, esse patch deve acelerar o lançamento do terminal.app.

Adição:Como mencionei, limpar os logs funcionou para mim, mas o problema continua a surgir à medida que os logs crescem continuamente depois de removê-los. Descobri que "ajustar" o /etc/asl.conf me deu uma solução mais permanente. A modificação consiste em registrar apenas mensagens categorizadas como "críticas" ou mais críticas que isso, em vez de registrar a categoria "aviso" e todas as mais críticas que isso. Além disso, desconsidero mensagens de FTP, mail, local0, local1. Aqui está uma pasta do meu /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

Responder4

Se o aplicativo de terminal foi carregado, mas você ainda não recebeu um prompt, seu shell está demorando um pouco para inicializar.

Isso provavelmente significa que você consome muito ou algo demorado em seu .bashrc(supondo que você usebash).

informação relacionada