【问题标题】:Number of free inodes on a partition containing a directory包含目录的分区上的空闲 inode 数
【发布时间】:2012-09-01 21:49:38
【问题描述】:

我有一个在 Linux 下运行的 Python 脚本,它在给定目录中生成大量小文件。但是,许多 Linux 文件系统(如 ext4)在创建时设置了固定数量的 inode,因此我想确保在开始之前可以将这么多文件保存到该目录中。在命令行中,您可以使用df -i /some/directory 看到这个数字。

在 Python 中,您如何找到该目录所在的文件系统上的空闲 inode 数量?

【问题讨论】:

    标签: linux unix filesystems diskspace inode


    【解决方案1】:

    这可以使用statvfs 系统调用来完成。在 Python(2 和 3)中,可以使用 os.statvfs 访问它。该调用描述了包含路径指定的文件/目录的文件系统。

    所以要获得空闲 inode 的数量,请使用

    #import os
    os.statvfs('/some/directory').f_favail
    

    此外,有可能某些百分比的 inode 是为 root 用户保留的。如果脚本以 root 身份运行并且您希望允许它使用保留的 inode,请使用 f_ffree 而不是 f_favail

    【讨论】:

      猜你喜欢
      • 2020-12-28
      • 2016-10-22
      • 2016-10-10
      • 2011-01-04
      • 2011-10-16
      • 1970-01-01
      • 2011-12-05
      • 2012-04-15
      • 2011-05-13
      相关资源
      最近更新 更多