文章目录


文件系统 (VSFS),它本质上是一个大型文本文件,脚本管理这个文件!

对于文档,您将反映如何在您的代码中实现某些添加,例如文件阻塞、FS 压缩、FS 碎片整理(不这样做)。 为了获得更高的分数,您将实施其中的一些

3.1

​ls =lR​

-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。
-R –recursive 同时列出所有子目录层
-a 隐藏文件

操作系统实验-简单文件系统实现(仿照Midnight Commander)_linux


第1个文件权限:

dr-xr-xr-x

当为 d 则是目录

当为 - 则是文件;

若是 l 则表示为链接文档(link file);

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。

操作系统实验-简单文件系统实现(仿照Midnight Commander)_硬链接_02


每个文件的属性由左边第一部分的 10 个字符来确定(如下图)。

操作系统实验-简单文件系统实现(仿照Midnight Commander)_硬链接_03

从左至右用 0-9 这些数字来表示。

第 0 位确定文件类型,第 1-3 位确定属主(该文件的所有者)拥有该文件的权限。

第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。
其中,第 1、4、7 位表示读权限,如果用 r 字符表示,则有读权限,如果用 - 字符表示,则没有读权限;

第 2、5、8 位表示写权限,如果用 w 字符表示,则有写权限,如果用 - 字符表示没有写权限;第 3、6、9 位表示可执行权限,如果用 x 字符表示,则有执行权限,如果用 - 字符表示,则没有执行权限。

2 Linux文件属主和属组

对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。

同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。

文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。

因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。

3 硬链接

硬链接硬链接概念 一个文件有几个文件名(用ln命令实现多个文件名),我们就说该文件的链接数为几。 由定义可知,此链接数可以是1,这表明该文件只有一个文件名。 总之,硬链接就是让多个不在或者同在一个目录下的文件名,同时能够修改同一个文件,其中一个修改后,所有与其有硬链接的文件都一起修改了。

目录的硬链接数是目录中的目录数。这不包括文件。例如
=dir1
=dir1/dir2/
=dir1/dir3/
=dir1/dir2/dir4/
@dir1/note

dir1 的硬链接数为 2,dir2 为 1,以此类推。

3.2 File format

3.3 Midnight Commander

​b站教程​