添加了一个 adduser 命令来简化添加用户的操作。本文主要描述笔者在学习使用 useradd 命令时的一些测试结果。
功能
新用户信息。
管理员使用 adduser 命令。其实 adduser 命令只是一个调用了 useradd 命令的脚本文件。
-g<群组><span style="color: #000000;"> 初始群组。
-G<群组><span style="color: #000000;"> 非初始群组。
-<span style="color: #000000;">m 自动创建用户的家目录。
-<span style="color: #000000;">M 不要创建用户的家目录。
-<span style="color: #000000;">N 不要创建以用户名称为名的群组。
-s 指定用户登入后所使用的shell。
用户组
文件中,每行的第四个字段指定的就是用户的初始群组。用户登录后立即就拥有了初始群组中的权限。
用法:
用户 tester1 的同时会创建一个同名的群组。用户 tester1 的初始群组就是这个新建的群组。
生成与用户同名的群组。查看下 /etc/passwd 文件,发现 tester2 用户的初始群组ID是100。这个100是哪来的?有ID为100的群组吗?其实100作为 -N 的默认值是写在配置文件中的。不管有没有ID为100的群组,都是这个值。当然我们也可以通过修改配置文件来改变这个默认值!
文件,看看有没有新的群组被创建? tester3 的初始群组又是谁?这次没有创建与 tester3 同名的群组。用户 tester3 的初始群组变成了 sudo。
文件。因为这次不仅创建了群组 tester4,它还是用户 tester4 的初始群组。和tester1 的唯一不同是 tester4 被加入了 sudo 群组。
用户家目录的处理让人困惑,下面我们将通过实验来了解家目录相关的不同选项的使用方法:
用户 tester1 这条命令。它不会为用户 tester1 创建名为 tester1 的目录作为家目录,但是我们打开 /etc/passwd 文件,发现 tester1 的记录中居然包含了家目录 /home/tester1。
用户的同时创建用户的家目录,必须指定 -m 选项。
不生成目录 abc
生成目录 abcd,并且目录下默认存在文件
Case 1: 创建一个带有家目录并且可以登录 bash 的用户
Case 2: 指定创建用户家目录的路径