Можно ли управлять учетными записями пользователей через командную строку?

12

Есть ли способ добавить, удалить или изменить учетные записи пользователей через командную строку? Я не говорю об учетной записи для системного процесса или демона, я имею в виду, есть ли способ добавить учетную запись пользователя, изменить, реальные имена пользователей, значки, защиту FileVault, Admin / обычный / ограниченный статус пользователя, и в основном делать все иначе это можно сделать на панели предпочтений «Системные настройки пользователей», но с помощью какой-либо утилиты командной строки?

мистифицировать
источник
3
dscl? Может быть? Отправной точкой для поиска, я никогда не пробовал это сам. Вы заметите, что ваша учетная запись полностью отсутствует в / etc / passwd. Возможно, вам повезет, глядя на документы по OSX Server.
Джейсон Салаз
Я не использовал dscl на несерверном Mac, но вполне понятно, что вы можете заставить его работать. Документы по OSX Server дают общее представление о том, что вы можете сделать с помощью инструмента dscl.
Дэвид Рауз

Ответы:

13

Чтобы создать учетную запись в папке «Пользователи»

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 Daily

гнусность
источник
Заключение этих командных строк в `` значительно улучшит читабельность.
Джейсон Салас
Я сделал это (только с /измененным на localonly), но домашний каталог нового пользователя не появился ...
imz - Иван Захарящев
Хорошо, после выхода из однопользовательского режима я смог увидеть нового пользователя в меню входа в систему, а затем в файловой системе появился новый домашний каталог. Так что мой комментарий выше не был о какой-то реальной проблеме.
imz - Иван Захарящев
6

Решение от @Infamy похоже на 10,5.

На OS X 10.6 каждая строка должна быть изменена, чтобы быть похожей на следующее:

sudo dscl localhost -create /Local/Default/Users/addusername

То есть, заменить /на localhost, препенде /Local/Defaultк /Usersи вызвать всю команду с sudo.

bmike
источник
Я сделал это (только с /измененным на localonly), но домашний каталог нового пользователя не появился ...
imz - Иван Захарящев
Хорошо, после выхода из однопользовательского режима я смог увидеть нового пользователя в меню входа в систему, а затем в файловой системе появился новый домашний каталог. Так что мой комментарий выше не был о какой-то реальной проблеме.
imz - Иван Захарящев