|
useradd 命令的详细使用
1. 创建一个默认配置的用户
创建一个用户,登陆名为 user1 ,『uid』,『group』,『gid』,『shell』,『home_dir』都采用默认值。可以通过 $ useradd -D 来查看配置默认值。
- uid :用户账户的 uid ,默认值取决于 /etc/login.defs 文件中定义的 UID_MIN 和 UID_MAX 变量值和在这个区间内(UID_MIN~UID_MAX)当前所有用户 uid 的最大值。默认是区间内当前所有其它用户 uid 最大值 +1,最小是 UID_MIN 。
- group :默认用户组,取决于文件中 USERGROUPS_ENAB 变量的设置,如果设置为 true ,则会创建一个与『登录名』同名的『组』,即 user1 ;如果设置为 false 或 未设置,则会读取 /etc/default/useradd 中的 GROUP 变量的值(初始值是100),将这个值设为用户的主『group』。
- gid :用户组的 id 号,当自动创建与『登录名』同名的『组』时,『组』的 gid 值取决于 /etc/login.defs 文件中 GID_MIN 和 GID_MAX 变量的值和在这个区间内(GID_MIN~GID_MAX)当前所有组 gid 的最大值。默认是区间内当前所有其它组 gid 最大值 +1,最小是 GID_MIN 。
- shell :用户默认的 shell。默认值取决于 /etc/default/useradd 文件中 SHELL 变量的值。(初始值是 /bin/sh )
- home_dir :用户主目录。取决于 /etc/login.defs 文件中 CREATE_HOME 变量的值。如果此变量为设置或为 false ,则不会创建主目录(初始值是未设置);如果此变量值为 true,则创建的主目录的路径为 /etc/default/useradd 文件中 HOME 变量的值,后面加上登录名。如果 HOME 变量未设置,默认值为 /home ,那么路径为 /home/user1
2. 创建一个用户,指定 uid 【-u / --uid】
- $ sudo useradd -u 2000 user2
- $ sudo useradd --uid 2001 user3
复制代码 uid 号不能和已有的 uid 号重复,不能为负数。
3. 创建一个用户,指定组名或组号 【-g / --gid】
- $ sudo useradd -g group1 user5
- $ sudo useradd --gid 2004 user6
复制代码 gid 号或者 『组』名必须已存在。
4. 创建一个用户,指定要加入的额外『组』【-G / --groups】
- $ sudo useradd -G group2,group3 user7
- $ sudo useradd -g 2003 -G 2006 user8
复制代码 -G 的参数可以是一个列表,中间用逗号(英文)分隔,不能有空格。可以是『组』名,也可以是gid。
5. 创建一个用户,指定 shell 。【-s / --shell】
- $ sudo useradd -s /bin/sh user9
- $ sudo useradd -s /bin/false user10
- $ sudo useradd --shell /usr/sbin/nologin user11
复制代码 6. 创建一个用户,指定要创建用户『主目录』【-m / --create-home】
- $ sudo useradd -m user12
- $ sudo useradd --create-home user13
复制代码 默认『主目录』的路径会读取 /etc/default/useradd 文件中 HOME 变量的值加上『用户名』,如果 HOME 变量未设置,那么默认值为 /home ,那么最终路径为 /home/user12 和 /home/user13 。
7. 创建一个用户,指定要创建用户『主目录』,并指定『主目录』路径 【-m / --create-home, -d / --home-dir】
- $ sudo useradd -m -d /home/ppp_user14 user14
- $ sudo useradd -m --home-dir /home/ppp_user15 user15
复制代码 『主目录』的路径为 /home/ppp_user14 和 /home/ppp_user15 。
8. 创建一个用户,指定要创建用户『主目录』,并指定『主目录』基准路径 【-m / --create-home, -b / --base-dir】
- $ sudo useradd -m -b /home/base_users user17
- $ sudo useradd -m --base-dir /home/base_users user18
复制代码 『主目录』指定的路径要已存在。最终路径为基准路径加上『用户名』,即 /home/base_users/user17 和 /home/base_users/user18 。
9. 创建一个用户,指定要创建用户『主目录』,并指定初始化『主目录』内容的『骨干目录』 【-m / --create-home, -k / --skel】
- $ sudo useradd -m -k /data/user_init/ user19
- $ sudo useradd -m --skel /data/user_init/ user20
复制代码 『骨干目录』 /data/user_init/ 中的内容会复制到用户『主目录』 /home/user19 和 /home/user20 中。
10. 创建一个用户,指定过期时间 【-e / --expiredate】
- $ sudo useradd -e 2024-01-24 user21
- $ sudo useradd --expiredate 2024-01-23 user22
复制代码 指定用户账户被禁用的日期,格式为 YYYY-MM-DD。
11. 创建一个用户,指定不要创建用户『主目录』 【-M / --no-create-home】
- $ sudo useradd -M user23
- $ sudo useradd --no-create-home user24
复制代码 12. 创建一个用户,指定不要创建同『登录名』的『组』 【-N / --no-user-group】
- $ sudo useradd -N user25
- $ sudo useradd --no-user-group user26
复制代码 不会创建与『登录名』同名的『组』,但会把用户加到 /etc/default/useradd 文件中 GROUP 变量指定的组,默认是100。
13. 创建一个系统账户 【-r / --system】
- $ sudo useradd -r user27
- $ sudo useradd --system user28
复制代码 根据 /etc/login.defs 文件中 SYS_UID_MIN 和 SYS_UID_MAX 变量的值,在此区间内创建用户的 uid 号,默认不会创建用户的『主目录』,除非通过 -m 来指定。
来源:https://www.cnblogs.com/flamer/p/17983798
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|