Zum Hauptinhalt springen

Homebrew mit Level unter macOS verwenden

How Level manages Homebrew on macOS using a dedicated system user, and how to run brew commands on Level-managed devices.

Einführung

Level verwaltet Homebrew unter macOS über einen dedizierten homebrew Systembenutzers, anstatt es als root oder dem aktuell angemeldeten Benutzer ausgeführt wird. Dies folgt Homebrews eigener Empfehlung und vermeidet Berechtigungsprobleme, die entstehen, wenn brew als root.

Wenn Sie Homebrew-Automatisierungsaktionen über Level ausführen und unerwartetes Verhalten feststellen, oder wenn Sie ein macOS-Gerät verwalten, auf dem Homebrew bereits installiert war, erklärt dieser Artikel, was Level tut und wie Sie damit arbeiten können.


Der homebrew-Benutzer

Level erstellt ein homebrew Benutzerkonto automatisch erstellt, wenn eine dieser Aktionen zum ersten Mal auf einem Gerät ausgeführt wird:

  • Homebrew installieren

  • Homebrew-Paket installieren (das zuerst Homebrew installiert, falls es noch nicht vorhanden ist)

Der homebrew Benutzer ist ein Systemkonto (keine Anmelde-Shell, kein Home-Verzeichnis in /Users). Er ist für passwortloses sudo über eine Konfigurationsdatei unter /etc/sudoers.d/homebrew.

ℹ️ HINWEIS: Wenn Homebrew bereits auf dem Gerät installiert war, bevor eine Level-Aktion ausgeführt wurde, konfiguriert Level die vorhandene Installation neu, um den Besitz auf den homebrew Benutzer. Installierte Pakete bleiben erhalten.


Homebrew-Befehle ausführen

Da Homebrew dem homebrew Benutzer gehört, müssen brew-Befehle als dieser Benutzer ausgeführt werden, um korrekt zu funktionieren.

Die vollständige Befehlsform lautet:

sudo -E -H -u homebrew brew [COMMAND]

Beispiel:

sudo -E -H -u homebrew brew --version

Den Level-Wrapper verwenden

Level installiert ein Wrapper-Skript unter /usr/local/bin/brew das brew-Befehle als den homebrew Benutzer automatisch ausführt.

Mit dem Wrapper können Sie die standardmäßige brew-Syntax verwenden:

brew --version brew list brew upgrade

Der Wrapper übernimmt das sudo -E -H -u homebrew Präfix für Sie übernimmt. Verwenden Sie diese Form, wenn Sie brew-Befehle im Level-Terminal oder in Skripten ausführen.

💡 TIPP: Verwenden Sie in Level-Skripten und Automatisierungen immer die Wrapper-Form. Die Verwendung von brew direkt (über den Wrapper) hält die Syntax übersichtlich und stellt sicher, dass Sie im richtigen Benutzerkontext arbeiten.

Benachrichtigungsbanner

Wenn Sie brew über den Level-Wrapper ausführen, sehen Sie einen Hinweis ähnlich wie diesen:

NOTE: Homebrew is managed by Level on this device: https://docs.level.io/...

Dies dient nur zur Information. Es bestätigt, dass der Level-Wrapper aktiv ist und dass der homebrew Benutzer die Installation verwaltet.


Häufig gestellte Fragen

  • Warum verwendet Level einen dedizierten homebrew Benutzer statt als Root zu verwenden? Homebrew rät ausdrücklich davon ab, als root weil es Software in gemeinsam genutzte Pfade installiert und der Root-Kontext systemweite Berechtigungsprobleme verursacht. Ein dedizierter Benutzer mit gezieltem passwortlosem sudo ist das empfohlene Muster gemäß der eigenen Homebrew-Dokumentation.

  • Ich hatte Homebrew bereits vor Level installiert. Was hat sich geändert? Level hat den Besitz der Homebrew-Installation auf den homebrew Benutzer. Ihre installierten Pakete sind weiterhin vorhanden. Zukünftige Installationen und Aktualisierungen erfolgen über den homebrew Benutzer. Wenn Sie brew Befehle als Sie selbst oder als root zuvor ausgeführt haben, verwenden Sie den Wrapper oder die sudo -E -H -u homebrew brew Form künftig verwenden.

  • Kann ich Pakete weiterhin manuell mit brew install? Ja, die Verwendung des Wrappers unter /usr/local/bin/brew oder die vollständige sudo -E -H -u homebrew brew install Form. Direkte brew install als root oder ein anderer Benutzer schlägt fehl oder verursacht Besitzkonflikte.

  • Was passiert, wenn ich den homebrew Benutzer? Die Level-Homebrew-Aktionen werden den Benutzer beim nächsten Ausführen neu erstellen und den Besitz neu konfigurieren. Entfernen Sie ihn nicht, wenn Sie Level zur Verwaltung von Homebrew verwenden.

  • Kann ich Homebrew mit Level auf Apple Silicon (M1/M2/M3) Macs verwenden? Ja. Der homebrew Benutzer- und Wrapper-Ansatz funktioniert sowohl auf Intel- als auch auf Apple Silicon-Geräten. Beachten Sie, dass Homebrew auf jeder Architektur in unterschiedliche Pfade installiert wird (/usr/local vs. /opt/homebrew), aber Level übernimmt dies transparent.

Hat dies deine Frage beantwortet?