我发现在 Vista 中调整“更改日志”大小的唯一方法是进入安全模式。这很好用,但我想知道是否有更好的解决方案。
以下是将我的硬盘默认大小从 32MB 调整为 256MB,以 1MB 为增量进行调整:
fsutil usn deletejournal /D /N c:
fsutil usn createjournal m=268435456 a=1048576 c:
fsutil usn queryjournal c:
上面的代码如果正常执行的话不会产生任何效果(在 XP 上是有效的)。在我的 Vista 机器的 D: 盘上也有效,但 C: 盘无效
一旦您在安全模式 + 命令提示符下启动,代码就会起作用(提示:在启动时按 F8 并选择它)。
我猜原因是某些 Windows 服务,通常是旧的 Indexing 服务,但我没有启用它。还有哪些其他原因可能导致此问题?
答案1
这fsutil 文档页面说您必须以管理员身份运行 fsutil,这可以解释您所看到的行为。
答案2
默认情况下,Windows 2000、2003、XP 上的 NTFS 卷将禁用其更改日志。应用程序(通常是备份软件)上的服务必须明确激活日志。
在 Vista 和 Windows 2008 上,更改日志默认处于活动状态。任何应用程序都可以随时激活或禁用卷的日志,但请注意,在 Vista 和 Windows 2008 上,如果更改日志被停用,系统会自动重新激活它。
安全模式应该(而且显然确实)允许您更改日志。至于哪些服务使用日志;索引、VSS、块级备份、链接跟踪、防病毒软件都是可能的候选者。我还猜想新的自动修复功能也会使用它。我犹豫是否要更改日志大小(尤其是增加它)。更改日志是一个稀疏文件,并根据需要清除。HTe 日志将自动增长到您设置的任何大小,然后将其清除(从创建、修改和删除变更日志:
MaximumSize 是更改日志的目标最大大小(以字节为单位)。更改日志可以增长到大于此值,但在 NTFS 文件系统检查点,NTFS 文件系统会检查日志,并在其大小超过 MaximumSize 值加上 AllocationDelta 值时对其进行修剪。(在 NTFS 文件系统检查点,操作系统将记录写入 NTFS 文件系统日志文件,使 NTFS 文件系统能够确定从故障中恢复所需的处理。)
答案3
您可以尝试在提升的命令提示符下运行。在开始菜单中找到命令提示符,右键单击,然后以管理员身份运行。同意允许程序在提升的权限下运行。
然后尝试运行该命令。