前言
在Linux系统之后,有一个非常非常重要的概念就是:一切皆文件。也就是说,无论在Linux中看到的东西,都是由一个个文件构成的,例如说:命令、用户、各种配置等等。
尽管在Linux系统中一切都是文件,但是每个文件的类型不尽相同,因此Linux系统使用了不同的字符来加以区分。
查看文件各种详细属性
每一部分的意思依次为(从左往右看):
- 权限信息
- 硬连接数(可以理解为存在 n个相同的文件)
- 属主:该用户所拥有该文件;
- 属组:该组具有哪些用户
- 文件大小
- 文件创建时间
- 文件名
共计七部分的内容,不过文件的属性还不止这些,还有特殊权限、隐藏权限等。
那么,先进入到今天的主题:权限信息
文件权限信息
我们从上面知道,文件的详细信息的第一部分就是权限信息了。但这权限信息的内容,又得分四部分看:
第1位:指明该文件的类型
标识 | 文件类型 |
---|---|
- | 普通文件类型 |
d | 代表目录 |
l | 软链接(快捷方式) |
b | 块设备 |
p | 管道文件 |
c | 字符设备文件 |
第2-4位:文件的属主对该文件的权限(没有该权限则使用-代表)
描述文件的权限共为三个标志位,分别为:读、写、执行。
标志位 | 作用 |
---|---|
读 r(read) | 表示能够读取文件的实际内容 |
写 w(write) | 表示能够编辑、新增、修改、删除文件的实际内容 |
执行 x(execute) | 表示能够运行一个脚本程序 |
注意:目录文件的权限和文件的权限控制并不相同,等下我们后面会说。
第5-7位:文件的属组对该文件的权限(group)
第8-10位:其他用户对该文件的权限(other)
注意:
一般来说,文件由谁创建的,属主和属组就是该用户,只有文件的属主才能修改权限(root 用户不受权限限制)
目录的权限管理
目录的权限管理和文件的权限管理的标志位含义并不相同。
对目录下的文件操作,只跟目录的权限有关;对于目录下的文件内容操作,那是与文件操作相关的。比方说:文件能否被删除并不取决于自身的权限,而是看其所在目录是否有写入权限。
- r:可以查(ls)看目录所拥有的文件
- w:可以在该目录下创建、删除或重命名(修改文件不是,因为作用于文件本身,是属于文件操作的)
- x: 可以使用cd命令切换该目录下
属主属组的权限管理
对于相同的一个文件来说,打开的人不同,其权限也大不相同。我们可以把文件的权限(rwx)看做属性,既然是属性,那么我们就可以对其进行修改。
- 修改文件属主:chmod [参数] 权限设置 文件或目录名称
- 修改文件属组:chown [参数] 所有者:所属组 文件或目录名称
修改属主:
- +:表示加入权限
- -:表示去掉权限
- =:表示设定权限
修改属组
- 这样,我们就把文件的属组从普通用户更改为 root 了
基于数字级的修改
rwx权限,也可以使用数字进行表示(4、2、1)
- 以上的664就代表 “-rw-rw-r–”这样的权限信息描述。