$ dscl . list /users
_timed
_timezone
_tokend
_trustevaluationagent
_unknown
_update_sharing
_usbmuxd
_uucp
_warmd
_webauthserver
_windowserver
_www
_wwwproxy
_xserverdocs
daemon
Guest
nobody
Owner
Rob
root
Why is there a user called nobody
?
Ask Different is a question and answer site for power users of Apple hardware and software. It only takes a minute to sign up.
Sign up to join this community$ dscl . list /users
_timed
_timezone
_tokend
_trustevaluationagent
_unknown
_update_sharing
_usbmuxd
_uucp
_warmd
_webauthserver
_windowserver
_www
_wwwproxy
_xserverdocs
daemon
Guest
nobody
Owner
Rob
root
Why is there a user called nobody
?
Those accounts are for systems processes and to restrict access to things like files and resources by group or user.
nobody
user; it's 100% standard for Unix systems. e.g. What is nobody user and group? / What is the purpose of the 'nobody' user?. On my Arch GNU/Linux system, it has UID=99, and shell /usr/bin/nologin
.
– Peter Cordes
Jan 19 at 21:40
There are a lot of places in the OS where something has to be assigned to some user account. Each file and directory must be owned by some user account, every process (program) running must be running as some user account, etc. The "nobody" account serves mostly as a placeholder for files, processes, etc that don't really belong to any "real" account (even one of the other system accounts in the list).
Essentially, the "nobody" account serves as a way to restrict permissions and access to/from things that don't really belong to any "real" account.
It's also not unique to macOS at all; you'll find it (or an equivalent) on any unix/linux system, and probably many other OSes I'm less familiar with.