Можно ли управлять учетными записями пользователей через командную строку?
-
16-10-2019 - |
Вопрос
Есть ли способ добавить, удалить или изменить учетные записи пользователей через командную строку? Я не говорю о учетной записи для системного процесса или демона, я имею в виду, есть ли способ добавить учетную запись пользователя, изменение, реальные имена пользователей, значки, защита FileVault, администратор/нормальный/ограниченный статус пользователя и в основном делать все иначе, что можно сделать на панели предпочтения системных настроек, но через какую -то утилиту командной строки?
Решение
Чтобы создать учетную запись в папке пользователей
dscl / -create /Users/addfromcli
Создайте и установите свойство оболочки в Bash.
dscl / -create /Users/addfromcli UserShell /bin/bash
Создайте и установите полное имя пользователя. (Отображается на некоторых панелях/экране входа в систему)
dscl / -create /Users/addfromcli RealName "Added From Cli"
Создайте и установите идентификатор пользователя. (Это уникальный идентификатор, вам нужно выяснить, каким был идентификатор, который создал ваш последний пользователь, и добавить его)
dscl / -create /Users/addfromcli UniqueID 503
Создайте и установите свойство идентификатора группы пользователя. (Это может быть ваша группа по умолчанию)
dscl / -create /Users/addfromcli PrimaryGroupID 1000
Создайте и установите домашний каталог пользователя.
dscl / -create /Users/addfromcli NFSHomeDirectory /Local/Users/addfromcli
Установите пароль. (не используйте пароль в качестве пароля)
dscl / -passwd /Users/addfromcli PASSWORD
Некоторые подробности можно найти на OS X ежедневно
Другие советы
Решение @infamy, кажется, предназначено для 10.5.
На OS X 10.6 каждая строка должна быть изменена, чтобы выглядеть следующим образом:
sudo dscl localhost -create /Local/Default/Users/addusername
То есть заменить /
по localhost
, предположить /Local/Default
к /Users
и вызвать всю команду с sudo
.