Linux useradd 命令
Linux useradd 命令
快速使用
常用命令 | 说明 | 备注 |
---|---|---|
useradd -d test | 添加用户并在home下创建默认目录, 和adduser不同在于需要通过passwd设置密码,本身没有 密码 |
默认无密码 账号保存在 /etc/passwd |
简介
Linux useradd 命令用于建立用户帐号。
useradd 可用来建立用户帐号。
帐号建好之后,再用 passwd 设定帐号的密码。
而可用 userdel 删除帐号。
使用 useradd 指令所建立的帐号,实际上是保存在 /etc/passwd 文本文件中。
语法
useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>][-u <uid>][用户帐号]
或
useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>]
参数说明:
- -c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。
- -d<登入目录> 指定用户登入时的起始目录。
- -D 变更预设值.
- -e<有效期限> 指定帐号的有效期限。
- -f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
- -g<群组> 指定用户所属的群组。
- -G<群组> 指定用户所属的附加群组。
- -m 制定用户的登入目录。
- -M 不要自动建立用户的登入目录。
- -n 取消建立以用户名称为名的群组.
- -r 建立系统帐号。
- -s
指定用户登入后所使用的shell。 - -u
指定用户ID。
实例
添加一般用户
# useradd tt
为添加的用户指定相应的用户组
# useradd -g root tt
创建一个系统用户
# useradd -r tt
为新添加的用户指定home目录
# useradd -d /home/myd tt
建立用户且制定ID
# useradd caojh -u 544
添加一个不能登录的用户
useradd -d /usr/local/apache -g apache -s /bin/false apache
要拒绝系统用户登录,可以将其 shell 设置为 /usr/sbin/nologin 或者 /bin/false。
usermod -s | --shell /usr/sbin/nologin username
或者
usermod -s | -shell /bin/false username
说明及比较:
/bin/false
/bin/false 什么也不做只是返回一个错误状态,然后立即退出。
将用户的 shell 设置为 /bin/false,用户会无法登录,并且不会有任何提示。
/usr/sbin/nologin
nologin 会礼貌的向用户显示一条信息,并拒绝用户登录:
This account is currently not available.
有一些软件,比如一些 ftp 服务器软件,对于本地非虚拟账户,只有用户有有效的 shell 才能使用 ftp 服务。
这时候就可以使用 nologin 使用户即不能登录系统,还能使用一些系统服务,比如 ftp 服务。
/bin/false 则不行,这是二者的重要区别之一。
/etc/nologin
如果存在 /etc/nologin 文件,则系统只允许 root 用户登录,其他用户全部被拒绝登录,并向他们显示 /etc/nologin 文件的内容。