Linux Shell:useradd选项

时间:2015-12-04 15:47:12

标签: linux shell ubuntu command

有人可以给我一点帮助:

sudo useradd -c USERNAME new_user | passwd new_user

我要做的是将新用户添加到系统并在一行中设置密码,而无需执行两个命令。当我输入这一行时,它告诉我用户new_user不存在。有人可以帮助我或者向我解释为什么这不起作用吗?

如果有更好的方法,请随时告诉我。

谢谢你, 亚历

4 个答案:

答案 0 :(得分:2)

对于交互式密码输入,单行可以是:

sudo $SHELL -c "useradd UNAME && passwd UNAME"

对于预定义的密码,您可以执行以下操作:

useradd -p $(mkpasswd --method=sha-512 --rounds=10 SECRET) UNAME

但是,我建议反对:)

要了解系统上使用的加密方法,您可以查看/etc/shadow:如果哈希以$6$开头 - 它是SHA-512(如示例所示)。

答案 1 :(得分:1)

只需使用-p选项useradd

即可
sudo useradd -c USERNAME -p new_password new_user 

答案 2 :(得分:1)

您可以使用useradd命令的-p选项,但需要提供加密密码,例如使用openssl库:

sudo useradd -c USERNAME new_user -p $(openssl passwd -crypt new_user_password)

您也可以使用其他加密方法,但不能使用清除密码,因为useradd手册指出-p参数采用" crypt(3)"返回的加密密码。

答案 3 :(得分:0)

您也可以试试这个

adduser username; passwd username;