实操篇 组管理和权限管理
1、Linux 组的基本介绍#
Linux中的每个用户必须属于一个组,不能独立于组外。在Linux中的每个文件都有所有者,所在组、
其他组的概念
2、文件/目录的所有者#
一般为文件的创建者
1)查看文件的所有者
指令:ls -ahl
2)修改文件的所有者
基本指令:chown 用户名 文件名
应用实例
【案例1】使用root用户创建一个文件apple.txt,然后将其所有者改为tom
chown tom apple.txt
3、组的创建#
基本指令: groupadd 组名
应用实例:
【案例1】创建一个组 monster,创建一个用户 fox,并放到monster组中
groupadd monster
useradd -g monster fox
4、文件/目录所在组#
当用户创建一个文件后,默认文件所在的组就是该用户所在的组
1)查看文件/目录所在组
基本指令:ls -ahl
2)修改文件所在的组
基本指令:chgrp 组名 文件名
应用实例:
【案例1】使用root用户创建文件 orange.txt,看看这个文件属于哪个组(root),然后将这个文件所在组修改到police组
chgrp police orange.txt
5、其他组#
除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组
6、改变用户所在的组#
在添加用户时,可以指定将用户添加到哪个组中,同样的使用root的管理权限可以改变某个用户所在的组
1)改变用户所在的组
usermod -g 组名 用户名
usermod -d 目录名 用户名 // 改变用户家目录
7、权限的基本介绍#
0-9位说明
1)第0位表示文件类型
- :普通文件
d:目录
l:软连接
c:字符设备【键盘,鼠标】
b:表示块文件
2)第1-3表示文件所有者拥有的权限
r:读 w: 写权限 x: 可执行权限 -: 表示无相应位置的权限
3)第4-6位确定文件所在组的用户拥有该文件的权限
4)第7-9为确定其他组用户拥有该文件的权限
8、rwx权限详解#
1)rwx作用到文件
【r】代表可读(read):可以读取、查看
【w】代表可写(write):可以修改,但是不代表可以删除文件,删除一个文件前提条件是对该文件所在目录有写权限,才能删除该文件
【x】代表可执行(execute):可以被执行
2)rwx作用到目录
【r】代表可读:可以读取,ls查看文件目录内容
【w】代表可写:可以修改,目录内创建 + 删除 + 重命名目录
【x】代表可执行:可以进入该目录
10、修改权限#
1)通过chmod 指令,可以修改文件或者目录的权限
2)第一种方式: + - = 变更权限
u:所有者 g:所有组 o: 其他人 a:所有人
① gwi文件所有者rwx权限,所在组rx权限,其他组 x权限
chmod u=rwx,g=rx,o=x 文件目录名
② 给文件其他组增加一个w权限
chmod o+w 文件目录名
③ 给文件的所有人删除执行的权限
chmod a-x 文件目录名
【案例演示】
① 给abc文件的所有者读写执行的权限,给所在组读执行的权限,给其他组读执行的权限
chmod u=rwx,g=rx,o=rx abc
②给abc文件的所有者除去执行的权利,增加组写的权限
chmod u-x,g+w abc
③、给abc文件的所有用户增加读的权限
chmod a+r abc
3)通过数字变更权限
规则: r=4 w=2 x=1 rwx = 4+2+1 = 7
chmod u = rwx,g=rx,o=x 文件目录名
等价于
chmod 751 文件名
【案例演示】
将 /home/abc.txt文件的权限修改成 rwxr-xr-x,使用数组的方式实现
chmod 755 /home/abc.txt
11、修改文件的所有者#
基本语法
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变文件的所有者和所在组
-R 如果是目录 则使其下所有的子文件或者目录递归生效
应用实例
【案例1】将/home/abc.txt文件的所有者改为tom
chown tom abc.txt
【案例2】将/home/kkk 目录下所有的文件和目录的所有者改为tom
chown -R tom kkk/
12、修改文件所在组 chgrp#
基本语法:
chgrp newgroup file 改变文件所在的组
应用实例
【案例1】将/home/abc.txt 文件的所在组改为 test
chgrp test abc.txt
【案例2】将 /home/kkk目录下的所有文件和目录所在的组修改为 test
chgrp -R test /home/kkk
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2020-05-11 尚硅谷 redis