我使用的是 Windows 7。我刚刚丢失了一个 .vdi 文件(我的 VM 的虚拟硬盘),我想知道 Windows 是否有文件大小限制,这可能会导致问题。我最近没有检查过文件的大小(我将其设置为根据需要动态调整大小),但猜测是 15 到 30Gb。
它无法使用 Windows 备份进行备份,但 Windows 是否可能因为文件太大而无法识别它?文件大小有明确的上限吗?
答案1
如果文件所在的驱动器采用 NTFS 格式(Windows 7 中的默认格式),则根据维基百科,最大文件大小为 16 TB。即使您(尝试)超出该限制,也无法使文件变得更大。这可能会导致 VirtualBox 出现一些奇怪的行为,但不会导致文件消失。
您说的“丢失”具体是什么意思?您是否尝试过在驱动器上搜索*.vdi
?似乎更有可能是它被意外删除或以某种方式移动了。
答案2
按照设计,最大的 NTFS 文件大小为或。16 EB (16 × 10246 bytes) minus 1 KB (1024 bytes)
18,446,744,073,709,550,592 bytes
按照实施方案,最大 NTFS 文件大小为或。16 TB (16 × 10244 bytes) minus 64 KB (64 × 1024 bytes)
17,592,185,978,880 bytes
答案3
听起来文件系统丢失了你硬盘上文件的链接,你应该尝试使用 chkdsk。
答案4
回答问题按照要求是的,任何文件系统都有文件大小限制。对于扇区/簇大小正常的 FAT/FAT32 分区,大约为 4GB。对于 NTFS(同样,扇区/簇大小正常),情况有所不同——我见过 Windows XP 及更高版本声称可以理论上 处理文件大小可达 16TB 甚至更大;几年后,当硬盘技术发展到可以测试这一理论的程度时,我会更新这篇文章。:-D
因此,回答 OP 真正想要问的问题。*.vdi 的任何问题都更可能与您的虚拟机软件和/或用于管理文件的任何补充软件有关,而不是与文件系统或操作系统有关。(我运行 WinXP Pro 32 位/SP3,其中安装了 Oracle VirtualBox,虚拟磁盘映像/文件略大于 150GB,远远超过 OP 遇到的 15-30GB,而且这么大的磁盘映像文件没有出现任何问题。)
另外,请注意任何问题都可能与磁盘故障或可用/损坏的 RAM 内存有关 - 管理虚拟磁盘需要在 RAM 中保存有关磁盘的各种数据以便“快速”访问(这里的快速意味着不必等待 10-15 秒,而 VM 会在虚拟磁盘中搜索哪怕是一个单字节大小的文件..),而且我见过的大多数 VM 问题都与这些数据结构在 RAM 中损坏有关(然后将损坏的数据写回到磁盘文件!) - 因此要经常备份!