Ich habe die Anweisungen hier befolgt , um den Benutzer zu erstellen jira
:
sudo dscl . create /Users/jira
sudo dscl . passwd /Users/jira
sudo dscl . create /Users/jira RealName "jira user"
sudo dscl . create /Users/jira UserShell /bin/bash
sudo dscl . append /Groups/admin GroupMembership jira
aber ich habe zwei probleme:
Zuerst erscheint der Benutzer als kein Admin-Mitglied, obwohl ich ihn als Admin hinzugefügt habe (und neu gestartet habe, siehe hier )
Zweitens kann ich diesen Benutzer nicht zu seinem eigenen Verzeichnis machen, dh wenn ich laufe
sudo chown jira /var/jira
Ich bekomme
chown: jira: illegal user name
Ich kann mich auch nicht als dieser Benutzer anmelden:
su jira
Password:
su: unknown login: jira
obwohl der Jira-Benutzer in der Liste der Benutzer erscheint:
dscl . list /Users | grep jira
jira
Und
Die Anweisungen, denen Sie folgen, sind ziemlich konfus und unvollständig; Weitere Informationen finden Sie in dieser ServerFault-Frage . Ich denke, das Hauptproblem besteht darin, dass Sie nicht alle erforderlichen Attribute für den neuen Benutzer festgelegt haben (obwohl Sie mehr festgelegt haben, als Ihr Codefragment vermuten lässt!). Du fehlst:
sudo dscl . create /Users/jira UniqueID 499 # Use some unique user ID number here; numbers below 500 for hidden accounts
sudo dscl . create /Users/jira PrimaryGroupID 20 # This is the "staff" group; add to admins separately
sudo dscl . create /Users/jira NFSHomeDirectory /var/jira # /var is a good place to hide things; regular users go under /Users
sudo dseditgroup -o edit -t user -a jira admin # This is the RIGHT way to add a secondary group membership
Die Probleme mit Ihrem aktuellen Setup sind: die primäre Gruppenmitgliedschaft von -2 (die "niemand"-Gruppe), die Verwirrung darüber, ob das Home-Verzeichnis /Users/jira oder /var/jira ist (stellen Sie sicher, dass das NFSHomeDirectory auf den tatsächlichen Speicherort zeigt ! des Verzeichnisses!), und dass Sie die Mitgliedschaft in der Admin-Gruppe nicht vollständig festlegen (das Anhängen des Kontonamens des Benutzers an GroupMembership ist nur ein Teil davon; Sie sollten auch seine GeneratedUID an GroupMembers anhängen oder dseditgroup verwenden und es lassen regeln die Details).
BEARBEITEN: Kent hat darauf hingewiesen, dass /Users/jira immer der Pfad zum Benutzerkonto in ist dscl
und möglicherweise auch der Pfad zum Home-Ordner des Benutzers im Dateisystem (das NFSHomeDirectory-Attribut). Sie sind sich zum Verwechseln ähnlich, haben aber nicht unbedingt etwas miteinander zu tun. In den obigen Befehlen zeige ich, dass der Speicherort des Home-Ordners auf /var/jira gesetzt wird, um ihn auszublenden. Um mein Beispiel zu vervollständigen, hier ist, wie Sie den Home-Ordner erstellen würden:
cp -R /System/Library/User\ Template/English.lproj /var/jira
chown -R jira:staff /var/jira
Diese Befehle erstellen den Home-Ordner; Das NFSHomeDirectory-Attribut teilt dem Benutzer mit, wo er es finden kann, wenn er sich anmeldet. Es ist wichtig, dass sie übereinstimmen.
Oh, und wenn Englisch nicht die Hauptsprache des Benutzers ist, stehen eine Reihe anderer Benutzervorlagen zur Auswahl.
Kent