linux 私房菜 CH8 linux 磁盘与文件系统管理

时间:2022-04-13 18:16:00
  • 索引式文件系统

  • superblock

    记录此系统的整体信息,包括 inode/block 的总量、使用量、剩余量,以及文件系统的格式与相关信息等;

  • inode

    记录档案的属性,一个档案占用一个 inode,同时记录此档案的数据所在的 block 号码;

  • block

    实际记录档案的内容,若档案太大时,会占用多个 block;

  • Ext2 文件系统

  • Ext2 文件系统在格式化的时候分为多个区块群组,每个区块群组都有独立的 inode/block/superblock 系统。

    linux 私房菜 CH8 linux 磁盘与文件系统管理

  • data block

    放置档案内容数据的地方,大小有 1K,2K,4K 三种。

    linux 私房菜 CH8 linux 磁盘与文件系统管理

    特点

    linux 私房菜 CH8 linux 磁盘与文件系统管理

  • inode table

    存放内容

    linux 私房菜 CH8 linux 磁盘与文件系统管理

    特点

    linux 私房菜 CH8 linux 磁盘与文件系统管理

    将 inode 记录 block 号码的区域定义为 12 个直接,1 个间接,1 个双间接,1 个三间接记录区。

  • superblock

    记录信息

    linux 私房菜 CH8 linux 磁盘与文件系统管理

    一个文件系统应该仅有一个 superblock,多的话是备份。

  • filesystem description

    描述每个 block group 的开始与结束的 block 号码,以及说明每个区段分别介于哪一个 block 号码之间。

  • block bitmap

    对照表

  • inode bitmap

    对照表

  • 查询区段与 superblock 的信息

dumpe2fs [-bh] 装置文件名
-b:列出保留为坏轨的部分;
-h:今列出 superblock 的信息;
  • 查看档案所占用的 inode 号码
ls -li 档案
  • 列出文件系统的整体磁盘使用量
df [-ahikHTm] [目录或文件]
-a:列出所有文件系统
-k:以 kb 为单位
-m:以 mb 为单位
-h:以人们容易阅读的格式显示
-H:以 M=1000 取代 M=1024 的进位方式
-T:连同该 partition 的文件系统名称也列出
-i:以 inode 的数量显示
  • 评估文件系统的磁盘使用量
du [-ahskm] 档案或目录名称
-a:列出所有档案与目录容量,默认仅统计目录
-h:以人们容易阅读的格式显示
-s:仅列出总量
-S:不包括子目录下的统计
-k:以 kb 为单位
-m:以 mb 为单位
  • 实体链接

    在某个目录下新增一笔档名链接到某 inode 号码的关联记录;

    磁盘的空间与 inode 的数目不会改变;

    不能跨文件系统;

    不能链接目录;
  • 符号链接

    建立独立的新档案,会占用 inode 与 block;
  • 链接
ln [-sf] 来源文件 目标文件
-s:符号链接,不加是实体链接
-f:如果目标文件存在,移除后再建立
  • 建立新目录时,新目录 link 数为 2,上层目录 link 数加 2;建立新文档时,文档 link 数为 1,上层目录 link 数不变。
  • 新增磁盘

    linux 私房菜 CH8 linux 磁盘与文件系统管理