41 votes

Comment accélérer Terminal.app ou iTerm sur Mac OSX?

Chaque fois que je lance iTerm ou Terminal après ne pas l'avoir utilisé pendant quelques heures, il faut entre 10 et 20 secondes pour avoir un invite de commande. L'écran est vide et bien que je puisse taper, je ne peux pas exécuter de commandes.

Si je quitte l'application, les lancements suivants (s'ils sont effectués relativement rapidement) sont assez rapides. La lenteur ne semble se produire que si l'application n'était pas en cours d'exécution depuis quelques heures.

Je tourne sous OSX 10.5.7 sur un MacBook Pro. J'ai exactement la même configuration sur un autre ordinateur, sans ralentissements.

Des idées pour accélérer les choses à nouveau ?

41voto

fredley Points 413

Essayez de supprimer les fichiers journaux système Apple dans /var/log/asl/ :

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

Cela a fonctionné pour moi.

31voto

user150579 Points 311

Un autre conseil pourrait être utile :

Changez le shell de démarrage par défaut de /usr/bin/login à /bin/bash -l, ou à /usr/bin/zsh si vous utilisez zsh.

Cela pourrait faire démarrer votre Terminal/iTerm2 à la vitesse de la lumière !

  • Pour Terminal : Préférences → Démarrage : Changez de "Shell de connexion par défaut" à "Commande : /bin/bash -l"

  • Pour iTerm2 : Préférences → Profils → Général → Commande : Changez de "Shell de connexion" à "Commande : /bin/bash -l"

9voto

Alexandre Bourdin Points 428

Dois-je avoir une certaine réputation pour commenter des articles? Quoi qu'il en soit, effacer les journaux du système a également fonctionné pour moi, merci. J'ai essayé de patcher path_helper avec le correctif ici : gist.github.com/123525, comme suggéré dans un commentaire sur http://mjtsai.com/blog/2009/04/01/slow-opening-terminal-windows/ (mentionné plus tôt dans cette discussion) mais en vain. Je reçois une erreur cryptique. Cependant, ce correctif devrait accélérer le lancement de terminal.app.

addition : Comme je l'ai mentionné, effacer les journaux a résolu le problème pour moi, mais le problème continue de surgir à mesure que les journaux grossissent constamment après que je les ai supprimés. J'ai constaté que "optimiser" /etc/asl.conf m'a donné une solution plus permanente. La modification consiste à enregistrer uniquement les messages catégorisés comme "critiques" ou plus critiques que cela, plutôt que de journaliser la catégorie "notice" et tout ce qui est plus critique que cela. De plus, j'ignore les messages de ftp, mail, local0, local1. Voici une copie de mon /etc/asl.conf :

##
# fichier de configuration pour syslogd et aslmanager
##

# rediriger le domaine com.apple.message vers /var/log/DiagnosticMessages
? [T com.apple.message.domain] store_dir /var/log/DiagnosticMessages exclude_asldb

# les messages authpriv sont lisibles par root/admin
? [= Facilité authpriv] acces 0 80

# les messages remoteauth critiques, alerte et d'urgence sont lisibles par root/admin
? [= Facilité remoteauth] [≤ Niveau critique] acces 0 80

# diffuser des messages d'urgence
? [= Niveau d'urgence] diffusion

# enregistrer les messages du noyau [PID 0] et de launchd [PID 1]
? [≤ PID 1] magasin

# enregistrer tout, de l'urgence à la notification
#? [≤ Niveau de notification] magasin
? [≤ Niveau critique] magasin

# enregistrer le niveau d'info et plus pour lpr
#? [≤ Niveau d'info] [= Facilité lpr] magasin

# enregistrer tous les messages de messagerie, ftp, local0 et local1
#? [= Facilité courrier] magasin
#? [= Facilité ftp] magasin
#? [= Facilité local0] magasin
#? [= Facilité local1] magasin

7voto

Kit Roed Points 1922

From an article I read a couple weeks ago: Fenêtres de terminal s'ouvrant lentement

/usr/libexec/path_helper est terriblement lent à charger /etc/paths. Si vous supprimez toutes les entrées dans /etc/paths et assurez que ces éléments sont disponibles dans votre .bash_profile, cela résoudra le problème. Cela a fonctionné pour moi en tout cas.

1voto

jamting Points 893

Si l'application terminal s'est chargée mais que vous n'avez pas encore de invite, alors c'est probablement votre shell qui met du temps à s'initialiser.

Cela signifie probablement que vous avez trop de choses ou quelque chose de consommant du temps dans votre .bashrc (en supposant que vous utilisez bash).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X