删除和重新创建NTFS日志(或如何正确运行“fsutil usn”命令)

好的,为了其他人的利益,我将向你们提供我所获得的所有帮助我解决这个问题的知识。

若要重新创建NTFS USN日志,请先删除,然后再重新创建日志。

删除日刊

您可以使用.删除NTFS USN日志。

代码语言:javascript运行复制fsutil usn deletejournal /d /n c:/d和/n交换机的文档很少。Microsoft 这里与在命令提示符下查询命令使用情况时显示的信息冲突:

两者都不准确!命令提示文档是错误的,因为这两个开关都删除日志,而不仅仅是/d。由于日志实际上是被删除的,而不是禁用的,所以Microsoft页面文档具有误导性。开关决定如何删除它。

因为删除日志可能需要很长时间,所以开关允许您控制它是在进程中运行还是进程外运行。/n开关在锁定其句柄的过程中执行删除日志(将其视为“锁定计算机”)。这迫使你等到它完成。/d开关执行进程之外的操作,允许您继续工作.删除日记可能需要几个小时才能运行,并将在连续重新启动期间继续运行,直到完成为止。我曾见过,当这两个开关相互排斥时,人们会同时使用它们。

删除日志几乎总是安全的,但有时会对备份进程产生影响。使用日记簿的应用程序将不会看到应用程序上次运行到日志被删除之间的文件更改。编程良好的应用程序将检测到日志已被删除,并将恢复到另一种查找已更改文件或重新创建文件的方法。我建议删除是安全的,尽管结果如此,因为在最坏的情况下,您只会损害备份的增量能力。您仍然可以进行完全备份并重新启动;至少您的数据没有丢失!

重新创建期刊

我被告知,不需要手动重新创建日志,因为运行备份(例如通过控制面板运行Windows-7备份选项)将自动重新创建NTFS日志。

但是,如果您确实想手动重新创建日志,那么在命令提示符下,您可以通过使用提升的权限运行以下命令来执行createjournal命令

代码语言:javascript运行复制fsutil usn [createjournal] m= a= 是什么?什么是

确定日记的文件大小。通常在30兆到40兆之间。在我的Windows8.1个人电脑上有一个2TB驱动器:

= 0x2000000字节(十六进制)= 33,554,432字节=33 in

= 1/4 = 0x800000字节(十六进制)= 8,388,608字节= 8Mb

但是,我建议将设置为的1/8,以获得更大的值。

FYI:您可以通过使用提升的权限在命令提示符下键入以下命令来查询日志的当前大小:

代码语言:javascript运行复制C:\Windows\system32> fsutil usn queryjournal C:您将得到一个类似于以下内容的输出:

a和m参数以字节()、十六进制(十六进制)为单位提供。

因此,我建议的值如下

如果您有一个非常大的驱动器(4TB+和400,000+文件),请使用:

代码语言:javascript运行复制fsutil usn createjournal m=536870912 a=67108864 C:对于较小的驱动器(<=2TB),使用较少的文件(<=400,000文件),请运行:

代码语言:javascript运行复制fsutil usn createjournal m=67108864 a=8388608 C:如果您想知道这些数字是从哪里来的,那么它们就是将位状态提高到足以提供日志大小(以字节为单位)的数量。IE:这些数字是2^x,它给出了精确的大小(以字节为单位),与您想要的大小差不多。日志的大小通常在30 in到40 in之间。因此,我的 (m)参数达到了第二个最高的可用大小(67 M):

2^25字节x2=33 Mbx2=67 25

(a)参数需要在m的1/8左右,约为8Mb。

你在互联网上找不到这个解释!特别是微软,没有充分记录这两个日志命令的使用情况,这是可耻的。

您可以通过使用提升的权限在命令提示符下执行以下命令来查询系统上的文件数:

代码语言:javascript运行复制C:\Windows\system32> dir C:\ /s /a /w你会看到这样的输出..。

在此示例中,将文件和目录的数量相加到一起,共计1,616,718个。

然后,您可以使用下表(从此页中复制)作为替代指南,以找到最大大小和分配增量的适当值。

参见创建期刊指南这里:还请参阅一些好的建议这里