
Я хотел бы создавать пользователей из командной строки (или с помощью скрипта оболочки) в macOS High Sierra и Mojave. Учетные записи пользователей должны быть копиями шаблона пользователя. Чтобы создать шаблон, я внес изменения в папку /System/Library/User Template/
Шаблон работает, если я создаю пользователей вручную. Однако, если я использую уже существующий скрипт оболочки для создания пользователя, настройки шаблона игнорируются.
Вот код, который используется для создания учетных записей пользователей.
#!/bin/bash
if [ $# -ne 3 ]; then
echo "Only 3 Arguments allowed"
else
account=$1
password=$2
uid=$3
username=$account
realname=$account
usershell=/bin/bash
uniqueid=$uid
primarygroupid=20
passwd=$password
pic="/Library/User Pictures/Fun/Chalk.tif"
upath="/Users/${username}"
echo "Create User ${upath}? (Y) to go on ..."
read yes
if [ "$yes" == Y ]; then
dscl . create $upath
dscl . create $upath UserShell $usershell
dscl . create $upath RealName "${realname}"
dscl . create $upath UniqueID $uniqueid
dscl . create $upath PrimaryGroupID $primarygroupid
dscl . create $upath NFSHomeDirectory $upath
dscl . passwd $upath $passwd
dscl . create $upath picture "${pic}"
else
echo "Nothing created"
fi
fi
Что-нибудь можно сделать? Может быть, есть альтернатива dscl для создания учетных записей пользователей? Известная команда Linux adduser здесь не существует.
Патрик