计算机基础.md 3.1 KB

操作系统

文件系统

目录结构 为了使不同 Linux 发行版本的目录结构保持一致性,Filesystem Hierarchy Standard (FHS) 规定了 Linux 的目录结构。最基础的三个目录如下: / (root, 根目录) /usr (unix software resource):所有系统默认软件都会安装到这个目录; /var (variable):存放系统或程序运行过程中的数据文件。

文件和文件夹级别 inode: 只有一个 记录文件的属性, 记录文件所在的block编号 block: 可以有多个 记录文件的内容

文件系统级别 superblock: 记录文件系统的整体信息,包括 inode 和 block 的总量、使用量、剩余量,以及文件系统的格式与相关信息等; block bitmap: 记录 block 是否被使用的位图。

目录 建立一个目录时,会分配一个 inode 与至少一个 block。block 记录的内容是目录下所有文件的 inode 编号以及文件名。 inode 本身不记录文件名, 文件名记录在目录中, 因此新增文件、删除文件、更改文件名这些操作与目录的写权限有关。 Ext2 要读取一个文件的内容时,先在 inode 中查找文件内容所在的所有 block,然后把所有 block 的内容读出来。 FAT 没有 inode,每个 block 中存储着下一个 block 的编号。 在 Ext2 文件系统中所支持的 block 大小有 1K,2K 及 4K 三种,不同的大小限制了单个文件和文件系统的最大大小。

磁盘碎片 指一个文件内容所在的 block 过于分散,导致磁盘磁头移动距离过大,从而降低磁盘读写性能。

inode 每个 inode 大小有一个固定值

间接引用: 一个 inode 大小有限,无法直接引用这么多 block 编号。因此引入了间接、双间接、三间接引用。间接引用让 inode 记录的引用 block 块记录引用信息。

日志 如果突然断电,那么文件系统会发生错误,例如断电前只修改了 block bitmap,而还没有将数据真正写入 block 中。 ext3/ext4 文件系统引入了日志功能,可以利用日志来修复文件系统。

挂载 挂载利用目录作为文件系统的进入点,也就是说,进入目录之后就可以读取文件系统的数据。

默认权限 文件默认权限:文件默认没有可执行权限,因此为 666,也就是 -rw-rw-rw- 。 目录默认权限:目录必须要能够进入,也就是必须拥有可执行权限,因此为 777 ,也就是 drwxrwxrwx。

链接 ln [-sf] source_filename dist_filename -s :默认是实体链接,加 -s 为符号链接

实体链接 在目录下创建一个条目(因为文件名是记录在目录中的),记录着文件名与 inode 编号(这个 inode 就是源文件的 inode, 还是存在原来的位置) 删除任意一个条目,文件还是存在,只要inode引用数量不为 0。 有以下限制:不能跨越文件系统、不能对目录进行链接。

符号链接 符号链接文件保存着源了。文件所在的绝对路径,在读取时会定位到源文件上,可以理解为 Windows 的快捷方式。 当源文件被删除了,链接文件就打不开 因为记录的是路径,所以可以为目录建立符号链接。