在VMware的Linux虚拟机中使用unzip解压从本地电脑复制过去的压缩包,一直报错:

Archive:  instantclient-basic-linux.x64-11.2.0.4.0.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.

网上大部分都是说压缩包太大,超过了2G,unzip解压不了。要使用jar/7Z来解压。但是我的压缩包才几十M,觉得应该不是这个问题。后来看到一篇文章,才发现应该是直接从本地拖拽文件到虚拟机导致文件不全无法解压。解决方法如下:


以上报错一般有两种可能

  1. unzip命令无法打开它(如压缩包太大等),这种情况就只能使用其他方法解压了
  2. 压缩包不完整,解决方法如下:

虚拟机:centos7

对比本地文件和拖拽复制进虚拟机的文件大小,相差了几M。应该是拖拽复制方式导致文件不完整。从网上找到另一种传输文件的方式:使用FileZilla

从官网下载、安装完成后,打开软件-->文件-->站点管理器中新建站点然后选择SFTP协议,输入用户名密码点击连接即可。

 

 

此时再在FileZilla上把文件拖过去虚拟机,就可以保证文件的完整。

再在虚拟机中使用unzip解压即可。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐