dscl . create /Users/test
dscl . create /Users/test UniqueID 420
dscl . create /Users/test PrimaryGroupID 420
dscl . create /Users/test UserShell /bin/bash
dscl . create /Users/test NFSHomeDirectory /tmp
dscl . create /Users/test RealName Test
dscl . create /Users/test Password test
Dadurch wird ein Benutzer erstellt, der in sysprefs / Accounts sichtbar ist.
dscl . create /Users/test Password "*"
Dadurch wird der Benutzer ausgeblendet. Stellen Sie sicher, dass Sie das "*" angeben, sonst funktioniert es nicht.
BEARBEITEN : Ich habe es versehentlich geschafft, die Situation von googletorp wiederherzustellen, dass ein Benutzer nicht ausgeblendet werden konnte, indem sein Passwort auf "*" gesetzt wurde. Dieses Mal hatte ich einen Benutzer mit dsimport erstellt, wie folgt:
dsimport /dev/fd/0 /Local/Default I --template StandardUser << EOF
test:*:520:520:Test user:/Users/test:/bin/bash
EOF
In diesem Befehl wird das * jedoch als ein wörtliches Kennwort mit einem Zeichen von verwendet *
. Daher erstellt dsimport eine AuthenticationAuthority-Eigenschaft für den Benutzer und setzt die password-Eigenschaft auf den Shadow-Hash von *
(der wie ********
bei dscl angezeigt wird) Passwörter). Wenn Sie danach versuchen, das Kennwort mit dscl auf "*" zu setzen, setzen Sie das Kennwort weiterhin auf ein Literal *
, anstatt das Kennwort zu deaktivieren. Die Lösung besteht darin, die unerwünschte Eigenschaft zu löschen und dann das Kennwort zu deaktivieren:
sudo dscl . delete /Users/test AuthenticationAuthority
sudo dscl . create /Users/test Password "*"
Dadurch wird der Benutzer ausgeblendet.