1.权限修改命令chmod
2.属主属组修改命令chown
3.基础权限设置案例

Linux中的文件或目录的权限和用户及用户组关联很大,Linux中每个文件或目录都有一组共9个基础权限位,每三个字符被分为一组,他们分别是属主权限位(占三个字符)、属组权限位(占三个字符)、其他用户权限位(占三个字符)
比如rwxr-xr-x linux中正是这9个权限位来控制文件属主(User)、属组(Group)、其他用户(Other)基础权限。
用户对资源来说, 有三种角色
User(u): 属主用户(文件所有者)
Group(g): 属组用户(包含组成员)
Other(o): 匿名用户(其他人)
//一个用户访问文件流程如下
判断用户是否为文件的所有者,如果是,按所有者的权限进行访问
判断是否为文件的所有组成员,如果是,就按组的权限去访问
最终用户就是文件的其他的人,按其他人的权限去访问
rwx, rwx, r-x
User Group Other

权限与属主属组

文件权限对应表

如果权限位不可读、不可写、不可执行,则用-来表示。

权限与属主属组作用示例图

chown: Linux中用来改变某个文件属主的命令, 如漫画中所示, 将某个”资源”(门)的访问权限给予别人。(卖房)

chmod: Linux中用来改变某个文件的访问模式的命令, 如漫画中所示, chmod 777会将大门敞开, 谁都可以进出。(租房)

1.权限修改命令chmod
chmod   //修改文件目录权限rwx  -R级联修改
mkdir dir       //建立目录
touch dir/file  //建立文件
示例1chmod 777 dir/   //修改dir目录权限为777
chmod u+rwx,g+rwx,o+rwx 
示例2chmod 666 dir/file     //修改file文件权限为666
chmod u+rw,g+rw,o+rw 
示例3chmod -R 766 dir/  //修改目录及子目录权限
2.属主属组修改命令chown
chown   //更改属主以及属组 -R:级联修改
mkdir dir               //创建目录
touch dir/file_test     //创建文件
mkdir dir/dir_test      //创建目录
示例1:
chown bin dir/  //修改所属主为bin
ll -d dir/      //检查属主
drwxr-xr-x 2 bin root 4096 722 00:50 dir/
示例2:
chown .adm dir/     //修改所属组为adm
ll -d dir/          //检查属组
drwxr-xr-x 2 bin adm 4096 722 00:50 dir/
示例3:
chown -R root.root dir/ //递归修改目录及目录下的所有文件属主和属组
3.基础权限设置案例

文件权限实验案例:

//默认文件匿名用户仅有读权限
[root@liyanzhao ~]# echo "date" >> filename
[root@liyanzhao ~]# ll filename
-rw-r--r-- 1 root root 5 Jan 24 08:24 filename
//测试读权限(无法执行或删除)
[root@liyanzhao ~]# su - bgx
[bgx@liyanzhao ~]$ cat  /root/filename
date
//增加x执行权限
[root@liyanzhao ~]# chmod o+x /root/filename
[root@liyanzhao ~]# ll /root/filename
-rw-r--r-x 1 root root 5 Jan 24 08:24 /root/filename
//测试执行权限
[bgx@liyanzhao ~]$ /root/filename
Wed Jan 24 08:28:34 EST 2018
//增加w执行权限
[root@liyanzhao ~]# chmod o+w /root/filename
[root@liyanzhao ~]# ll /root/filename
-rw-r--rwx 1 root root 5 Jan 24 08:24 /root/filename
//测试执行权限
[bgx@liyanzhao ~]$ vim /root/filename

rwx对文件的影响
读取权限(r)
文件只有r权限: 具有读取\阅读文件内容权限
1.能使用查看类命令cat、head、tail、less、more
2.不能复制、不能移动、不能编辑,不能删除
写入权限(w)
如果文件只有w权限: 具有新增、修改文件内容的权限
1.使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
2.使用echo、cat命令重定向或追加重定向技术可以往文件内写入数据
3.不能复制、不能移动、不能删除,(删除需要看上级目录w的权限)
执行权限(x)
文件只有x权限,具有执行文件的权限。
//注意: 普通用户需要有r权限,管理员不需要
1.不能执行、查看、编辑、复制、移动、删除

目录权限实验案例:
实战案例1: 对目录没有w,对文件有rwx

[root@liyanzhao ~]# mkdir /dirname
[root@liyanzhao ~]# echo "test" >> /dirname/filename
[root@liyanzhao ~]# chmod 777 /dirname/filename
[root@liyanzhao ~]# ll -d /dirname/
drwxr-xr-x 2 root root 22 Jan 24 08:40 /dirname/
[root@liyanzhao ~]# ll -d /dirname/filename
-rwxrwxrwx 1 root root 5 Jan 24 08:41 /dirname/filename
//普通用户验证权限
[bgx@liyanzhao ~]$ cat /dirname/filename
test
[bgx@liyanzhao ~]$ rm -f /dirname/filename
rm: cannot remove ‘/dirname/filename’: Permission denied

实战案例2: 对目录有w,对文件没有任何权限

[root@liyanzhao ~]# chmod 777 /dirname/
[root@liyanzhao ~]# chmod 000 /dirname/filename
[root@liyanzhao ~]# ll -d /dirname/
drwxrwxrwx 2 root root 22 Jan 24 08:40 /dirname/
[root@liyanzhao ~]# ll -d /dirname/filename
---------- 1 root root 5 Jan 24 08:41 /dirname/filename
file_liyanzhao//普通用户验证权限
[bgx@liyanzhao ~]$ cat /dirname/filename
cat: /dirname/filename: Permission denied
[bgx@liyanzhao ~]$ rm -f /dirname/filename
[bgx@liyanzhao ~]$ touch /dirname/filename_2

rwx对目录的影响
目录只有r权限: 具有浏览目录及子目录权限
1.能使用ls命令浏览目录及子目录, 同时会提示权限拒绝
2.能使用ls -l命令浏览目录及子目录, 会带问号,同时只能看到文件名
总结: 目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限

写入权限(w)
如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x配合)
//注意: 如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)
不能进入目录、不能复制目录、不能删除目录、不能移动目录

执行权限(x)
目录只有x权限
1.只能进入目录
2.不能浏览、复制、移动、删除

权限小结:
文件rw权限, 可以查看和编辑文件内容
文件rx权限, 只能查看和执行文件、不能编辑、复制、移动、删除
目录rx权限, 允许浏览目录内文件以及子目录、并允许在目录内新建文件, 不允许创建、删除文件和目录

注意事项:
文件, x权限小心给予,建议赋予r或rw即可
目录, w权限小心给予,建议无特殊需求赋予rx即可

实验
1.创建andy,alice用户为ateam组, 用户统一使用password为密码
2.要求ateam组的成员可以访问/home/ateam-text目录, 并且可以在目录下创建,删除文件, 在目录下andy创建的文件可以让alice修改.

文档更新时间: 2019-07-11 12:58   作者:李延召