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
Ini menciptakan pengguna yang terlihat di sysprefs / Akun.
dscl . create /Users/test Password "*"
Ini menyembunyikan pengguna. Pastikan Anda mengutip "*" atau itu tidak akan berhasil.
EDIT : Saya tidak sengaja berhasil membuat ulang situasi googletorp karena tidak dapat menyembunyikan pengguna dengan mengatur kata sandi ke "*", dan saya menemukan cara memperbaikinya. Kali ini, saya telah membuat pengguna menggunakan dsimport, seperti ini:
dsimport /dev/fd/0 /Local/Default I --template StandardUser << EOF
test:*:520:520:Test user:/Users/test:/bin/bash
EOF
Tetapi dalam perintah itu, * diambil untuk mewakili kata sandi satu karakter literal *
, dan karenanyaimport menciptakan properti AuthenticationAuthority untuk pengguna dan menetapkan properti kata sandi ke hash shadow *
(yang ditampilkan seperti ********
dalam dscl, seperti untuk semua kata sandi). Setelah itu, mencoba mengatur kata sandi ke "*" menggunakan dscl hanya terus menetapkan kata sandi menjadi literal *
, bukannya menonaktifkan kata sandi. Solusinya adalah menghapus properti yang tidak diinginkan, dan kemudian menonaktifkan kata sandi:
sudo dscl . delete /Users/test AuthenticationAuthority
sudo dscl . create /Users/test Password "*"
Ini menyembunyikan pengguna.