Native macOS-Apps installieren
Auf dieser Seite
Mit Relution lassen sich native macOS-Anwendungen zentral in den App Store hochladen und auf verwaltete Macs verteilen. Als Dateiformate werden .pkg (Installer-Paket) und .dmg (Disk Image) unterstützt. Für eine zuverlässige, unbeaufsichtigte Verteilung ist das Zusammenspiel aus passendem Paketformat, korrekter Erkennungsregel sowie gültiger Signierung entscheidend. Die nachfolgenden Abschnitte beschreiben diese Bestandteile im Detail.
PKG und DMG im Vergleich
Die Wahl des Paketformats bestimmt, wie eine App installiert wird und ob sich der Vorgang automatisieren lässt.
| Merkmal | .pkg (Installer-Paket) | .dmg (Disk Image) |
|---|---|---|
| Aufbau | Installer mit optionalen Skripten (preinstall/postinstall) | Container/Archiv, enthält meist eine .app |
| Installationsort | flexibel, an mehreren Zielorten möglich | in der Regel Kopie nach /Programme |
| Installationslogik | eigene Installationsroutine des Pakets | Kopiervorgang der enthaltenen .app |
| Automatisierte Installation | im Hintergrund ohne Interaktion möglich | nur verwertbar, wenn genau eine .app enthalten ist |
| Empfehlung | bevorzugt für die MDM-Verteilung | geeignet, sofern kein PKG angeboten wird |
Ein .pkg ist für die automatisierte Verteilung das robustere Format, da die Installationsroutine im Paket selbst hinterlegt ist und still im Hintergrund ausgeführt werden kann. Skripte innerhalb des Pakets können zusätzliche Schritte übernehmen, etwa das Anlegen von Konfigurationsdateien.
Ein .dmg ist ein Datenträger-Abbild. Für die Verteilung ist es nur dann geeignet, wenn es eine einzelne Programmdatei (.app) enthält, die nach /Programme kopiert wird. Abbilder mit einem interaktiven Installations-Assistenten oder mehreren Elementen lassen sich nicht unbeaufsichtigt installieren.
Hinweis: Steht eine App sowohl als
.pkgals auch als.dmgzur Verfügung, ist für die zentrale Verteilung das.pkgvorzuziehen.
Native App in Relution anlegen
Das Hochladen erfolgt analog zu anderen nativen Apps über das App-Inventar.
- Im Menü unter
Apps → App Storewird überHinzufügender App-TypNative Appgewählt. - Die entsprechende
.pkg- oder.dmg-Datei wird ausgewählt und hochgeladen. - Über
Details hinzufügenwird die App-Detailseite geöffnet. Dort werden der Versionsname sowie – sofern erforderlich – die Erkennungsregel eingetragen. - Nach Angabe des gewünschten
Freigabestatuswird die App überSpeichernangelegt.
Erkennungsregel über den Bundle-Identifier
Die Erkennungsregel teilt Relution mit, woran der installierte Zustand einer App erkannt wird. Für native macOS-Apps erfolgt dies über den Bundle-Identifier (z. B. com.hersteller.appname). Anhand dieses eindeutigen Werts wird auf dem Gerät geprüft, ob die App bereits vorhanden ist, und ob eine Installation als erfolgreich gilt.
Der zuverlässigste Weg, den korrekten Bundle-Identifier zu ermitteln, führt über einen bereits verwalteten Mac:
- Die App wird auf einem in Relution verwalteten Mac einmalig manuell installiert.
- Im Relution-Portal wird das Gerät unter
Geräte → Übersichtgeöffnet. - Auf dem Reiter der installierten Apps wird die App gesucht. Der dort ausgewiesene
Bundle-Identifierwird ausgelesen. - Dieser Wert wird in der App-Detailseite als Erkennungsregel eingetragen.
Alternativ lässt sich der Bundle-Identifier direkt auf dem Mac über das Terminal auslesen:
osascript -e 'id of app "App-Name"'
Ist der Pfad der Programmdatei bekannt, kann der Wert auch aus dem Paket-Metadatum gelesen werden:
mdls -name kMDItemCFBundleIdentifier -raw /Programme/App-Name.app
Soll die Erkennungsregel bereits vor einer Installation ermittelt werden, kann der Inhalt eines .pkg mit einem Drittanbieter-Werkzeug wie Suspicious Package inspiziert werden. Ein solches Werkzeug zeigt neben den Installationspfaden und enthaltenen Skripten auch den Bundle-Identifier an, ohne dass das Paket ausgeführt werden muss.
Hinweis: Drittanbieter-Werkzeuge dienen ausschließlich der Analyse. Der maßgebliche Bundle-Identifier bleibt der Wert, der nach einer Installation im Relution-Inventar ausgewiesen wird.
Alternative Wege ohne funktionierende Erkennung
Bei manchen nativen Apps kann Relution den installierten Zustand nicht zuverlässig prüfen – etwa weil kein eindeutiger Bundle-Identifier vorliegt oder das Paket die App an einen untypischen Ort ablegt. In diesen Fällen bieten sich zwei Wege an, die ohne belastbare Erkennungsregel auskommen:
- Bereitstellung über den Relution App Store: Die App wird den Anwender:innen im
Relution Agentbereitgestellt und dort manuell installiert. Da die Installation aktiv angestoßen wird, ist keine automatische Zustandsprüfung nötig. Optional kann die App über die Zuweisung als automatisch zu installierende App (Auto-Deploy) an einen Benutzer oder Benutzergruppe gebunden werden. - Verteilung per Aktion: Über eine
App installieren-Aktion auf ausgewählten Geräten oder Gruppen wird die Installation gezielt ausgelöst. Der Installationsbefehl wird an das Gerät übertragen und dort ausgeführt, unabhängig von einer Erkennungsregel.
Signierung und Notarisierung
macOS prüft über Gatekeeper, ob Software aus einer vertrauenswürdigen Quelle stammt. Pakete, die weder signiert noch von Apple notarisiert sind, können blockiert werden oder eine Nutzerinteraktion erfordern – was eine unbeaufsichtigte Verteilung verhindert.
- Signierung: Das Paket ist mit einer gültigen
Developer IDsigniert. Dadurch ist die Herkunft nachvollziehbar und Manipulation ausgeschlossen. - Notarisierung: Das Paket wurde zusätzlich von Apple geprüft (notarisiert). Erst dadurch wird es auf aktuellen macOS-Versionen ohne Warnhinweis akzeptiert.
Ob ein Paket korrekt signiert und notarisiert ist, kann auf dem Mac im Terminal überprüft werden:
spctl --assess --type install -vv /Pfad/zur/App.pkg
pkgutil --check-signature /Pfad/zur/App.pkg
Hinweis: Schlägt eine Installation nur bei einzelnen Paketen still fehl, ist eine fehlende Signierung oder Notarisierung eine der häufigsten Ursachen.
Fehleranalyse per Logs und Geräteprotokollierung
Bleibt eine Installation ohne Erfolg, lassen sich die Ursachen über die Protokollierung eingrenzen.
Geräteprotokollierung in Relution
Die Geräteprotokollierung wird auf globaler Ebene im Inventar über die Geräte aktiviert und erfasst die Kommunikation zwischen Server und Geräten. Nach Aktivierung werden Befehle wie die App-Installation samt Rückmeldung des Geräts protokolliert und lassen sich im Portal einsehen. Auf diese Weise wird sichtbar, ob ein Installationsbefehl das Gerät erreicht hat und mit welchem Status er quittiert wurde.
Installationslogs am Mac
Ergänzend geben die Systemprotokolle des Macs Aufschluss über den Installationsvorgang. Der Verlauf einer PKG-Installation wird lokal protokolliert und kann im Terminal ausgewertet werden:
tail -n 100 /var/log/install.log
Für die laufende Beobachtung während einer Installation eignet sich der Live-Datenstrom des Systemprotokolls:
log stream --predicate 'process == "installer"' --info
Aus diesen Ausgaben lässt sich ablesen, ob das Paket entpackt, ein Skript ausgeführt oder der Vorgang durch Gatekeeper abgebrochen wurde.
Deinstallation
Der Deinstallationsweg hängt vom Paketformat ab:
- Apps, die über ein
.pkginstalliert wurden, lassen sich über Relution wieder deinstallieren. Voraussetzung ist eine hinterlegte Erkennungsregel, über die die App eindeutig identifiziert wird. Die Deinstallation wird perApp deinstallieren-Aktion auf den betroffenen Geräten oder Gruppen ausgelöst. - Apps, die über ein
.dmgals Programmdatei nach/Programmekopiert wurden, lassen sich nicht direkt über Relution entfernen. Die Deinstallation erfolgt hier ausschließlich per Skript.
Für .dmg-Apps sowie für Fälle ohne Erkennungsregel wird die Deinstallation über ein Skript umgesetzt, das die App beendet und die zugehörigen Verzeichnisse entfernt. Ein solches Skript wird gezielt über eine Aktion an die betroffenen Geräte oder Gruppen verteilt.