Ich versuche, einen Daemon (Oracle Grid Engine) manuell auf meinem Computer zu installieren, und möchte, dass er unter einem isolierten Konto ausgeführt wird. Was ist die bevorzugte Methode, um mithilfe von Verzeichnisdiensten dem lokalen Computer unter OS X ein "System" -Konto hinzuzufügen? Viele von ihnen sind in / etc / passwd ( _www
, _dovecot
usw.) vorhanden, aber Kommentare oben in dieser Datei besagen, dass sie nur im Einzelbenutzermodus verwendet werden.
Ich verwende 10.6 und benötige keine spezielle Netzwerkkontenverwaltung. Ich hoffe auf etwas Einfaches - das Äquivalent useradd
zu fast jedem anderen Unix-ähnlichen Betriebssystem.
mac-osx
user-management
directory-services
Tim Yates
quelle
quelle
Ich habe das Skript von Par ausprobiert und einige Probleme festgestellt. Also habe ich es für eine bestimmte Benutzer-ID und für OS X Mavericks (10.9) geändert.
Ich habe festgestellt, dass dem Benutzerkonto unter Mavericks einige irrelevante Datensätze hinzugefügt wurden - ein PasswordPolicyOptions- und ein AuthenticationAuthority-Datensatz -, die entfernt werden mussten, um andere integrierte Dienstbenutzerkonten (wie _www) korrekt nachzuahmen.
Ich habe auch die Kennwort- und RealName-Datensätze zum Gruppenkonto hinzugefügt.
Ich habe ein benutzerdefiniertes, einmaliges Skript nur für ein WSGI-Dienstkonto erstellt. Hier ist das aktualisierte Skript.
Beachten Sie, dass nach dem Ausführen dieses Skripts die Dateien / etc / passwd und / etc / groups nicht aktualisiert werden. Ich glaube, sie werden beim Neustart aktualisiert.
quelle
EDIT: Aktualisiert am 9. Januar 2014 für OS X Mavericks (Vorschläge von Dave, danke!)
Ich habe dazu ein Bash-Skript geschrieben. Es wird die erste nicht verwendete UID verwendet, die kleiner oder gleich 500 ist (Daemon-Konto-Uids unter Mac OS X) und die ebenfalls eine identische nicht verwendete GID enthält.
Speichern Sie das Skript in einer Datei mit dem Namen
add_system_user.sh
und legen Sie die ausführbare Datei mit festchmod 755 add_system_user.sh
.Angenommen, Sie möchten einen Daemon / Systembenutzer namens par hinzufügen . Sie würden dieses Skript folgendermaßen ausführen:
sudo add_system_user.sh par
Und Sie erhalten einen Systembenutzer namens
_par
Aliaspar
(der von Ihnen angeforderte Name) mit einer passenden UID und GID (z. B. 499 oder was auch immer gefunden wurde).Hier ist das Skript:
quelle
In diesem Artikel wird erläutert, wie Sie mit dscl ein Benutzerkonto erstellen.
osxdaily.com Artikel
quelle
dscl /Local/Default -read /Users/_sshd
(dscl /Local/Default -ls /Users
erhalten Sie eine Liste der lokalen Konten). Beachten Sie, dass Sie nicht alle Attribute festlegen müssen. GeneratedUID wird zufällig generiert und RecordType sind automatische Metadaten. Außerdem haben die meisten OS X-Systemkonten einen primären Kontonamen, der mit einem Unterstrich beginnt, und einen Alias ohne diesen Namen, um die Abwärtskompatibilität zu gewährleisten. Ich empfehle die Verwendung der Unterstrichkonvention, aber kümmere dich nicht um den einfachen Alias, es sei denn, du musst.Hier ist eine Version von Daves Skript, die auch prüft, ob der Benutzer / die Gruppe vorhanden ist, bevor sie erstellt wird:
und ein Skript zum Löschen des Benutzers:
quelle