如何在没有useradd命令的情况下添加用户?

是否有可能在没有useradd命令的情况下在ubuntu linux中添加用户我认为可以通过在/etc/passwd and /etc/shadow添加条目来实现,但我不知道确切的步骤,用户应该得到它的主页目录和bash shell也是如此。

不建议手动修改/etc/passwd/etc/shadow/etc/group/etc/gshadow因为存在破损的风险。 如果您正在寻找更易于使用的替代命令,请查看adduser(8) 。 所有你必须运行的是:

 sudo adduser user 

根据/etc/adduser.conf默认为/bin/bash

通常,如果您希望添加具有bash shell的用户,从而创建主目录/home/user和用户组,您将使用:

 sudo useradd --create-home --shell /bin/bash --user-group user 

此命令基本上确定一个免费的用户ID $UID和组ID $GID ,然后执行下一个命令:

 echo "user:x:$UID:$GID::/home/user:/bin/bash" | sudo tee -a /etc/passwd echo "user:x:$GID:" | sudo tee -a /etc/group echo "user:!:$DATE_OF_LAST_PASS_CHANGE:0:99999:7:::" | sudo tee -a /etc/shadow echo "user:!::" | sudo tee -a /etc/gshadow 

..从而可能备份文件。

您可能会对以下有关文件格式的手册页感兴趣:

  • passwd(5)
  • group(5)
  • shadow(5)
  • gshadow(5)

虽然通常不需要或不推荐,但如何使用不使用useradd命令添加用户的问题的答案是使用sudo vipw

这将在锁定passwd文件时启动系统定义的编辑器。 为新用户输入一行。 (在vi中,shift-G到达最后一行,然后yy p复制它。)编辑用户名并创建唯一的用户ID号。

保存文件并退出编辑器后,系统将提示您编辑/ etc / shadow。 使用相同的技术创建新行,并使用“*”作为密码哈希。 新帐户已被锁定。 使用passwd username解锁并设置密码。

还需要创建主目录,从骨架目录复制文件,设置组权限等。但是vipw是您的主要资源。 另见vigr

来源: http : //itguykelly.wordpress.com/2011/04/19/manually-add-new-user-to-red-hatfedoracentos/ (是的,这些命令适用于* nix的各种风格)

在系统中创建用户时,它会对/ etc / passed,/ etc / group,/ etc / shadow等文件产生影响,因此请浏览这些文件并进行手动输入。 最后从/ etc / skel文件中为用户主目录中的用户添加骨架,您必须在主目录中创建该骨架。