tar: cannot open: no such file or directory
I am trying to follow the instructions here to install Jetty on ubuntu but I am running into a problem when I try to use tar.
cd /usr/local/src
sudo wget http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1
But when I try
sudo tar -xfz etty-distribution-9.1.0.v20131115.tar.gz
I get the error
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
What am I doing wrong? (I also tried as root but it did not help)
EDIT
None of the suggested answers is working for me. Below I copy my attempts from the command line. What am I doing wrong?
a@b:/usr/local/src$ ls
download.php?file=%2Fjetty%2F9.1.0.v20131115%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz
download.php?file=%2Fjetty%2Fstable-9%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz
a@b:/usr/local/src$ tar -tfz jetty-distribution-9.1.0.v20131115.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ tar -tfz /usr/local/src/jetty-distribution-9.1.0.v20131115.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ sudo tar xfz download.php?file=%2Fjetty%2F9.1.0.v20131115%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ sudo tar xfz jetty-distribution-9.1.0.v20131115.tar.gztar (child): jetty-distribution-9.1.0.v20131115.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ ^C
a@b:/usr/local/src$
The use of the dash and the order of the arguments seems to be the problem:
$ tar tfz foo.tar.gz
foo
$ tar -tfz foo.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
$ tar -tzf foo.tar.gz
foo
$ tar --version
tar (GNU tar) 1.15.1
Edit: The following two commands seem to work for me:
wget http://download.eclipse.org/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz
tar tzf jetty-distribution-9.1.0.v20131115.tar.gz
Of course, you'll need to replace tar tzf
with tar xzf
, and may have to add sudo
.
The problem might be the position of the f
argument. The name of the archive is supposed to follow the f
argument, which is why the errors talk about not being able to open a file called z
.
Try:
tar -tzf jetty-distribution-9.1.0.v20131115.tar.gz
The command sudo wget http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1
is wrong for two reason :
- The download link needs to be quoted since you use & which is a special in Bash. See http://www.gnu.org/software/bash/manual/bash.html#Definitions
- You're using an old dead link. Going to jetty's download page ( http://download.eclipse.org/jetty/ ) indicates
http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1
as the right download link.
Thenceforward you've to use the following command :
sudo wget "http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1" -O jetty-distribution-9.1.3.v20140225.tar.gz`
The -O
argument helps in outputing to the right filename.
After that, tar xvf jetty-distribution-9.1.3.v20140225.tar.gz
should work.
Here, option x
use extract mode, v
shows more information (name of file being extracted) and f
specifies that the following argument is the path to the archive to extract.
You don't need the z
option which indicates a gzip
compressed archive since tar
will recognize it automatically.
Finally, the -
preceding options is deprecated AFAIK.
Another thing: I don't recommend using sudo
when it's not really needed. Here you just want to download and extract an archive, that doesn't need root privileges and you can do it in your home directory. It avoids doing mistakes which can lead to severe problems, especially when you don't really know what you're doing.