Linux文件或目录权限详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux文件或目录权限详解相关的知识,希望对你有一定的参考价值。
###########################################################################
本文的所有内容均来自作者刘春凯的学习总结,未经本人许可,禁止私自转发及使用。
QQ:1151887353
E-mail:[email protected]
###########################################################################
Linux下的文件或目录权限详解
1.1权限介绍
1、linux下的文件或目录权限是由9个权限来控制的,每三位为一组,即文件属主(owner=主人=用户)的r、w、x;用户组(group=同组的=家人)的r、w、x;其他的人(other=外人=不在同一组)的r、w、x;
2、权限分组说明
3、r=read=4=cat; w=write=2=echo x=exexute=1 ‘-‘=没有权限;
特殊权限:t 、T、s、S、x、X、+等;
4、哪个用户创建的文件它的用户或者主人就是谁,文件的组是用户或者用户所在的组;
5、用户、组、权限都是相对于文件或目录的;
1.2创建模拟环境
1.2.1测试准备
groupadd incahome =在root下创建一个组即用户和文件的家;
useradd oldboy -g incahome =在incahome组里添加用户;
useradd oldgirl -g incahome = =在incahome组里添加用户;
useradd test =创建组外的用户
若oldboy用户存在,则执行如下命令:
usermod gincahome oldboy
id oldboy ???
uid=500(oldboy) gid=500(oldboy) 组=500(oldboy)
id oldgirl
uid=509(oldgirl) gid=508(incahome) 组=508(incahome)
id test
uid=504(test) gid=504(test) 组=504(test)
1.2.2文件创建测试准备
mkdir /oldboy ===在root下创建
echo "echo oldboylinux.">/oldboy/test.sh 在root下创建文件,文件的用户和组都是root
ls -l /oldboy/test.sh
chmod +x /oldboy/test.sh =赋予脚本文件可执行权限;
测试一:
打开root、oldboy、oldgirl、test用户--克隆标签--su- 用户或者logout重登
ls -l /oldboy/test.sh ===send到四个会话框中logout
-rwxr-xr-x
结论一:
oldboy、oldgirl、test对于root用户或者root组(家)来说是other外人,所以三个用户看第三权限,即r和x,无法写
测试二:
chown oldboy.incahome /oldboy/test.sh ===让oldboy成为文件的主人,incahome成为文件的家或组
ls -l /oldboy/test.shtxt ===在oldboy用户下
-rwxr-xr-x 1 oldboy incahome ...../oldboy/test.sh
结论:用户=主人的oldboy拥有r、w、x
ls -l /oldboy/test.sh ==在oldgirl用户下
-rwxr-xr-x 1 oldboy incahome ...../oldboy/test.sh
结论:oldgirl用户拥有r和x,无法w,跟文件的主人oldboy同组,是用户组=家人
ls -l /oldboy.txt ===在test用户下
-rwxr-xr-x 1 oldboy incahome ...../oldboy/test.sh
结论:test=other,跟用户组oldgirl权限相同,有r和x,无法w
以上是关于Linux文件或目录权限详解的主要内容,如果未能解决你的问题,请参考以下文章