4.2- 添加新用户 useradd详解

useradd是添加新用户的主要工具,此命令为创建新用户账户并同时建立用户的HOME目录结构提供了一种简便的方法。

useradd使用系统默认值结合命令行参数来定义用户账户,查看useradd所使用的默认值的方法:

方法一:使用 useradd -D命令

[root@hadoop ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

方法二:查看文件 /etc/dafault/useradd

[root@hadoop etc]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

如果在创建新用户账户时未在命令行中指定各属性,使用-D的默认值,说明:
* GROUP=100 新用户将被添加到用户组ID为100的公共用户组中
* HOME=/home 新用户将在/home/loginname目录下创建一个HOME账户
* INACTIVE=-1 当密码过期时,账户将不会被禁用
* EXPIRE= 新账户不会在设定日期被设置为逾期
* SHELL=/bin/bash 新账户使用 bash shell 作为默认shell
* SKEL=/etc/skel 系统将/etc/skel目录中的内容复制到用户的HOME目录
* CREATE_MAIL_SPOOL=yes 系统将在邮件目录中创建一个文件用于用户账户接收邮件

1、 SKEL=/etc/skel 详解
/etc/skel目录中包含以下文件,它们是bash shell环境的标准启动文件。
系统会自动将这些默认文件复制到创建的每个用户的HOME目录中,将会使用/etc/skel中的文件创建一个新的HOME目录

   [root@hadoop ~]# ls -lia /etc/skel
总用量 24
   33287 drwxr-xr-x.  3 root root   78 6月  11 13:23 .
16777281 drwxr-xr-x. 87 root root 8192 7月   7 15:01 ..
   33292 -rw-r--r--.  1 root root   18 10月 31 2018 .bash_logout
   33293 -rw-r--r--.  1 root root  193 10月 31 2018 .bash_profile
   33294 -rw-r--r--.  1 root root  231 10月 31 2018 .bashrc
17269020 drwxr-xr-x.  4 root root   39 6月  11 13:23 .mozilla

2、 useradd命令行参数详解
也可以自定义命令行参数而不使用默认值,useradd的命令行参数如下:
在这里插入图片描述
在这里插入图片描述

3、 如何修改默认值?
使用-D参数和表示要修改的值的参数,可以修改默认的新用户值,参数如下:
在这里插入图片描述

[root@hadoop home]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@hadoop home]# useradd -D -b /home_new
[root@hadoop home]# useradd -D
GROUP=100
HOME=/home_new
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

4、 用户信息存放位置
/etc/passwd 用户基本信息存放位置
/etc/shadow 用户密码存放位置,用户名同于 /etc/passwd
/etc/group 用户组存放位置,用户名和用户组ID同于 /etc/passwd
/etc/gshadow 用户组安全位置
/etc/dafault/useradd 用户创建的默认值,即为 useradd -D 看到的默认值
/etc/skel 创建新用户家目录下的源文件,useradd -D 中查看到 /etc/skel为SKEL文件

5、 添加用户示例
1> 单独使用useradd
/etc/passwd 增加用户 dafu1
/etc/shadow 增加用户 dafu1
/etc/group 增加用户 dafu1
/etc/gshadow 增加用户 dafu1

[root@hadoop home]# useradd dafu1
[root@hadoop home]# useradd dafu1
[root@hadoop home]# cat /etc/passwd | grep dafu1
dafu1:x:1000:1000::/home/dafu1:/bin/bash
[root@hadoop home]# cat /etc/shadow | grep dafu1
dafu1:!!:18132:0:99999:7:::
[root@hadoop home]# cat /etc/group | grep dafu1
dafu1:x:1000:
[root@hadoop home]# cat /etc/gshadow  | grep dafu1
dafu1:!::

2> 创建用户指定UID -u参数

[root@hadoop etc]# useradd dafu2 -u 1100
[root@hadoop etc]# cat /etc/passwd | grep dafu2
dafu2:x:1100:1100::/home/dafu2:/bin/bash
[root@hadoop etc]# cat /etc/shadow | grep dafu2
dafu2:!!:18132:0:99999:7:::
[root@hadoop etc]# cat /etc/group | grep dafu2
dafu2:x:1100:
[root@hadoop etc]# cat /etc/gshadow | grep dafu2
dafu2:!::

3> 创建用户指定用户家目录 -d参数

[root@hadoop etc]# useradd dafu3 -d /home/dafu3_new
[root@hadoop etc]# cat /etc/passwd | grep dafu3
dafu3:x:1101:1101::/home/dafu3_new:/bin/bash

4> 创建用户指定用户组(包括用户组和附加组) -g参数 和 -G参数
指定的用户组必须已经存在

[root@hadoop etc]# useadd dafu4 -g dafu4_new -G user4_new_add 
bash: useadd: 未找到命令
[root@hadoop etc]# useradd dafu4 -g dafu4_new -G user4_new_add 
useradd:“dafu4_new”组不存在
[root@hadoop etc]# useradd dafu4 -g dafu2 -G user4_new_add 
useradd:“user4_new_add”组不存在
[root@hadoop etc]# useradd dafu4 -g dafu2 -G user2 
useradd:“user2”组不存在
[root@hadoop etc]# useradd dafu4 -g dafu2 -G dafu2
[root@hadoop etc]# cat /etc/passwd | grep dafu4
dafu4:x:1102:1100::/home/dafu4:/bin/bash 
[root@hadoop etc]# cat /etc/group | grep 1100
dafu2:x:1100:dafu4  

备注:使用useradd 命令添加用户之后,需要使用 passwd 命令设置账户的密码
关于 passwd 的详细用法见: https://blog.csdn.net/yaoyelinger0912/article/details/100056900

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值