centos userad命令详解

  1. 命令作用
    用于创建用户
  2. 常见参数
  • -d 指定用户的家目录
  • -e 账号的到期时间,格式YYYY-MM-DD
  • -u 指定该用户的默认UID,(centos7开始1000是普通用户的第一个UID)
  • -g 指定一个初始的用户基本组(必须已经存在)
  • -G 指定一个或多个扩展用户组
  • -s 指定改用户的默认shell解释器
  • -p 在创建用户的使用指定密码
  • -M 在创建用户的同时不会创建用户家目录
  • m 创建一个与用户关联的主目录
  • --system 创建一个系统用户,UID低于1000的用户
  1. 实践

    3.1. 创建用户并指定用户的家目录(默认是在/home下面)

    复制代码
    useradd -d /tom tom
    powershell 复制代码
    cat /etc/passwd | grep tom
    tom:x:1000:1000::/tom:/bin/bash

    3.2.创建用户并指定用户UID

    直接创建用户查看UID

    复制代码
    useradd tom
    powershell 复制代码
    id tom
    uid=1000(tom) gid=1000(tom) 组=1000(tom)

    第一个普通用户的默认UID是1000,新增用户往上递增;

    指定用户UID为2000

    复制代码
    useradd -u 2000 tom
    powershell 复制代码
    id tom
    uid=2000(tom) gid=2000(tom) 组=2000(tom)

3.2. 创建用户并指定默认主组为root

用户创建时,会默认一个同名的组;

例如,创建用户tom,并查看组

复制代码
useradd tom
powershell 复制代码
id tom
uid=1000(tom) gid=1000(tom) 组=1000(tom)

可以看到,创建了一个GID为1000的与用户同名的组;

创建用户指定,默认的组为root

复制代码
useradd tom -g root
powershell 复制代码
id root
uid=0(root) gid=0(root) 组=0(root)

可以看出默认组已经改成root了

3.3. 创建用户并给用户加入一个外部组

复制代码
useradd -G root tom
powershell 复制代码
uid=1000(tom) gid=1000(tom) 组=1000(tom),0(root)

可以看出,用户拥有自己的默认组,还拥有了一个外部组

3.4. 创建用户时,指定用户的shell

创建用户默认指定的是 /bin/bash

创建用户指定shell为 /sbin/nologin

复制代码
useradd tom -s /sbin/nologin
powershell 复制代码
tom:x:1000:1000::/home/tom:/sbin/nologin

3.5. 在创建用户的同时,并设置密码

复制代码
useradd tom -p 123456

默认明文是不安全的,我们可以对密码进行加密

复制代码
useradd tom -p $(openssl passwd -1 123456)

3.6. 创建用户时,不创建用户的家目录

复制代码
useradd -M tom

3.7. 创建一个系统用户

系统用户就是UID低于1000的用户,并且不会创建家目录

复制代码
useradd tom --system
powershell 复制代码
uid=996(tom) gid=993(tom) 组=993(tom)

可以使用-m为系统用户创建家目录

复制代码
 useradd tom --system -m

注:所有参数可以搭配使用

  1. 删除用户

    复制代码
    userdel tom

    删除用户,但不删除用户的家目录

    复制代码
    userdel -r tom

    删除用户,并删除用户的家目录

相关推荐
路溪非溪7 分钟前
关于Linux内核中头文件问题相关总结
linux
木易双人青13 分钟前
01-Docker-简介、安装与使用
运维·docker·容器
专注API从业者1 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
Lovyk2 小时前
Linux 正则表达式
linux·运维
Fireworkitte3 小时前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos
sword devil9004 小时前
ubuntu常见问题汇总
linux·ubuntu
ac.char4 小时前
在CentOS系统中查询已删除但仍占用磁盘空间的文件
linux·运维·centos
中科米堆5 小时前
中科米堆CASAIM自动化三维测量设备测量汽车壳体直径尺寸
运维·自动化·汽车·视觉检测
淮北也生橘126 小时前
Linux的ALSA音频框架学习笔记
linux·笔记·学习
缘华工业智维6 小时前
CNN 在故障诊断中的应用:原理、案例与优势
大数据·运维·cnn