Linux 文件系统

Linux文件系统

  1. inode与block与superblock
  • superblock

    • 记录此文件系统的整体信息,包括inode/block的总量,使用量,剩余情况以及文件系统格式及相关信息
    • dumpe2fs 指令,查询ext 家族的superblock信息
  • inode

    • Linux系统下每建立一个目录,就会分配一个inode与至少一块block(通常每个目录还包含./ ../ 目录实际inode为目录数+2)

      • 其中,inode记录该目录的属性与权限,
      • block记录该目录下的文件名以及该文件的inode号码
    • 记录文件属性user,group,others 与文件权限rwx 以及block 信息

    • 一个文件占用一个inode,占用的大小为4bytes,一个inode大小为256bytes(ext4/xfs),同时记录此文件所在的block号码

  • block

    • 记录文件实际内容,若文件太大,会占用多个block
    • 区块大小1kb,2kb,4kb,原则上,block大小和数量在格式化后就确定了(除非重新格式化)
    • 每个文件占用一个block,文件过小,则block中剩余的空间也不会再使用(区块浪费)
  • 创建目录

    • 会分配1个inode至少1个block查看目录的inode 号码使用ls -li
  • 创建文件

    • 创建一个文件,ext2会分配1个inode相对于该文件大小的block ,由于inode 只有12个直接指向 所以创建过大的文件时,还需要至少1个block 来作为区块号码记录
  1. filesystem
  • ext2文件系统由三部分组成
    • boot sector
    • Block Group(多个)
  1. Block Group组成
  • superblock(1024bytes)

    • block与innode的总量
    • 未使用与已使用的inode/block总量
    • block与inode的大小
    • filesystem的挂载时间,最近一次写入时间,最近一次检验时间(fsck)
    • 一个valid bid 数值,挂载(0),为挂载(1)
  • filesystem Description(文件系统对照表)

    • 描述每个block group 开始与结束的block号码,以及说明每个区段(superblock,bitmap,inodemap,date block)分别介于哪一个block号码之间
  • block bitmap(区块对照表)

    • 记录使用与未使用的block号码 。添加文件,block bitmap可以找到哪个block是空的;删除文件,block bitmap会释放block的空间
  • inode bitmap(inode 对照表)

    • 记录使用与未使用的inode号码
  • date block(资料区块)

  • inode table

  1. Dos与Linux段行符
分类 说明
Dos ^M$,CRLF
Linux $,LF
  • Windows系统文件换行比Linux多了一个^M,所以Linux读取Windows文件需要转换,Windows读取Linux也需要转换

    • 安装软件
      • dos2unix
        • dos2unix [-kn] file [newfile]
        • unix2dos [-kn] file [newfile]
      • aur/hd2u
  1. 查询当前tty环境的快捷键命令stty -a

Linux 文件系统

上一篇:迅为IMX6ULL开发板Linux RS232/485驱动实验(上)


下一篇:Linux安装jenkins和通过docker容器安装jenkins