前言
介绍linux系统文件权属与权限相关知识。
一、使用者与群组
linux系统是支持多用户多任务的操作系统,为保护用户信息安全,限制登录用户对系统文件的操作极为重要。首要工作就是将登录用户分类了,其次就是指明不同类的用户对该文件的操作权限。linux系统中对文件操作限制的角色分为三类,分别为 owner(拥有者或使用者)、group(群组)、others(其他人)。举以inode为基础的文件系统为例,一个文件主要有两部分组成,分别是inode与blocks,文件的权属信息(属于哪个owner,group)是记录在inode内的。更多inode的知识可参考软链接与硬链接的区别与联系里的介绍。
root@study:~# ls -l
total 1
-rw-r--r-- 1 root root 0 11月 5 23:12 123.txt
drwxr-xr-x 3 root root 1024 11月 4 23:59 ext4
# 第一栏是文件的权限,将在下一节介绍
# 第二栏表示该文件的inode由多少个文件名链接
# 第三栏表示该文件所属owner
# 第四栏表示该文件所属的group
# 第五栏表示该文件大小
二、文件权限
由上一节可知,文件所属角色类别分为三类。而linux系统对文件的权限一般也为三种,分别是读( r )、写( w )、执行( x )。文件的权限表示如下图所示。
2.1 文件权限
顾名思义,用来限制某个用户对文件的读写执行权限。
2.2 目录权限
linux中,目录也是文件。目录对读写执行的定义同文件不同,下表列出具体差别。
r | w | x | |
---|---|---|---|
文件 | 读到文件内容 | 修改文件内容 | 执行文件内容 |
目录 | 读到目录下的文件或目录名 | 修改目录下的文件或目录名 | 进入该目录 |
怎么理解这样的差异呢?其实很简单,目录的block记录的是目录下的文件及其inode号码,所以读写目录其实就是读写block记录的信息了。更多关于目录的介绍同样可参考软链接与硬链接的区别与联系
总结
对文件系统的基础认识 是 理解文件的其他相关概念 的基石。只要了解文件系统的inode,就能更容易理解文件权属及权限。