Linux檔案系統
在Linux操作系统中,文件和目錄被组织成一个层次结构的文件系统。这个文件系统是由各种不同的目录和文件组成的,每个目录和文件都有其特定的功能和用途。
目录名称和存放文件类型
在Linux文件系统中,各个目录的名称和存放的文件类型是有规定的。下面是一些常见的目录和其对应的文件类型:
- /boot:存放系统开机所需的核心文件。
- /etc:存放系统配置文件。
- /home:存放用户的家目录。
- /dev:存放设备文件。
- /lib:存放库文件。
- /bin:存放一般可执行文件,只有系统管理员才需要访问。
- /sbin:存放系统可执行文件,只有系统管理员才需要访问。
- /usr/bin:存放一般可执行文件,普通用户需要访问。
- /usr/sbin:存放系统可执行文件,普通用户需要访问。
- /tmp:存放临时文件。
- /var:存放系统信息和配置文件。
文件权限
在Linux文件系统中,文件和目录的创建时会自动分配权限。目录的默认权限是777减去umask值,文件的默认权限是666减去umask值。但是,权限对目录和文件的影响有时略有不同。
- r(读)和w(写)对于目录和文件来说是一样的,都可以进行读取和写入(或修改)。
- x(执行)在目录中表示具有查找的能力,在文件中表示可执行程序。
例如,当您要创建、读取、写入一个文件(或子目录)时,从根目录到当前目录经过的所有目录都必须具有x权限,而当前目录则根据不同的操作具有不同的权限:创建需要wx,读取需要r,写入需要w。
更改权限
使用chmod和chown命令可以更改目录权限。如果加上-R参数,则目录内的所有文件和子目录也会被修改。
例如,使用chmod 1777 /tmp命令可以将/tmp目录的权限设置为1777。您可能好奇最右边的第4个数字代表什么意思呢?如果是4,则表示SUID;如果是2,则表示SGID;如果是1,则为文件设置一个特殊标签,即sticky bit(黏著位)。
黏著位
当sticky bit标签打开时,只有文件的所有者才能删除这个文件(除了root)。其他用户即使具有w权限,也只能修改文件内容,而不能删除文件。如果一个目录具有这个位元,那么其下所创建的文件也具有这个属性。
一个具有SUID属性的可执行文件,其权限不是执行者的权限,而是文件的所有者的权限。如果一个文件具有SUID属性,它的user和group都是root,并且others也具有x权限,那么当user1执行这个文件时,程序所具有的权限就不是user1而是root!同样,如果SGID也打开了,那么这个程序也具有与文件所属组相同的权限。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。