Linux用户管理
1 用户/组
用户类型
超级用户(root): 超级用户是系统的管理员,拥有对系统的完全控制权限。他们可以执行任何操作,包括修改系统文件和安装软件。
系统用户: 系统用户是为了运行系统服务或进程而创建的用户,通常没有登录系统的权限。这些用户用于运行系统中的各种服务,例如Web服务器或数据库。
普通用户: 普通用户是一般系统用户,具有有限的权限。他们可以登录系统,执行一些操作,但不能修改系统关键文件或进行敏感的系统管理任务。
组类型
用户的主组: 每个用户在系统上都有一个主组,它是用户在创建时分配的默认组。用户的文件通常属于他们的主组。
附加组: 除了主组外,用户还可以属于多个附加组。这些组提供了额外的权限,使用户能够访问其他组的资源。
2 用户管理
id命令可以查看当前用户登入信息,UID为用户id,GID为用户所属组id,groups为用户所属组的id
切换用户:使用su/sudo命令,普通用户切换到root用户需要密码,而root用户切换到普通用户则不需要密码
/etc/passwd 和 /etc/shadow 是在Linux系统中用于存储用户账户信息的两个重要文件。
/etc/passwd :
- 这个文件包含了系统上的用户账户信息,每个用户账户一行。
- 每行包含了多个字段,字段之间由冒号(:)分隔。
- 常见字段包括用户名、密码(在过去存储在这里,但现在一般是'x',真正的密码信息存储在/etc/shadow中)、用户ID、组ID、用户描述、主目录路径、登录shell等。
- 如:username:x:1000:1000:John Doe:/home/username:/bin/bash
/etc/shadow:
- 这个文件包含了用户账户的加密密码和密码策略信息。
- 对于安全性考虑,实际的密码信息已经从/etc/passwd中移出,存储在这个文件中。
- 仅超级用户(root)有权限读取这个文件。
- 每行包含了多个字段,字段之间由冒号(:)分隔。
- 常见字段包括用户名、经过加密的密码、上次修改密码的日期、密码过期期限、密码过期前的警告天数、密码不活跃期限、账户失效日期等。
- 如:username:$6$SALT$ENCRYPTED_PASSWORD:18405:0:99999:7:::
创建用户
使用useradd创建用户
-g:表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名
G:表示指定用户的用户附加组,选项的值可以是用户姐的id,也可以是组名
-u:uid,用户的id (用户的标识符),系统默认会从500之后按顺序分配ud,如果不想使用系统分配的,可以通过该选项自定义
-c 注释: 添加注释
修改用户
如果在使用useradd命令时加入了错误的数据或者要对其信息进行修改,除了直接在/etc/passwd、/etc/shadow 中修改外,也可以使用usermod与gpasswd命令
usermod [参数] 用户名
gpasswd [参数] 用户组名
删除用户
删除用户可以使用userdel命令,添加“-r“参数可以同时删除其家目录
userdel 用户名
3 用户组管理
一个用户可以属于多个组
/etc/group是 Linux 系统中的一个文件,用于存储用户组的信息
/etc/group:
- 每行由冒号(:)分隔的字段组成。
- 通常包含四个字段,分别是组名、组密码、组ID(GID)、组成员。
创建用户组
创建组的命令为groupadd
-g:表示选择自己设置一个自定义的用户组ID数字,如果自己不指定则默认从500之后递增
groupadd 参数 组名
修改用户组
修改用户组命令为groupmod
-g:表示选择自己设置一个自定义的用户组ID数字
-n: 表示设置新的用户组的名称
groupmod 参数 组名
删除用户组
删除用户组命令为groupdel
groupdel 组名
4 密码管理
只有root管理员才可以修该其他用户的密码,普通账户只能修改自己的密码,并且普通用户没有修改其他用户密码的权限
/etc/shadow是一个重要的系统文件,它存储了用户的加密密码和相关的账户信息。该文件只能由系统管理员或具有特权的用户访问
使用passwd命令修改密码
passwd 用户名
5 其他
安全用户
使用 usermod 命令可以禁止或允许用户登录。可以通过修改用户账户的 shell 为 /sbin/nologin 来禁止用户登录。例如,使用以下命令禁止用户登录:
sudo usermod -s /sbin/nologin 用户名
或者创建用户时指定登入Shell为 /sbin/nologin 如:
useradd 用户名 -s /sbin/nologin
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!