文件系统

Posted paranoid-4

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件系统相关的知识,希望对你有一定的参考价值。

inode

inode是什么?它包含哪些信息?

文件储存在硬盘上,硬盘的最小存储单位叫做“扇区”(Sector)。每个扇区储存512字节(相当于0.5KB)

操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个“块”(block)。这种由多个扇区组成的“块”,是文件存取的最小单位。“块”的大小,最常见的是4KB,即连续八个sector组成一个block。

文件数据都储存在“块”中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如问的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode(索引节点)

inode包含文件的元信息,有以下内容:

         文件的字节数

         文件拥有者的User ID(UID)

         文件的Group ID(GID)

         文件的读、写、执行权限

         文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间

         链接数,即有多少文件名指向这个inode

         文件数据block的位置

如何查看inode的使用情况?

使用df -i命令可以看到每个分区的总inode数目和被使用的以及空闲的inode数目

技术分享图片

Permission Bits:

文件/文件夹权限的表现形式有哪些,相互之间如何转换?

Linux文件或目录的权限位是9个权限位来控制,每三位为一组,他们分别是文件属主(Owner)的读写执行,用户组(group)的读写执行以及其他用户(Other)的读写执行

即文件的访问权限分为读、写、执行三种,可以使用 ls -lh   进行查看

技术分享图片

 

r:可读

w:可写

x:可执行

-:表示无对应位上的权限

转换如下图:

技术分享图片

chown和chmod命令的使用方法?chown是用来设置用户组的,比如授权某用户组,方便控制用户权限

chmod是用来设置文件夹和文件权限的

下面是两者命令的使用方法:

chown:     chown [-cfhvR] [--help] [--version] user[:group] file...

技术分享图片

技术分享图片在这里把test1.txt的属组改为test

chmod:     chmod [-cfvR] [--help] [--version] mode file...

技术分享图片

技术分享图片    

lsattr和chattr的命令和使用方法?

使用lsattr命令查看文件的隐藏属性,而用chattr来修改为正常值。

以下是两个命令的使用方法:

lsattr:    lsattr [-aR]

-a :将隐藏文件的属性也列出来

-R:连同子目录的数据也一并列出来

技术分享图片

chattr:    chattr [-RVf] [-v version] [mode] files...

技术分享图片

 

技术分享图片

SetUID:

如何设置SetUID?设置后有什么影响?

技术分享图片

使用chmod命令可以为指定文件设置SetUID权限,例如“chmod 4xxx filename”命令,取消SetUID权限的命令为“chmod xxx filename”

同样的,“chmod 2xxx filename”命令设置SetGID权限,“chmod xxx filename”取消SetGID权限

“chmod 6xxx filename”同时为指定文件设置SetUID和SetGID,执行命令“chmod 0xxx filename”即可同时取消指定文件的SetUID和SetGID权限

技术分享图片

什么是SetGID,与SetUID的区别是什么?

技术分享图片

UMASK:

UMASK的作用是什么?

UMASK就是指定目前用户在建立文件或目录时候的权限默认值(权限掩码)

如何查看UMASK?

技术分享图片

如何修改UMASK?

技术分享图片

su与sudo:

sudo的配置文件是什么?如何运行配置?

 

如何赋予特定用户使用su的权限?

 

常见目录权限分布情况:

默认情况下,系统中有哪些文件有SetUID?

 

默认情况下,系统中有哪些文件具有任意用户可写权限?

 

默认情况下,系统中有哪些目录具有任意用户可写权限?

 



以上是关于文件系统的主要内容,如果未能解决你的问题,请参考以下文章

Linux文件系统的文件系统

Linux里面文件系统都有哪些?

常见的文件系统都有哪些?

Android 文件系统中添加文件及添加系统属性

docker联合文件系统

深究NTFS文件系统