Pro-Tipp: launchctl komfortabel bedienen mit lunchy

Michael Reimann

Geschäftsführung
AT Administration
Registriert
18.03.09
Beiträge
10.349
Oftmals sind es die kleinen Helfer, die einem das Leben - auch als Administrator - erleichtern. Gerade wenn es unter OSX darum geht, Autostarts und regelmäßige Prozesse zu verwalten, wird es recht schnell kompliziert. Ein kleines kostenloses Tool sorgt hier für Abhilfe und ganz nebenbei lernt man die Struktur von OSX besser kennen.[PRBREAK][/PRBREAK]

Terminal.jpgKleine Warnung vorweg: Hier geht es um ein Tool, das ausschließlich im Terminal von OSX benutzt wird. Wer nichts mit launchctl, dem Terminal und den internen Strukturen von OSX zu tun hat, braucht sich hier nicht weiter bemühen. Es ist aber in jedem Fall spannend, sich mit Unix und Unix-Artigen Betriebssystemen auseinanderzusetzen.

Apple hat mit launchctl zwar ein mächtiges (Terminal-)Werkzeug am Start, um zeitabhängige Prozesse und wiederkehrende Aufgaben zu verwalten, aber genau seine Mächtigkeit wird dem Administrator, der es nutzen will schnell zum Verhängnis. Nun könnte man meinen, dass gerade ein Admin immer wissen sollte, was er tut. Das ist sicher auch so. Aber warum sollen nicht auch Systemverwalter in den Genuss netter kleiner Helferlein kommen?

Das Tool "lunchy" ersetzt nicht etwa launchctl, es vereinfacht nur den Umgang damit, in dem es die Eingabe von Parametern sehr vereinfacht und eine leicht verständliche Syntax bietet. Für die ersten Schritte oder zum Aufräumen des Mac kann das sehr hilfreich sein.

Lunchy wird schnell per Terminal-Befehl direkt aus dem Netz installiert.
Code:
sudo gem install lunchy
Nach Eingabe des Anmeldepasswortes wird das kleine Helferlein ruck zuck geladen und installiert. Aktuell ist die Version 0.7.0 vom 22.07.2013.

durch die Eingabe von:
Code:
lunchy
ohne weitere Parameter erscheint eine (englische) Hilfe-Seite.

Mittels
Code:
lunchy ls
können alle aktuell installierten launchctl plists des angemeldeten Benutzers angezeigt werden.

Auf dem iMac des Autoren sieht das derzeit so aus:
Code:
$ lunchy ls
com.adobe.AAM.Updater-1.0
com.adobe.ARM.
com.apple.AddressBook.ScheduledSync.
com.apple.AddressBook.ScheduledSync.
com.apple.FolderActions.enabled
com.apple.FolderActions.folders
com.apple.SafariBookmarksSyncer
com.blackmagic-design.DesktopVideoFirmwareUpdater
com.google.keystone.agent
com.gopro.stereomodestatus
com.oracle.java.Java-Updater
com.spotify.webhelper
de.growl14start
org.gpgtools.Libmacgpg.xpc
org.pqrs.KeyRemap4MacBook.server
lunchy kann aber nur vorhandene oder neu hinzugefügte Steuerdateien für den Dämon launchd verwalten. Erzeugen oder auf Plausibilität überprüfen kann der kleine Helfer sie nicht. Aber die schnelle Übersicht fördert vielleicht so manchen Überrest alter Software zu Tage, die den Mac ggf. verlangsamen oder andere ungewollte Dinge anstellen.

Mit einem vorangestellten sudo kann lunchy auch die Systemweit installierten Startobjekte anzeigen und verwalten. Hier sollte man aber besonders vorsichtig zur Sache gehen, denn durch ein versehentliches Deaktivieren eines notwendigen Tasks, kann das Betriebssystem möglicherweise instabil werden.
 
Zuletzt bearbeitet von einem Moderator:
Super, das schaue ich mir genauer an. Auf den ersten Blick schon mal eine schöne Sache! Danke für den Tipp!
 
man sollte öfters unter der Haube mit MacOSX arbeiten. Es gibt viele tolle Sachen die man als Maus-User gar nicht entdecken kann. Unix ist einfach toll.
 
Wenn man keine Ahnung hat …

lunchy ls oder list führt alles auf was sich in den Userverzeichnissen ~/Libary/LaunchDaemons/ und ~/Library/LaunchAgents findet. Und zwar unabhängig davon ob es läuft oder nicht. launchctl list beschränkt sich dagegen nur auf aktive Prozesse. Dafür braucht es bei lunchy status, was dann aber zur gleichen Anzeige führt.

Was daran einfacher oder besser sein soll entzieht sich meiner Kenntnis. Fakt ist: wer die dreieinhalb Befehle für launchctl kennt (list, start/stop, load/unload) braucht lunchy nicht.
 
Was daran einfacher oder besser sein soll entzieht sich meiner Kenntnis. Fakt ist: wer die dreieinhalb Befehle für launchctl kennt (list, start/stop, load/unload) braucht lunchy nicht.

Von "Besser" war ja auch nie die Rede. Einfacher ist es, weil man schneller zu Ergebnissen kommt. Du hast Recht, mit "lunchy ls" bekommt man nur die Vorhandenen angezeigt. Mit "lunchy status" die Aktiven.

Während man bei direktem Einsatz von launchctl immer die gesamten Pfade mitgeben muss (es sei denn man ist bereits im entsprechenden Verzeichnis), kann man bei lunchy auch wildcards angeben und die Pfade weglassen.

Ist ein good to have Tool. Wer es nicht mag, muss es nicht nutzen.