我一直在使用在 Windows Hyper-V 下运行的 Ubuntu 20.4 VM 上的 Filezilla 从我的 ISP FTP 传输数据库转储。然后,我使用存档管理器打开该文件并将其提取到一个文件夹中,准备导入 MySQL。
现在的问题是,打开 zip 文件时,出现错误:
An error has occurred while loading the archive
我还注意到,将文件上传到我的网站时,文件长度为零字节。
所以考虑到所有这些,看起来 Filezilla 有问题,或者是 Ubuntu 和 Hyper-V 之间的网络问题??
有什么想法请告诉我。
答案1
我首先要检查的是:
- 从 ISP 传输文件时是否出现任何错误?如果我理解正确,在将存档上传到第三台主机后,文件大小为零字节。使用存档管理器打开的文件大小与 ISP 上的大小相同吗?
- 该文件是否为正确的存档?运行
file [filename]
也可能表明文件是否未正确传输。(参考:文件的手册页)。这可以判断转储是否是以文本而不是压缩文件的形式进行的 - 数据库转储通常包含大量的 SQL。 - 如果没有,那么传输了什么?FileZilla 可能以 ASCII 模式而不是二进制模式传输,这可能会损坏它。默认情况下,它设置为自动检测,但有一个手动设置选项。有关可用文件类型的更多信息这里
- 如果它是一个适当的档案,是否可以用检索文件列表
unzip -l file.zip
? - 另一个想法:零字节文件的一个原因是磁盘已满。确保 Windows 和 Ubuntu 磁盘/分区都有足够的空间。
答案2
是的 - 确实发生了这种情况;文件以 ASCII 传输。切换到二进制后一切似乎都正常。感谢大家的回复。
PS. 人们期望信息能够更加明确。