64 votes

Launchctl différence entre charger et démarrer, décharger et arrêter

Je lisais la page de manuel de launchctl et j'ai quelques questions sur son fonctionnement :

  • Quelle est la différence entre charger et démarrer, décharger et arrêter ?
  • Où puis-je trouver l'étiquette de travail pour un démon, est-elle dans le fichier plist ?

87voto

NotMyself Points 7567

TL;DR

  • Vous voulez généralement utiliser launchctl load -w y launchctl unload -w .
  • start y stop sont généralement réservés au test ou au débogage d'un travail.

Détails

  • launchctl start <label> : Commence le travail. Cette fonction est généralement réservée au test ou au débogage d'un travail particulier.
  • launchctl stop <label> : Arrête le travail. L'opposé de start, et il est possible que le job redémarre immédiatement si le job est configuré pour rester en cours d'exécution.

  • launchctl remove <label> : Supprime le travail de launchd mais de manière asynchrone. Il n'attendra pas que le travail s'arrête réellement avant de revenir, donc pas de gestion d'erreur dans ce cas.

  • launchctl load <path> : Charge et démarre la tâche tant que celle-ci n'est pas "désactivée".
  • launchctl unload <path> : Arrête et décharge le job. Le travail sera toujours redémarré lors du prochain login/redémarrage.

  • launchctl load -w <path> : Charge et démarre le travail tout en marquant le travail en tant que "non désactivé". La tâche sera redémarrée lors de la prochaine connexion/redémarrage.
  • launchctl unload -w <path> : Arrêter et décharger et désactive l'emploi. Le poste sera PAS redémarrer lors de la prochaine connexion/redémarrage.

Où puis-je trouver l'étiquette de travail pour un démon, est-elle dans le fichier plist ?

Oui, il se trouve dans le fichier plist et il correspond généralement au nom de fichier du fichier plist.

10voto

Jay Thompson Points 4026

Le chargement et le déchargement indiquent à launchd de charger le fichier de configuration. Le fichier plist détermine s'il exécute le programme et dans quelles conditions. Un travail qui n'est pas en cours d'exécution peut être lancé avec launchctl start ... launchctl stop ... .

L'étiquette du travail est définie par la clé d'étiquette, et le nom de la plist doit également être l'étiquette du travail suivie de l'extension de la plist.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X