2016-11-04 9 views
0

Я предоставляю путь к любому файлу в каталоге, в котором монтируется стековая система. Есть ли способ программно проверить, является ли смонтированная файловая система файловой системой или моей базовой более низкой файловой системой?
Я пробовал использовать statfs(2), но он всегда возвращает успех, поскольку он обнаруживает мою нижнюю файловую систему, хотя моя отслеживаемая файловая система не была смонтирована. Я хочу сделать это программно в C и не использовать командную строку. например mountПроверьте, установлена ​​ли файловая система Stackable или нет.

ответ

1

Можете ли вы проверить параметр f_type и определить тип файловой системы?

#include <stdio.h> 
#include <sys/vfs.h> 

void main(int argc, char **argv) { 
    char *path=argv[1]; 
    int a; 

    struct statfs foo; 

    a = statfs(path, &foo); 
    printf("%d,%ld\n", a, foo.f_type); 
} 

работает для меня.

Hannu

+0

Да, я думаю, это было лучшее, что я мог придумать. Благодаря :) –

Смежные вопросы