Вы успешно отправили задание at
, и оно успешно распечатало дату на (ваш )терминал в /dev/pts/9
. У вас также есть оболочка, которая напечатала приглашение и должным образом ожидает вашего ввода.
Это симуляция того, что произошло:
your-prompt-here$ at -f './at-test.sh' now + 1 minutes
job 1 at Fri Mar 8 20:13:00 2019
your-prompt-here$
your-prompt-here$ 20:14:1552093897
echo I am still here
I am still here
your-prompt-here$
Как видите, моя оболочка приняла команду echo
; мой курсор просто не был там, где я «ожидал», потому что задание at
нацарапало мой терминал.
Похоже, вам нужно выполнить еще несколько шагов, помимо создания пользователя и настройки его оболочки.
Если, как и вы, я запускаю следующие команды:
sudo dscl. -create /Users/hideuser
sudo dscl. -create /Users/hideuser UserShell /bin/bash
А затем проверьте пользователей в системе с dscacheutil -q user
, я не вижу новую учетную запись пользователя hideuser
, и если я пытаюсь войти в систему, я получаю Login incorrect
.
Вам необходимо определить UID нового пользователя (ID пользователя ), выполнив следующую команду:
sudo dscl. -create /Users/hideuser UniqueID 1002
Номер после «UniqueID» (, т. е. 1002 ), должен быть идентификационным номером, который не назначен другому пользователю. Вы можете найти это, проверив вывод и посмотрев на uid, назначенный пользователям.
dscacheutil -q user
Затем вам нужно назначить пользователю основную группу:
sudo dscl. -create /Users/hideuser PrimaryGroupID 1001.
Этот PrimaryGroupID может совпадать с UID.
Именно на этом этапе пользователь будет отображаться при запуске
dscacheutil -q user
Теперь вы можете установить пароль для учетной записи:
sudo dscl. -passwd /Users/hideuser password
Теперь этот пользователь может успешно войти в систему:
Bens-iMac:~ macuser$ login hideuser
Password:
Bens-iMac:~ hideuser$ whoami
hideuser
На этом этапе пользователь может войти в систему, но, к сожалению, он будет отображаться в списках пользователей и окне входа в систему, чтобы скрыть этого пользователя, вам нужно выполнить следующую команду:
sudo dscl. create /Users/hideuser IsHidden 1
К сожалению, это приведет к отображению параметра «Другое» в приглашении для входа в систему, чтобы скрыть это (примечание :это скроет гостевого пользователя, если он включен )вы можете выполнить следующую команду:
sudo defaults write /Library/Preferences/com.apple.loginwindow SHOWOTHERUSERS_MANAGED -bool FALSE