Why would "su -fm nobody" prompt to change the nobody password on one MacOS system but not on others?
I am curious about this because system scripts such as locate.updatedb that run as the unprivileged user 'nobody' fail when su stops to ask for a password change. For example:
$ sudo su -fm nobody -c "ls -al /etc/passwd" Old Password: New Password: Retype New Password: su: Sorry
The same happens if I first change to root
$ sudo su $ su -fm nobody -c "ls -al /etc/passwd" Old Password: .. su: Sorry
su does not prompt for a password change when 'nobody' is replaced with 'root' or a user account:
$ sudo su -fm root -c "ls -al /etc/passwd" -rw-r--r-- 1 root wheel 6774 Apr 9 19:28 /etc/passwd
The /etc/password entry for 'nobody' and /var/db/dslocal/nodes/Default/users/nobody.plist appear consistent with other working systems.
Update: The problem went away after deleting all profiles. Could a management profile setting a minimum password length have caused this?