第四章账号与权限管理
一、用户账户
1.用户
Linux有三大用户权限
- 超级管理员: 最高权限拥有者 (root)
- 普通用户: 权限受限的用户
- 程序用户: 不是给人用的,是给程序使用的用户
2.Linux 组
- 基本组: 有且只有一个
- 附加组: 可有可无,可有多个
谁在前面谁是基本组,后面的都是附加组。
3.uid
uid:linux系统用于区分用户的号码。(用户的身份证
生成用户的时候会自动分配一个uid的账号,系统去分别用户的时候,不是以用户名而是以uid
注意:root 不一定是超级管理员 ; uid号=0的才是超级管理员
uid取值范围:0 是超级管理员
1-999 系统用户(201-999,1-200已被用掉)
1000+ 普通用户
centos6系统用户:1-499 ; 普通用户:500+
4. /etc/passwd
用户信息文件
系统上所有的用户信息都存在这个文件中
root:x:0:0:root:/root:/bin/bash
root: 用户名
x: 密码占位符
0: uid用户编号
0: gid组编号
root: 备注
/root: 家目录的位置
/bin/bash: 用户默认加载的shell环境
命令man 5 passwd 可查询各字段描述
5.useradd
添加账户
使用useradd等于往/etc/passwd 文件里加了一条用户信息
使用passwd 改密码 等于修改 /etc/shadow 的第二字段
基本用法:useradd 选项 用户名
选项: -u 指定uid
-M 不建立家目录
-s 指定shell类型
-d 指定家目录
-e 账户失效时间 (yy-mm-dd)
-g 指定基本组的gid
-G 指定附加组的gid
useradd lisi
什么选项都不加
- 生成同名的组,并且这个组是用户的基本组
- 会生成一个同名的家目录 /home/lisi
- 往后按顺序生成
命令展开:
指定uid
指定家目录,不需要先有家目录
-s /sbin/nologin 不让用户登录
建立一个用户 指定uid 不建家目录 不让这个用户登录
指定过期时间 -e yy-mm-dd
指定基本组 -g
指定附加组 -G
6. usermod
修改账户
usermod命令是对已存在的用户信息进行修改,useradd命令是对新建用户的信息进行修改
选项: -l 更改用户名
-L 锁定用户 与passwd -l 一样
-U 解锁用户 与passwd -u 一样
-u 指定uid
-M 不建立家目录
-s 指定shell类型
-d 指定家目录
-e 账户失效时间 (yy-mm-dd)
-g 指定基本组的gid
-G 指定附加组的gid
修改用户名
修改shell环境
7. passwd
修改密码
passwd 用户名
格式:passwd 选项 用户名
选项: -l 锁定用户,不让用户登录
-u 解锁
-S 查看是否解锁
-d 清空密码,不需要密码登录
命令展开:
-d 清空密码,不需要密码登录
passwd -l lisi 锁定lisi 不让用户登录
pass -S 查看是否锁定
8. userdel
删除用户
格式:userdel 选项 用户名
选项: -r 删除目录时 将家目录一起删除
9. 组的增删改查
建立组: groupadd 组名 ; 删除组: groupdel 组名
往组内添加 删除用户:
gpasswd -a 往组内添加用户
gpasswd -d 往组内删除用户
gpasswd -M 往组内批量添加用户
二、权限
1.访问权限
程序访问文件时的权限,取决于此程序的发起者
-
进程的发起者,同文件的属主:则应用文件属主权限
-
进程的发起者,属于文件属组;则应用文件属组权限
-
应用文件“其它”权限
访问人员分为三类:所属主(u) ;所属组(g) ; 其他人(o)
权限分为三种
r读权限:允许查看文件内容,显示目录列表
w写权限:允许修改文件内容,允许在目录中新建和移动
x执行权限:允许运行程序、切换目录
二进制数字表示法
属主 属组 其他 只有读 只有写 只有执行
rwx rwx rwx r-- -w- --x
111 111 111 100 010 001 二进制
7 7 7 4 2 1 十进制
2.修改文件权限
命令:chmod
基本格式:chmod [选项] 主权限 组权限 其他用户权限 文件名
[选项] -R 递归,将该文件夹下所有文件权限一起修改
实例:修改/date及所属文件为777 ,chmod 777 -R /data/
3.修改文件所属主、所属组
命令:chown
基本格式:chown [选项] 要改的主 :要改的组 文件
[选项] -R 递归将该文件夹下所有文件所属主、组一起修改。
实例:若只修改该文件及所属文件的所属主 chown -R 属主 文件
若只修改该文件及所属文件的所属组 chown -R :属组 文件
4. umask
新建文件目录的权限有umask 来决定
新建文件夹权限:文件夹最高权限(777)减去umask值
新建文件权限:文件最高权限(666)减去umask,由于文件可执行较危险所以创建时不能赋予可执行权限,减完umask值之后若有执行权先则文件权限执行加1
查看umask值:umask命令
修改umask值:umask 数值 0022 默认0022

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)