成功读取文件 inode 后:
retval = ext2fs_read_inode_full(current_fs, inode, inode_buf, EXT2_INODE_SIZE(current_fs->super));
if (retval) {
fprintf(stderr, "Failed to read inode\n");
free(fs);
free(inode_buf);
return retval;
}
(此时我已验证 inode 包含问题文件的正确数据)
我立即尝试用这个写回:
retval = ext2fs_write_inode_full(current_fs, inode, inode_buf, EXT2_INODE_SIZE(current_fs->super));
if (retval) {
fprintf(stderr, "Failed to write inode %d\n", retval);
}
(当然,我打算在回写之前更改 inode 中的一些日期值)
但是 ext2fs_write_inode_full 返回错误值 2133571349。
该程序以root权限执行!