从命令行在MacOS X上创建用户的正确方法是什么,该命令行仅用于运行服务器应用程序?例如,已有Apache httpd的'_www'用户,但对于新应用程序,我希望它使用自己的帐户。
答案 0 :(得分:11)
没有" adduser"命令。 Mac方法是使用dscl命令,它是"目录服务命令行实用程序"。目录服务与LDAP概念类似,但它是一种不同的解决方案。
以下示例将使用' mydaemon'作为预期帐户,尽管通常使用与守护程序应用程序名称匹配的值。
所有守护程序用户都以下划线为前缀,例如_www。
列出现有条目的属性:
sudo dscl . -read /Users/_www
在创建用户之前,请创建一个组,选择一个未使用的组ID(这里我们选择300):
sudo dscl . -create /Groups/_mydaemon
sudo dscl . -create /Groups/_mydaemon PrimaryGroupID 300
完成后,我们会创建一个新用户(我们使用与我们为该组所做的相同的ID,但不会使用shell:
sudo dscl . -create /Users/_mydaemon UniqueID 300
sudo dscl . -create /Users/_mydaemon PrimaryGroupID 300
sudo dscl . -create /Users/_mydaemon UserShell /usr/bin/false
以上内容基于阅读各种信息来源并自行验证过程。我发现有用的一个参考是:
http://minecraft.gamepedia.com/Tutorials/Create_a_Mac_OS_X_startup_daemon
注意,还有dscl的GUI版本(基于MacOS X 10.10的位置):
/ System / Library / CoreServices / Applications / Directory \ Utility.app /