有谁知道 ntfs-3g 驱动程序是否实现更改日志?我查看了官方网站,但找不到任何相关信息。美国海军。
答案1
我没有找到太多文档美国海军+ ntfs-3g,但是查看 ntfs-3g 源代码,在包括/ntfs-3g/layout.h,我发现了以下内容:
/**
* struct NTFS_RECORD -
*
* The Update Sequence Array (usa) is an array of the u16 values which belong
* to the end of each sector protected by the update sequence record in which
* this array is contained. Note that the first entry is the Update Sequence
* Number (usn), a cyclic counter of how many times the protected record has
* been written to disk. The values 0 and -1 (ie. 0xffff) are not used. All
* last u16's of each sector have to be equal to the usn (during reading) or
* are set to it (during writing). If they are not, an incomplete multi sector
* transfer has occurred when the data was written.
* The maximum size for the update sequence array is fixed to:
* maximum size = usa_ofs + (usa_count * 2) = 510 bytes
* The 510 bytes comes from the fact that the last u16 in the array has to
* (obviously) finish before the last u16 of the first 512-byte sector.
* This formula can be used as a consistency check in that usa_ofs +
* (usa_count * 2) has to be less than or equal to 510.
*/
typedef struct {
NTFS_RECORD_TYPES magic;/* A four-byte magic identifying the
record type and/or status. */
u16 usa_ofs; /* Offset to the Update Sequence Array (usa)
from the start of the ntfs record. */
u16 usa_count; /* Number of u16 sized entries in the usa
including the Update Sequence Number (usn),
thus the number of fixups is the usa_count
minus 1. */
} __attribute__((__packed__)) NTFS_RECORD;
(另请参阅:struct STANDARD_INFORMATION 的 usn 字段)
显然他们正在使用美国海军,但我不知道获取它们的正确方法。我首先了解如何使用 NTFS_RECORD,然后尝试从那里找到 API。