Ist es möglich, einen Benutzer ohne Home-Verzeichnis anzulegen?

Ich möchte einen Benutzer erstellen, um Tomcat auf meinem System auszuführen, und habe mich gefragt, ob es möglich ist, einen Benutzer ohne ein Home-Verzeichnis zu erstellen, wie es unter Linux möglich ist.

Antworten (1)

Ja, das können Sie mit dem folgenden Code. Beachten Sie, dass die UniqueID, wenn sie kleiner als 501 ist, den Benutzer je nach Betriebssystemversion möglicherweise nicht im Bereich „Konten“ der Systemeinstellungen auflistet. Achten Sie darauf, dass es nicht bereits einem anderen Benutzerkonto zugewiesen ist.

sudo dscl . -create /Users/ThisUserName
sudo dscl . -create /Users/ThisUserName UserShell /bin/bash
sudo dscl . -create /Users/ThisUserName UniqueID 505
sudo dscl . -create /Users/ThisUserName PrimaryGroupID 20
sudo dscl . -passwd /Users/ThisUserName Pa55w0rd

Sie können einen Home-Ordner außerhalb der normalen /Benutzer/-Hierarchie zuweisen mit:

sudo dscl . -create /Users/ThisUserName NFSHomeDirectory /path/to/your/home

Wenn Sie möchten, dass ein eindeutigerer Name in den Kontoeinstellungen angezeigt wird:

sudo dscl . -create /Users/ThisUserName RealName "This User Name"

Wenn Sie zu dem neuen Benutzer wechseln, ohne ein NFSHomeDirectory festgelegt zu haben, wird $HOME standardmäßig auf /var/empty.

Wenn Sie ein Konto zum Ausführen von erstellen möchten tomcat, würde ich vorschlagen, ihm kein Passwort, eine Shell von /usr/bin/false, eine ID = 80 (unter 500) und einen Namen von _tomcat(um den Regeln unter MacOS X zu folgen) zu geben. .
@danielAzuelos, der /bin/false als Home-Verzeichnis verwendet, hindert mich daran, den Benutzer zu verklagen.
/usr/bin/false→ Dunkel: Ich habe vorgeschlagen, ihm eine Hülle ohne Zuhause zu geben . Dies ist die Standardmethode, auf die alle _usersunter MacOS X konfiguriert sind. Dies verbietet keinen Zugriff über sudo. Überprüfen Sie mit: dscl& sudoauf _sandbox.