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
    

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

相关推荐
二十七剑几秒前
jvm调试和查看工具
java·linux·jvm
菜菜小蒙9 分钟前
【Linux】基于UDP/TCP服务器与客户端的实现
linux·服务器·udp
a小胡哦25 分钟前
Windows、Mac、Linux,到底该怎么选?
linux·windows·macos·操作系统
_extraordinary_34 分钟前
Linux权限(一)
android·linux·excel
易安杰41 分钟前
ElasticSearch+Kibana通过Docker部署到Linux服务器中
linux·elasticsearch·搜索引擎·全文检索·中文分词
web2u1 小时前
Docker入门及基本概念
java·运维·服务器·spring·docker·容器
人生!?1 小时前
给小米/红米手机root(工具基本为官方工具)——KernelSU篇
android·linux·智能手机
元气满满的热码式2 小时前
Docker实战-使用docker compose搭建博客
运维·docker·容器
Anna_Tong2 小时前
阿里云如何协助解决操作系统兼容性问题
linux·服务器·ubuntu·阿里云·centos·云计算·系统迁移
不良人天码星2 小时前
Linux的基础指令和环境部署,项目部署实战(下)
linux·运维·服务器