web-dev-qa-db-fra.com

Activer / désactiver les programmes / scripts / services de démarrage sur un Mac

J'ai mis à niveau mon MacBook Pro vers OS X Lion et les ventilateurs fonctionnent maintenant à grande vitesse, même à très basse charge.

J'ai fait beaucoup de choses, réinitialiser PRAM, SMC, etc., mais le problème persiste. Il semble que cela a à voir avec Parallels ou une autre application.

Je me demande comment pourrais-je savoir quels programmes/scripts/services sont lancés au redémarrage sur mon MacBook. Je ne parle pas simplement d'aller à comptes d'utilisateurs dans préférences système. Je veux dire la liste complète, comme celle que vous obtenez sur une machine Linux.

11
Open the way

Voir quels processus sont en cours d'exécution

  1. Depuis le terminal, utilisez ps ax
  2. Exécutez Applications "Utilitaires" Moniteur d'activité et sélectionnez Tous les processus . Vous pouvez également les quitter à partir de là.

Démarrage automatique des processus

  1. Ceux qui sont sélectionnés pour Ouvrir à la connexion dans le Dock
  2. Ceux dans Préférences Système "Comptes" Éléments de connexion (en fait, ceux-ci incluent ceux de 1.)
  3. Le crochet de connexion pour loginwindowdécrit ici , lit la valeur actuelle avec defaults read com.Apple.loginwindow LoginHook
  4. Certaines de celles spécifiées dans le cadre d'un script launchd (ou autrement gérées par launchd). Liste tout avec Sudo launchctl list. Voir man launchctl pour plus de détails.

En ce qui concerne les listes launchd, vous pouvez voir leurs fichiers de définition dans les sous-répertoires LaunchAgents et LaunchDaemons des répertoires Library de votre système:

  • /System/Library (vous ne devriez probablement pas les toucher)
  • /Library/ (généralement pour tous les utilisateurs)
  • /Users/yourname/Library (vos propres programmes)

Dans les deux dernières bibliothèques, recherchez les éléments suspects. Il s’agit généralement de XML, vous pouvez donc les ouvrir et les lire.


Le problème ici est que vous pouvez exécuter un processus unique qui en lance des tonnes d’autres à certaines conditions, par exemple. cron sur OS X existe mais est désactivé par défaut. Spécifiez @reboot pour un travail, qui sera lancé par cron au démarrage du système.

Quelque chose de similaire s'applique à vos fichiers de configuration Shell .bash_profile etc., qui peuvent lancer des processus en arrière-plan dès que vous ouvrez Terminal.

20
Daniel Beck