1

如果我有一个目录,其中有几个硬链接都指向目录外的文件,对其中一个硬链接的更改会影响与该目录关联的 USN 日志,还是会影响包含实际文件的原始目录的 USN 日志哪些硬链接在创建时链接?

4

1 回答 1

3

当您添加硬链接 USN_REASON_HARD_LINK_CHANGE 时,该期刊将获得一个条目。然后随着时间的推移,可能会打开任何硬链接并进行更改。随后的 USN 条目将全部引用原始文件的 FileReferenceNumber,但将包含 FileName 和 ParentFileReferenceNumber,这取决于实际打开的链接。这是您可以用来区分链接的内容。请注意,仅使用 ParentFileReferenceNumber 进行区分可能很诱人,但这并不安全。虽然最广泛使用的模式是在不同目录中拥有同名链接,但您可以在同一目录中拥有不同名称的链接。

关于移动链接的注意事项:如果您选择在“摘要模式”下读取 USN(您的 READ_USN_JOURNAL_DATA_V0 的 ReturnOnlyOnClose = 1),您只读取累积到文件关闭点的条目,您可能会错过 USN_REASON_RENAME_OLD_NAME 条目。 ..并忘记重命名是通过哪个链接进行的。这种 USN 记录不会累积到文件关闭事件中……我猜是因为 ParentFileReferenceNumber 和 FileName 的潜在冲突。

于 2014-12-24T15:15:43.967 回答