问题已经说明了。我想要一个C函数调用,返回已挂载文件系统的列表,以及与之关联的信息,例如文件系统类型。
问题已经说明了。我想要一个C函数调用,返回已挂载文件系统的列表,以及与之关联的信息,例如文件系统类型。
getmntent
以及其他*mntent
函数族。详见manpage页面 了解更多信息。/etc/mtab
是包含已挂载文件系统列表的文件。mounts = setmntent("/etc/mtab", "r");
while ( (ent = getmntent(mounts)) != NULL ){
if (strcmp(ent->mnt_type, "iso9660") == 0)
/* copy mount point to output */
strcpy(retval[cd_count - 1], ent->mnt_dir);
} /* if */
} /* while */
endmntent(mounts);
很遗憾,这些功能不在POSIX标准中。但它们已经在glibc中实现并有man页,因此我认为它们比解析/proc
更好。
/proc/filesystems
。
/etc/fstab
文件中条目的信息,而不是内核中实际挂载的文件系统(如FreeBSD的getfsstat()
)。FreeBSD有此功能,但似乎Linux尚未实现。 - Luis Colorado