zoukankan      html  css  js  c++  java
  • What is the difference between “inode size” and “Bytes per inode”

    https://unix.stackexchange.com/questions/174334/what-is-the-difference-between-inode-size-and-bytes-per-inode

    Well, first, what is an inode? In the Unix world, an inode is a kind of file entry. A filename in a directory is just a label (a link!) to an inode. An inode can be referenced in multiple locations (hardlinks!).

    -i bytes-per-inode (aka inode_ratio)

    For some unknown reason this parameter is sometime documented as bytes-per-inode and sometime as inode_ratio. According to the documentation, this is the bytes/inode ratio. Most human will have a better understanding when stated as either (excuse my english):

    • 1 inode for every X bytes of storage (where X is bytes-per-inode).
    • lowest average-filesize you can fit.

    The formula (taken from the mke2fs source code):

    inode_count = (blocks_count * blocksize) / inode_ratio
    

    Or even simplified (assuming "partition size" is roughly equivalent to blocks_count * blocksize, I haven't checked the allocation):

    inode_count = (partition_size_in_bytes) / inode_ratio
    

    Note 1: Even if you provide a fixed number of inode at FS creation time (mkfs -N ...), the value is converted into a ratio, so you can fit more inode as you extend the size of the filesystem.

    Note 2: If you tune this ratio, make sure to allocate significantly more inode than what you plan to use... you really don't want to reformat your filesystem.

    -I inode-size

    This is the number of byte the filesystem will allocate/reserve for each inode the filesystem may have. The space is used to store the attributes of the inode (read Intro to Inodes). In Ext3, the default size was 128. In Ext4, the default size is 256 (to store extra_isize and provide space for inline extended-attributes). read Linux: Why change inode size?

    Note: X bytes of diskspace is allocated for each allocated inode, whether is free or used, where X=inode-size.

  • 相关阅读:
    二叉树的四种遍历方法笔记
    SpringBoot简单连接数据库以及查询数据
    在Mac下配置Maven环境
    二叉树的存储结构
    二叉树区分左右
    JDBC编程流程以及详细代码
    树的存储结构
    Java基础总结
    Linux命令简写和全称
    spring-security使用
  • 原文地址:https://www.cnblogs.com/xuchenCN/p/13818800.html
Copyright © 2011-2022 走看看