linux第五部分:用户管理,系统小管家

第五部分:用户管理,系统小管家

cat /etc/group 查看用户有哪些

# 用户信息文件
vim /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
tom:x:1000:1000:tom:/home/tom:/bin/bash

#三类用户
root用户id是0,超级管理员用户;
系统用户,id 1~999,用于程序目录的权限管理,或执行某些特殊命令;
普通用户,id 1000+,可以登陆系统,执行普通命令,日常操作;

#通过命令或直接修改/etc/passwd来创建用户
tom(1):x(2):1000(3):1000(4):tom(5自定义):/home/tom(6):/bin/bash(7)
1。用户名
2.x占位,早期用于密码存储, 现在以密文形式存放在/etc/shadow/
3.uid,用户id
4.gid,组id
5.简介,可以写入用户全名、邮箱、电话等信息,也可以省略
6.用户家目录,root用户是/root,普通用户是 /home/用户名
7.用户的shell或是用户登录时执行的命令。

45useradd/adduser:创建用户

useradd 选项:
选项:

    • -c, --comment COMMENT :设置新账户的 GECOS 字段(可填用户备注等信息 )
    • -d, --home-dir HOME_DIR :指定新账户的主目录路径
    • -D, --defaults :显示或修改 useradd 命令的默认配置
    • -e, --expiredate EXPIRE_DATE :设置新账户的过期日期(格式需符合系统要求,如 YYYY - MM - DD
    • -f, --inactive INACTIVE :配置新账户的密码不活动期(密码过期后,账户仍可登录的宽限天数 )
    • -g, --gid GROUP :指定新账户主组的名称或 GID(组 ID )
    • -G, --groups GROUPS :添加新账户到附加组列表(多个组用逗号分隔 )
    • -h, --help :显示帮助信息并退出
    • -k, --skel SKEL_DIR :使用指定目录作为用户主目录的骨架模板(复制初始文件等 )
    • -K, --key KEY=VALUE :覆盖 /etc/login.defs 里的默认配置(自定义参数 )
    • -l, --no-log-init :不将用户信息添加到最近登录、登录失败的数据库记录
  • 主目录与用户组控制
    • -m, --create-home :创建用户主目录(搭配骨架目录模板时会复制初始文件 )
    • -M, --no-create-home :不创建用户主目录
    • -N, --no-user-group :不为用户创建同名的默认组
    • -U, --user-group :为用户创建同名的默认组
  • 系统账户与登录环境
    • -r, --system :创建系统账户(常用于系统服务,UID 一般在系统默认范围 )
    • -s, --shell SHELL :指定新账户的登录 Shell(如 /bin/bash/sbin/nologin 等 )
    • -u, --uid UID :指定新账户的用户 ID(需确保 UID 未被占用,符合系统规则 )
    • -Z, --selinux-user SEUSER :为 SELinux 用户映射指定 SEUSER(适配 selinux 策略场景 )
useradd -u 6666 -s /bin/sh -d /tmp -G root list

# usermod修改用户信息
usermod -aG root -u 5678 -s /sbin/nologin 用户名
-c  修改注释信息
-u  修改uid
-s  修改shell
-d 修改家目录
-G 修改附加组
-a 追加到组中
-g 修改主组

46.userdel:删除用户

userdel 用户名

# -r 可以在删除用户同时,删除他的家目录和邮件池
userdel -r 用户名
1 # 查看组设置
2 cat /etc/group
3 root:x:0:tom,zj
4 1.组名
5 2.组密码占位
6 3.Gid组的唯一数字标识(Group ID),类似用户的 UID
7 4.附加用户可以添加多个以“,”分开
# 1. 创建组(名为 python )一般为附加组
groupadd python  

# 2. 将用户 zj 加入 python 组(-a 追加、-G 指定附加组)
usermod -aG python zj  

# 3. 修改组 GID(把 Python 组的 GID 设为 1111 ,注意组名大小写需与实际一致 )
groupmod -g 1111 Python  

# 4. 删除组(移除名为 python 的组,需组内无用户才允许删除 )
groupdel python  

# 5. 组密码管理(用于设置/修改组密码,管控用户加入组等权限 )
gpasswd  

#主组和附加组
主组:创建用户时,同时创建的同名组。或者/etc/passwd文件中和用户绑定的组
一个主组可以绑定很多用户,一个用户只能有一个主组。(一对多)
root:x:0:0:root:/root:/bin/bash
用户创建文件或目录时默认的组,就是主组。
附加组:为了方便访问共享文件,协同办公。将多个用户添加到一个组中。可以使用组权限。
一个附加组可以绑定很多用户,一个用户可以有很多附加组。(多对多)

47.passwd:修改用户密码

passwd 用户名
敲两遍密码
8位+,数字字母下划线,复杂度高一点的。

#秘钥登陆(非对称加密)公钥和私钥
# ssh 秘钥登陆
用法:passwd [选项...] < 帐号名称 >
-k, --keep-tokens 保持身份验证令牌不过期
-d, --delete 删除已命名帐号的密码 (只有根用户才能进行此操作)
l, --lock 锁定指名帐户的密码 (仅限 root 用户)
u, --unlock 解锁指名账户的密码 (仅限 root 用户)
e, --expire 终止指名帐户的密码 (仅限 root 用户)
f, --force 强制执行操作
x, --maximum=DAYS 密码的最长有效时限 (只有根用户才能进行此操作)
n, --minimum=DAYS 密码的最短有效时限 (只有根用户才能进行此操作)
w, --warning=DAYS 在密码过期前多少天开始提醒用户 (只有根用户才能进行此操作)
i, --inactive=DAYS 当密码过期后经过多少天该帐号会被禁用 (只有根用户才能进行此操作)
S, --status 报告已命名帐号的密码状态 (只有根用户才能进行此操作)
--stdin 从标准输入读取令牌 (只有根用户才能进行此操作)
Help options:
-?, --help Show this help message
--usage Display brief usage message

48.id:谁的权限最大

id
uid=0 (root) gid=0 (root) 组 = 0 (root)
uid -u
显示id

49.whoami、who 和 w:谁在线?

whoami:简单显示登录用户。
who:显示所有登录到系统的用户 。
w:不仅显示用户,还显示他们在做什么
posted @ 2025-07-15 12:07  秀妍泽  阅读(25)  评论(0)    收藏  举报