如何使用ntfw读取ntfs分区

时间:2017-10-20 01:50:25

标签: c linux ntfs nftw

我使用grub并在Windows分区(c:/)上放置一个发行版tinycore linux。我不知道为什么ntfw没有读取这个分区(sda1)。我使用这个分区(在内存中) 。 以下是代码,没有" FTW_MOUNT"它会失败

#define _XOPEN_SOURCE 600
#include <ftw.h>
#include <stdio.h>

#define MAX_LEVEL 1

int show(const char* path, const struct stat* st, int flags, struct FTW* ftw) {
    if (ftw->level > MAX_LEVEL)return 0;
    printf("path : %s mode : %o flag : %d\n", path, st->st_mode,flags);
    return 0;
}

int main(){
    if(nftw("/mnt", show, 10,FTW_MOUNT | FTW_DEPTH | FTW_PHYS) != 0){
        printf("error\n");
        return 1;
    }
    return 0;
}

下面是结果(sdb5是linux)

tc@box:/tmp$ ./walker
path : /mnt/sdb1 mode : 40755 flag : 5
path : /mnt/sdb3 mode : 40755 flag : 5
path : /mnt/sdb5 mode : 40755 flag : 5
path : /mnt/sdb2 mode : 40755 flag : 5
path : /mnt mode : 40775 flag : 5

这是我的grub menu.lst来自驱动器c:

title Tiny Core 8
kernel /boot/vmlinuz tce=sda1
initrd /boot/tiny.gz

0 个答案:

没有答案