linux如何修改文件或目录的权限(chmod)

这是一个陷阱,不要使用 7 7 7 许可证。

实用提醒:使用数字方式更改权限时,一定要了解每个数字代表的权限组合,避免权限过度开放。

Linux特殊权限之suid、sgid、sbit权限

我记得这次我在公司服务器上看到了一个具有奇怪权限的文件。
用户权限显然是7 5 5 ,但是当我查看详细信息时,我发现suid位被检查了。
我当时就想知道这个文件有什么特殊功能呢?经过检查,发现这个文件原来是用来管理用户密码的。
设置suid后,普通用户也可以以root身份修改密码文件,方便系统维护。

然后,有一天,在向一位新同事教授 Linux 命令时,出现了 sgid 权限。
我举个例子,说我们有一个共享文件夹,我设置了sgid,这样你在该文件夹中创建的文件默认就有你的用户组的权限。
他瞪大了眼睛,好奇地问道:不是可以共享文件组权限吗?我微笑着说可以,这样大家就可以一起编辑同一个组里的文件了。

还有一个粘性位。
记得有一次清理服务器,发现有一个权限非常高的临时目录,但里面却装满了属于普通用户的文件。
经过检查,我发现这个目录设置了粘性位。
我当时就觉得这个粘性位真是个好东西,它可以防止用户误删除别人的文件。

看来这些特殊的Linux权限虽然很小,但是很有用。
如果使用得当,它们可以提高效率,但如果使用得不好,它们可能会很危险。
等等,我突然想到这些权限对于权限分离和最小权限原则起着重要的作用。
那么这些原则是如何体现的呢?

还在傻傻的分不清Linux的文件权限吗?

Linux 文件权限是管理文件访问的核心机制。
明确的用户角色和授权类型划分,保证了系统安全和数据机密性。
下面您将找到最重要知识点的系统概述:
1 .文件权限基础设施 权限表示 使用ls -l命令查看文件属性。
示例输出格式为:-rwxr-xr-
1 root root 4 09 6 十一月 1 5 1 0:3 2 test1 第2 到1 0个字符(例如rwxr-xr--)是授权标识符,每组3 个字符分别对应所有者、组和其他用户。

权限类型和符号 r(读):读取文件内容或列出目录内容 w(写入):更改文件内容或在目录中创建/删除文件 x(执行):执行文件或进入目录 -:无对应权限
文件类型识别 第一个字符表示文件类型: -:普通文件 d:目录 l:符号链接 b/c:设备文件(块设备/字符设备)
2 .权限分配逻辑 权力分立模式 所有者权限(数字1 -3 ):文件所有者的操作权限 组权限(数字4 -6 ):文件所属用户组的操作权限 其他用户权限(数字7 -9 ):系统其他用户的操作权限
权限计算规则 每组权限值由r(4 )+w(2 )+x(1 )累加,例如:rwx=4 +2 +1 =7 ,r-x=4 +0+1 =5 ,--x=0+0+1 =1
3 权限管理核心命令 更改所有者和组 chown:更改文件所有者 chown root:root install.log 只更改所有者 chown -R user:group /dir 递归更改目录及其内容
更改文件权限 数字模式:直接指定权限值 chmod 7 5 5 script.sh 属于所有者 rwx,属于组 r-x 和其他 r-x chmod 6 00 config.cfg 只能由所有者读写
符号模式:使用符号组合更改权限 chmod u+x file.txt 给所有者添加执行权限 chmod go -w共享 删除所属组和其他用户的写权限 chmod a=rwx /dir 赋予所有角色完全权限
4 .特殊权限和场景 SUID/SGID/StickyBit SUID (4 ):文件以所有者身份运行(例如 /usr/bin/passwd) chmod u+s /bin/command
SGID(2 ):目录中的新文件继承组(常用于共享目录) chmod g+s共享
StickyBit (1 ):只有文件所有者才能删除目录内容(例如/tmp) chmod +t public
默认权限掩码(umask) 使用 umask 命令设置新文件的默认权限。
数值表示需要屏蔽的权限。
例如: umask 02 2 属于所有者 7 5 5 ,属于组/其他 7 5 5
5 权限检查与调试 授权验证流程 系统按照所有者→组→其他的顺序映射用户身份。
一旦比较成功,就停止后续检查。
示例:如果用户属于文件所属组,则仅检查组权限,忽略其他用户权限。

修复权限问题 使用namei -l /path/to/file命令逐级检查目录权限。
使用 sudo -u username test -x /file
6 . 模拟其他用户权限测试。
最佳实践建议 最小权限原则:只授予必要的操作权限(例如Web服务器用户不需要任何操作权限)写入权限)。
避免使用7 7 7 权限:开放所有权限可能导致安全漏洞 定期检查权限:使用find / -perm -o=w 查找可以被其他用户写入的文件。

要掌握Linux文件权限系统,需要了解其多层设计逻辑(用户分类→权限分配→特殊场景处理),并通过实际命令操作来巩固知识。
建议查阅有关命令 how to chmod 的手册页以获取更详细的参数说明。