账号的删除和建立

为了防止在实践过程中出错对我的虚拟机系统造成毁灭性打击,我决定额外创建账户。

由于在写博客之前这个账号已经存在,我先将它删除。

[root@anzhixingtong ~]# id dantaye
uid=1002(dantaye) gid=1002(dantaye) 组=1002(dantaye),10(wheel)
[root@anzhixingtong ~]# userdel -r dantaye
userdel: user dantaye is currently used by process 2531

但是此时出现了问题

[root@anzhixingtong ~]# ps -u dantaye
   PID TTY          TIME CMD
  2531 pts/0    00:00:00 bash
  5897 pts/0    00:00:00 bash

由于这个账号仍旧有进程存在,我将试图终止进程并再次执行删除操作。

[root@anzhixingtong ~]# pkill -u dantaye
[root@anzhixingtong ~]# userdel -r dantaye
userdel: user dantaye is currently used by process 2531

虽然显示删除成功但是执行测试指令时,它还在。

[root@anzhixingtong ~]# cat /etc/passwd | grep dantaye
dantaye:x:1002:1002::/home/dantaye:/bin/bash
[root@anzhixingtong ~]# cat /etc/group | grep dantaye
wheel:x:10:dantaye
dantaye:x:1002:
[root@anzhixingtong ~]# cat /etc/shadow | grep dantaye
dantaye:$1$Ptw365mo$NTsa4.gnc.ViRoKIiNQDX/:20413:0:99999:7:::
[root@anzhixingtong ~]# ls /home/dantaye
[root@anzhixingtong ~]# ps -u dantaye
   PID TTY          TIME CMD
  2531 pts/0    00:00:00 bash
  5897 pts/0    00:00:00 bash

进程还在,我重启虚拟机

安全重启代码:

reboot

这次删除成功了

C:\~]$ 

Connecting to 192.168.32.164:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.

Last login: Fri Nov 21 00:42:31 2025
[root@anzhixingtong ~]# id dantaye
uid=1002(dantaye) gid=1002(dantaye) 组=1002(dantaye),10(wheel)
[root@anzhixingtong ~]# userdel -r dantaye
[root@anzhixingtong ~]# ps -u dantaye
error: user name does not exist

Usage:
 ps [options]

 Try 'ps --help <simple|list|output|threads|misc|all>'
  or 'ps --help <s|l|o|t|m|a>'
 for additional help text.

For more details see ps(1).
[root@anzhixingtong ~]# 

当 pkill/kill 等命令无法终止顽固进程时,重启系统是最直接的 “兜底方案” —— 适合新手快速解决问题,避免陷入复杂的进程排查。重启后系统会恢复到 “干净状态”,此时执行 userdel -r 用户名 可顺利删除用户,无任何阻碍。

再次创建账号dantaye

[root@anzhixingtong ~]# sudo useradd -m dantaye
[root@anzhixingtong ~]# su - dantaye
[dantaye@anzhixingtong ~]$ 

账号权限

以下解释来自豆包ai

一、文件和目录的基础权限

这是最直观的权限层面,每个文件或目录都有一组针对三种不同身份的权限。

1. 三种身份 (Owner, Group, Others)
  • 所有者 (Owner):文件或目录的创建者。
  • 所属组 (Group):文件或目录所属的用户组。
  • 其他人 (Others):系统中除了所有者和所属组之外的所有其他用户。
2. 三种基本权限 (Read, Write, Execute)
  • 读 (r, read)
    • 对文件:可以查看文件内容。
    • 对目录:可以列出目录中的文件(使用 ls 命令)。
  • 写 (w, write)
    • 对文件:可以修改文件内容,可以删除文件。
    • 对目录:可以在目录中创建新文件或子目录,可以删除目录中的文件或子目录(无论这些文件的所有者是谁)。
  • 执行 (x, execute)
    • 对文件:可以将文件作为程序或脚本执行。
    • 对目录:可以进入该目录(使用 cd 命令)。
3. 权限的表示方法
  • 符号表示法:如 -rwxr-xr--
  • 数字表示法:如 754 (每一位数字分别对应所有者、所属组、其他人的权限)
符号 数字 权限
r 4
w 2
x 1 执行
- 0 无权限

示例: -rwxr-xr--

  • 所有者:rwx (4+2+1=7)
  • 所属组:r-x (4+0+1=5)
  • 其他人:r-- (4+0+0=4)
  • 对应的数字表示就是 754

二、用户身份分级

在系统层面,用户被分为不同的类别,拥有不同的系统管理权限。

  1. 超级用户 (root, UID=0)

    • 权限:拥有系统的完全控制权,可以执行任何命令,访问和修改任何文件。
    • 标识:命令行提示符通常是 #
    • 类比:公司的 CEO 或系统管理员。
  2. 系统用户 (System Users)

    • 权限:权限受限,通常是为了运行特定的系统服务(如 nginxmysql)而创建的,一般不允许登录。
    • 特点:它们的 UID 通常在 1-999 之间。
  3. 普通用户 (Regular Users)

    • 权限:权限有限,主要只能管理自己家目录(/home/用户名)下的文件和目录。
    • 标识:命令行提示符通常是 $
    • 类比:公司的普通员工。你的 dantaye 账号就属于这一类。
  4. 特权用户 (Privileged Users)

    • 这不是一个正式分类,而是指那些被授予了部分 root 权限的普通用户。
    • 通过修改 /etc/sudoers 文件或将用户加入 wheel 组(在 CentOS 中),可以让普通用户执行一些或全部需要 root 权限的命令。
    • 类比:拥有部分签字权的部门经理。

三、特殊权限 (Special Permissions)

除了基础的 rwx,还有三种特殊权限,用于更精细和高级的权限控制。

  1. Set User ID (SUID, s 或 4)

    • 作用于:可执行文件。
    • 效果:当一个带有 SUID 权限的程序被执行时,该程序会以文件所有者的身份运行,而不是执行它的用户的身份。
    • 常见例子passwd 命令。任何用户都可以执行它来修改自己的密码,但它需要以 root 身份运行才能修改 /etc/shadow 文件。
    • 风险:SUID 权限是一把双刃剑,如果被滥用,可能导致权限提升漏洞。
  2. Set Group ID (SGID, s 或 2)

    • 作用于:可执行文件或目录。
    • 效果(对文件):程序以文件所属组的身份运行。
    • 效果(对目录):在该目录下创建的所有新文件和子目录,其所属组都会继承该目录的所属组,而不是创建者的主组。这在团队协作中非常有用。
  3. Sticky Bit (SBIT, t 或 1)

    • 作用于:目录。
    • 效果:在一个设置了 Sticky Bit 的目录里,只有文件的所有者、目录的所有者或者 root 用户才能删除该文件。
    • 常见例子/tmp 目录。系统上所有用户都可以在 /tmp 里创建和修改文件,但只有自己才能删除自己的文件,防止别人误删。
      [root@anzhixingtong ~]# su - dantaye
      [dantaye@anzhixingtong ~]$ su - root
      密码:
      上一次登录:五 11月 21 01:23:49 PST 2025从 192.168.32.1pts/0 上
      [root@anzhixingtong ~]# usermod -aG wheel dantaye
      [root@anzhixingtong ~]# 
      

      为dantaye账户添加sudo权限。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐