Я пытаюсь получить доступ к суперблоку при открытии и чтении файловой системы ext2 из файла vdi. Я хочу использовать структуру ext2_super_block, которая существует в файле ext2.h (см. Строку 415 из http://lxr.free-electrons.com/source/fs/ext2/ext2.h). Я хотел бы просто #include <ext2.h>
, но поскольку моя текущая ОС UNIX - ext3/ext4, заголовочный файл не входит в мою систему и ни один из файлов, которые должен включать ext2.h.доступ к суперблоку в vdi, ext2
Как включить этот файл, чтобы получить эту структуру? Должен ли я строить его (структура для хранения суперблока при чтении) сама по себе? Если я построю это самостоятельно, как будет выглядеть чтение?
Вот что я до сих пор для меня системных вызовов, чтобы завершить это (очевидно, не работает на данный момент):
fd = open (argv[1], O_RDONLY);
.......check for errors in open
lseek(fd, OFFSET, SEEK_SET); //to skip to superblock
read (fd, &mySB, sizeof(struct ext2_superblock));