2

我正在调用以下命令并阅读 outpup df -F ufs -o i。它最初工作得很好,但后来开始失败,原因是这里报告和解释了http://wesunsolve.net/bugid/id/6795242

尽管上述链接上建议的解决方案可能有效,但它很难看,我想要一个永久的解决方案。所以,真的在 Solaris/Unix 上寻找 c api,它会给我给定文件系统的 inode 总数和可用数量。

示例/示例非常感谢。

4

2 回答 2

3

statvfs系统调用可用于检索文件系统统计信息,包括总 inode 数量和空闲 inode 数量使用系统调用检索statvfs结构,然后检查f_filesf_ffree字段以确定 inode 的数量和空闲 inode 的数量。

例子:

#include <statvfs.h>

struct statvfs buffer;
int            status;
fsfilcnt_t     total_inodes;
fsfilcnt_t     free_inodes;
...
status = statvfs("/home/betaylor/file_in_filesystem", &buffer);

total_inodes = buffer.f_files;
free_inodes  = buffer.f_ffree;
...
于 2010-12-03T20:10:47.980 回答
1

您需要的是statvfs- 请参阅Solaris 网站上的手册页

于 2010-12-03T20:22:07.693 回答