MichaIng / DietPi

Lightweight justice for your single-board computer!
https://dietpi.com/
GNU General Public License v2.0
4.85k stars 495 forks source link

DietPi has encounted an error, and, is unable to continue #3241

Closed chips023 closed 4 years ago

chips023 commented 4 years ago

DietPi has encounted an error, and, is unable to continue -

Details:

Steps to reproduce:

  1. ...
  2. ...

Expected behaviour:

Actual behaviour:

Extra details:

Additional logs:

Archive:  148.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.
unzip:  cannot find zipfile directory in one of 148.zip or
        148.zip.zip, and cannot find 148.zip.ZIP, period.

[FAILED] DietPi-Software | Unable to continue, DietPi-Software will now terminate.

chips023 commented 4 years ago

This is another error, when I install o! MPD

chips023 commented 4 years ago

Details:

Steps to reproduce:

  1. ...
  2. ...

Expected behaviour:

Actual behaviour:

Extra details:

Additional logs:

Archive:  129.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.
unzip:  cannot find zipfile directory in one of 129.zip or
        129.zip.zip, and cannot find 129.zip.ZIP, period.

[FAILED] DietPi-Software | Unable to continue, DietPi-Software will now terminate.

MichaIng commented 4 years ago

@hifitime Many thanks for your report.

The related zip files are definitely working zip archives, e.g. check: https://github.com/jcorporation/myMPD/archive/master.zip So either your "unzip" is broken or the downloads somehow corrupted without wget exiting with error. Disk corruption cannot be the case since the files are downloaded to tmpfs (RAMdisk).

Please try:

cd /tmp
apt install --reinstall unzip
wget https://github.com/jcorporation/myMPD/archive/master.zip
unzip master.zip
rm master.zip
rm -R myMPD-master

If this works fine, please try to rerun the dietpi-software install.

chips023 commented 4 years ago

Okay may be a network problem. I tried several times to solve the problem

MichaIng commented 4 years ago

@hifitime Okay, great it finally worked. Strange that wget did not report an error. I aim to add checksum verification to dietpi-software downloads, e.g. for GitHub downloads this is possible and would throw a more meaningful error message in the first place.

chips023 commented 4 years ago

Please wait, there seems to be a problem....

chips023 commented 4 years ago

root@DietPi:/tmp# wget https://github.com/jcorporation/myMPD/archive/master.zip --2019-11-26 13:35:19-- https://github.com/jcorporation/myMPD/archive/master.zip Resolving github.com (github.com)... 13.229.188.59 Connecting to github.com (github.com)|13.229.188.59|:443... connected. HTTP request sent, awaiting response... 302 Found Location: https://codeload.github.com/jcorporation/myMPD/zip/master [following] --2019-11-26 13:35:21-- https://codeload.github.com/jcorporation/myMPD/zip/master Resolving codeload.github.com (codeload.github.com)... 13.250.162.133 Connecting to codeload.github.com (codeload.github.com)|13.250.162.133|:443... connected. HTTP request sent, awaiting response... 200 OK Length: unspecified [application/zip] Saving to: ‘master.zip’

master.zip [ <=> ] 3.50M 14.6KB/s in 8m 51s

2019-11-26 13:44:17 (6.74 KB/s) - ‘master.zip’ saved [3669142]

root@DietPi:/tmp# unzip master.zip Archive: master.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. unzip: cannot find zipfile directory in one of master.zip or master.zip.zip, and cannot find master.zip.ZIP, period. root@DietPi:/tmp#

MichaIng commented 4 years ago

@hifitime Interesting, works fine here:

2019-11-26 14:46:40 root@micha:/tmp# wget https://github.com/jcorporation/myMPD/archive/master.zip
--2019-11-26 14:46:56--  https://github.com/jcorporation/myMPD/archive/master.zip
Resolving github.com (github.com)... 140.82.118.4
Connecting to github.com (github.com)|140.82.118.4|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/jcorporation/myMPD/zip/master [following]
--2019-11-26 14:46:57--  https://codeload.github.com/jcorporation/myMPD/zip/master
Resolving codeload.github.com (codeload.github.com)... 140.82.114.10
Connecting to codeload.github.com (codeload.github.com)|140.82.114.10|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘master.zip’

master.zip                                  [                                                     <=>                        ]  15.79M  1.65MB/s    in 11s

2019-11-26 14:47:08 (1.44 MB/s) - ‘master.zip’ saved [16554717]

2019-11-26 14:47:08 root@micha:/tmp# unzip master.zip
Archive:  master.zip
2c4a773b15da8bbdd84632969af0b80164d63677
   creating: myMPD-master/
  inflating: myMPD-master/.eslintrc.js
...
  inflating: myMPD-master/src/web_server_embedded_files.c
2019-11-26 14:47:09 root@micha:/tmp# rm master.zip
2019-11-26 14:47:09 root@micha:/tmp# rm -R myMPD-master

The local mirror is a different one, probably yours has some temporary issues 🤔. Bad that an IP-based download is somehow not possible. Even with --no-check-certificate a 400 error breaks download.

chips023 commented 4 years ago

😭😭

chips023 commented 4 years ago

I tried many times. There are always the same problems. There are errors in the downloaded files. Is there any other way please

Joulinar commented 4 years ago

@MichaIng Would ist be an option to tweak the /etc/hosts file to have codeload.github.com resolved with the IP that is working for you?

MichaIng commented 4 years ago

@hifitime Did you try to reinstall unzip and wget?

apt install --reinstall unzip wget

And when you download the archive via browser on desktop PC, does it open fine there?

Yeah /etc/hosts would be a workaround if indeed the mirror ships somehow a broken file.

echo '140.82.114.10 codeload.github.com' >> /etc/hosts

But should not be kept forever. Actually I believe the issue is not the mirror, but the desktop download should verify that.

chips023 commented 4 years ago

Okay may be a network problem.