我使用 7 zip 压缩了我的旧 Windows 目录。它多次(数百次)压缩了“应用程序数据”,如下所示:
C:\Windows.old\Application Data\Application Data\Application Data\Application Data\Application Data\Application Data/Application Data ...
现在我无法解压它,因为它已经用完了磁盘空间。
我该如何解决这个问题?
答案1
您遇到的问题是 \Application Data 是 \AppData\Roaming 的 NTFS 连接点。Vista 发布后,Microsoft 更改了 \Application Data 目录的路径。提供连接点是为了实现兼容性。
提取存档时,完全排除 Application Data 目录,这样就没问题了。如果在提取存档后发现某些程序无法运行,可以使用命令重新创建 \Application Data 链接MKLINK
。
之所以会这样,首先是因为 Windows 一直以来对符号链接的支持都很差 —— 几十年来,基于 *nix 的操作系统都存在这种问题。尽管 NTFS 自 Windows 2000 开始就支持它们,但直到 Vista 推出后才开始使用它们,这也解释了为什么 7-Zip 提取存档时 Explorer 无法正确处理它们。
正如老笑话所说,微软不知道如何拼写 SYMLIN~1.lnk
答案2
如果您的系统磁盘空间不足,请在提取下一个子副本后删除旧的父副本。如果 7-zip 具有命令行功能,可帮助您在批处理脚本中自动执行此操作(如果它可以让您更轻松)。
系统可能实际上没有耗尽磁盘空间,但 zip 中包含的路径名可能太长。我还会检查我的电脑当出现这些错误时,查看磁盘上还剩下多少空间。