管理本地用户帐户

时间:2013-04-25 03:44:52

标签: linux windows macos node.js user-accounts

假设节点以root身份运行,我该如何:

  • 添加新的本地(OS)用户帐户并获取其uid?
  • 按名称删除帐户?

帐户将用于守护程序进程,因此它们不必是完整的用户帐户。

在Linux上执行此操作是首要任务,在OS X上执行此操作会很好,并且支持Windows的超级奖励。

在Linux上,我想你可以只生成useradd,但是你如何确定新用户的uid?是否会更好(或更糟)直接修改/etc/passwd和朋友?

在Windows上,NetUserAdd看起来像是正确的地方;有人已经写了一个插件来调用它吗?

2 个答案:

答案 0 :(得分:1)

对于Linux,使用useradd创建帐户后,您可以致电getent passwd <username>查看所有主要相关帐户详细信息,包括第3个字段中的uid。

示例:

# useradd -c "Jamie Carter" jamiec

# getent passwd jamiec

的产率:

jamiec:x:2722:500:Jamie Carter:/ home / jamiec:/ bin / false

要在单行中获取uid,您可以结合使用cut命令获取第3个字段,同时将:视为分隔符:

$ getent passwd jamiec | cut -d: -f 3

2722

通常,不直接操纵/ etc / passwd和朋友会更安全,更容易。您需要做的大部分内容可能已经在某个系统命令中。例如,userdel <username>将从/ etc / passwd中按名称删除帐户,但也负责从/ etc / groups中删除用户,这样您就不会有孤立的信息。 (如果您编写了自己的用户删除操作,则必须自己处理。)

答案 1 :(得分:0)

这是一个很大的&amp;广泛的问题(MacOS,Windows,Linux一起),但create a new user from the command line on the Macintosh is not trivialwould require you to be authenticated as root / admin