Linux操作系统是一个多用户的操作系统,那也就必然的面临着文件权限的问题。在Linux多系统用户中首先明确两个概念,用户(user)和组(group),组包含多个用户,用户可以隶属于多个组。对于一个文件而言,它把所有的用户区分为三类,所有者、所属组和其他人。而权限呢也分为三种,r读权限、w写权限、x执行权限。明确概念之后,我们来讲解普通权限。
一、查看文件的普通权限
1.ls -l [file | dir],查看一个文件或者目录内部所有文件的权限
2.ls -ld dir,查看一个目录本身的权限
命令执行之后,显示的第一个字段是一组11位的字符串,其中第1位表示文件的类型,接下来的9位就是我们上面讲的所有者(user)、所属组(group)和其他人(other)三种类型(ugo)的权限,最后一位是特殊权限位。我们把关注的重点集中在中间9位上。每三位分别对应一个,前三位对应user,中间三位对应group,最后三位对应other。
二、rwx权限的含义
r表示可读,对于文件,就是能够读取文件中的数据,对于目录,目录中的数据就是目录下面的文件或者目录,所有r权限对于目录而言,就是能够看到这个目录下面的内容;w表示可写,对于文件,就是能够在文件里写入、删除数据,对于目录,就是能够新建或者删除子文件;x表示可执行,对于文件,就是说明这个文件可以运行,对于目录,特别注意,x对于目录表示能够进入这个目录,就是能够通过cd进入目录。所有,一般目录默认都是具有x权限的,而文件一般则没有x权限。
三、普通权限的设置
使用chmod命令来设定普通权限,r-->4,w-->2,x-->1,上面是三种权限对应的数字,我们可以通过数字的形式来设定一个文件的权限,比如:chmod 755 file,这样就把对应的权限设置为user-->rwx,group-->r_x,other-->r_x。使用-R选项来递归修改一个目录的权限。
四、修改user或者group
chown username file,改变一个文件的所有者
chgrp groupname file,改变一个文件的所属组