Scripted Install gzip: stdin: not in gzip format

Setting up liburi-perl (1.71-1) …
Setting up libhtml-parser-perl (3.72-1) …
Setting up libcgi-pm-perl (4.26-1) …
Setting up libfcgi-perl (0.77-1build1) …
Setting up libcgi-fast-perl (1:2.10-1) …
Setting up libencode-locale-perl (1.05-1) …
Setting up libhtml-template-perl (2.95-2) …
Setting up libtimedate-perl (2.3000-2) …
Setting up libhttp-date-perl (6.02-1) …
Setting up libio-html-perl (1.001-1) …
Setting up liblwp-mediatypes-perl (6.02-1) …
Setting up libhttp-message-perl (6.11-1) …
Setting up mariadb-server (10.0.36-0ubuntu0.16.04.1) …
Processing triggers for libc-bin (2.23-0ubuntu10) …
Processing triggers for systemd (229-4ubuntu21.4) …
Processing triggers for ureadahead (0.100.0-19) …

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

Any insight on this error and how to fix?

No one else has had this problem? Cannot find any reference to this error anywhere. This is on a 16.04 server install with only system utilities and open ssh installed.

Hi there
Hope all is well
I have just experienced the same issue with Debian 9
May I ask if you found a solution to continue your install
Kind Regards
Brad

Hi there
I have tried installing on Debian 10 and still recieve a similar issue , as seen below

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

I am installing version 7.1.7 and using the install script 7.1

Any help or advice would be appreciated.
Kind Regards
Brad

Hi there
I am glad to update that my issue appeared to be a corrupted file (partly downloaded) .
After starting again my install when through faultlessly .
Hope this helps someone else…
Kind Regards
Brad

Hello, I’m facing the same issue.

Do you have any tips or workaround?

Thank you!

I have the same issue when i use the script on ubuntu 20.04.6 LTS.

Can confirm 20.04 has this problem, 22.04 also does. LXC if it matters

root@backup:~# cd /root
wget --no-check-certificate https://raw.githubusercontent.com/haiwen/seafile-server-installer/master/seafile-11.0_ubuntu
bash seafile-11.0_ubuntu 11.0
Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service -> /lib/systemd/system/mariadb.service.
mariadb-extra.socket is a disabled or a static unit, not starting it.
mariadb-extra.socket is a disabled or a static unit, not starting it.
Setting up libcgi-fast-perl (1:2.15-1) ...
Processing triggers for systemd (245.4-4ubuntu3.23) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.14) ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   316    0   316    0     0   1362      0 --:--:-- --:--:-- --:--:--  1362

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
root@backup:~#

Seems it’s referring specifically to /opt/seafile/seafile-server_11.0_x86-64.tar.gz

Have gotten slightly further by hardcoding some links in the install script, but haven’t gotten it to work yet.

# -------------------------------------------
# Seafile
# -------------------------------------------
mkdir -p ${SEAFILE_SERVER_HOME}/installed
cd ${SEAFILE_SERVER_HOME}
if ! is_pro && [[ ! -e /opt/${SEAFILE_SERVER_PACKAGE} ]]; then
    curl -OL https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_11.0.6_x86-64.tar.gz
else
    cp /opt/${SEAFILE_SERVER_PACKAGE} .
fi
tar xzf seafile-server_11.0.6_x86-64.tar.gz

mv seafile-server-11.0.6 installed


# -------------------------------------------
# Seafile DB
# -------------------------------------------

Don’t think this is going to work as written, don’t understand if ! is_pro && [[ ! -e /opt/${SEAFILE_SERVER_PACKAGE} ]]; then yet. If it wasn’t for syncthing not being able to browse backed up files I’d have given up by now. Also curious as to how much faster seafile actually is.

I am pretty sure that what is happening is your seafile tar file isn’t really a tar.gz file, but just some text.

It is saying it got 100% of the file, but the file is only 316 bytes. That’s definitely not big enough. Probably curl got an error 301 or similar from the web server, and just saved it into a file with a .tar.gz filename.

After looking at the script a bit more, I think your problem starts here:

bash seafile-11.0_ubuntu 11.0

It looks like the script uses the argument “11.0” to build the URL for downloading the seafile tar file without doing any error checking or sanity checking on it. This creates https://download.seadrive.org/seafile-server_11.0_x86-64.tar.gz . That is giving an error 404, because that file doesn’t exist on the server, but the line “curl -OL ${SEAFILE_SERVER_PACKAGE_URL}” is saving the 404 error message as the file contents.

It should be

bash seafile-11.0_ubuntu 11.0.6

I would suggest that the maintainer of this script should add a sanity-check the version argument to make sure it looks like a valid version number (a number followed by a “.” followed by a number followed by another “.” and another number). Maybe also check the that the resulting file is at least larger than 10MB or something, and if not give a helpful error message. Or switch to wget for the downloading since it would actually show the “ERROR 404: Not Found.” to the user without creating a misleading file, and will exit with a non-zero exit code that can easily be caught by the script.

1 Like