《MacTalk•人生元编程》一一1.3inode的存储

    xiaoxiao2023-07-08  129

    本节书摘来自异步社区出版社《MacTalk•人生元编程》一书中的第1章,第1.3节,作者:池建强,更多章节内容可以访问云栖社区“异步社区”公众号查看。

    1.3 inode的存储

    文件会占用硬盘空间这事大家都清楚(注意,是空间,不是重量,无论您是复制100 GB进来,还是清除100 GB出去,硬盘都在那里,份量既不增一分,也不减一克),那么inode存放在哪里呢?当然也是在硬盘上,Linux是很聪明的,在分区和格式化硬盘的时候,就把硬盘分为了数据区和索引节点区。数据区存放普通文件,索引节点区存放inode对象。每个inode对象的大小一般是128字节或256字节,这个数值可以在格式化的时候设定。

    如何查看inode的使用情况呢?可以执行如下命令:

    df -iH Filesystem Inodes IUsed IFree IUse% Mounted on /dev/xvda 1.3M 83k 1.2M 7% / devtmpfs 127k 1.5k 125k 2% /dev none 127k 801 126k 1% /run none 127k 2 127k 1% /run/lock none 127k 1 127k 1% /run/shm

    大家可以看到,在文件系统/dev/xvda上inode对象使用了可用空间的7%。这里做个提醒,如果你的系统里小文件非常多的话,那么完全有可能发生这样的情况:在磁盘空间还有剩余的时候,不能创建文件。这时候就要用df -iH命令看一下是否inode对象已经把索引节点区占满了。一旦无法创建inode,无论是文件还是目录,都将无法创建!

    如果我们想查看/dev/xvda上inode对象的实际大小,可以执行如下命令:

    >sudo tune2fs -l /dev/xvda | grep "Inode size"

    系统会返回如下内容:

    Inode size: 256

    也就是每个inode对象大小是256字节。tuneifs是Linux下的文件系统参数调整工具。

    今天续接前文,上一篇介绍了inode的元信息和inode的存储,今天主要说说Linux系统中的文件类型。

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)