tar: impossibile aprire: nessun file o directory di questo tipo


3

Sto cercando di seguire le istruzioni Qui installare Jetty su ubuntu ma sto incontrando un problema quando provo a usare 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

Ma quando ci provo

sudo tar -xfz etty-distribution-9.1.0.v20131115.tar.gz

Ottengo l'errore

tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

Che cosa sto facendo di sbagliato? (Ho anche provato come root ma non ha aiutato)


MODIFICARE

Nessuna delle risposte suggerite funziona per me. Di seguito copio i miei tentativi dalla riga di comando. Che cosa sto facendo di sbagliato?

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$ 

Simile a superuser.com/q/150777/38005 (ma non esattamente)
Joseph Quinsey


Correre file download.php... nome file lungo omesso. Questo dovrebbe almeno dirti se hai un vero archivio. Un errore comune con wget è una pagina di login o reindirizzamento (o 404) HTML che viene salvata al posto del file di destinazione. Quindi non verrebbe riconosciuto come un gzip come stai vedendo.
Greg

Potresti voler controllare questo risposta ; l'ordine delle tue bandiere come -xfz sembra essere il problema; il f deve venire per ultimo
nyedidikeke

Risposte:


4

L'uso del trattino e l'ordine degli argomenti sembra essere il problema:

$ 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

Modificare: I seguenti due comandi sembrano funzionare per 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

Certo, dovrai sostituire tar tzf con tar xzfe potrebbe dover aggiungere sudo.


nessuno di questi sembra funzionare. Vedi le mie modifiche. Grazie.
Zeynel

1
L'unico comando 'funzionante' nelle tue modifiche è sudo tar xfz download.php?file=..., che restituisce l'errore gzip: stdin: not in gzip format. Quindi la mia risposta è corretta, per quanto va. Ma non ho ulteriori suggerimenti. wget sembra di default in binario. Forse stackoverflow.com/q/12350515/318716 potrebbe aiutare?
Joseph Quinsey

3

Il problema potrebbe essere la posizione del f discussione. Il nome dell'archivio dovrebbe seguire il f argomento, motivo per cui gli errori parlano di non essere in grado di aprire un file chiamato z.

Provare:

tar -tzf jetty-distribution-9.1.0.v20131115.tar.gz

1

Il comando sudo wget http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1 è sbagliato per due ragioni:

  1. Il link per il download deve essere citato poiché usi & amp; che è uno speciale in Bash. Vedere http://www.gnu.org/software/bash/manual/bash.html#Definitions
  2. Stai usando un vecchio link morto. Andando alla pagina di download del molo ( http://download.eclipse.org/jetty/ ) indica http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1 come il giusto link per il download.

Da quel momento in poi dovrai usare il seguente comando:

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`

Il -O argomento aiuta nell'output al giusto nome del file.

Dopo di che, tar xvf jetty-distribution-9.1.3.v20140225.tar.gz dovrebbe funzionare.

Qui, opzione x usa la modalità di estrazione, v mostra più informazioni (nome del file che viene estratto) e f specifica che il seguente argomento è il percorso dell'archivio da estrarre.

Non hai bisogno del z opzione che indica a gzip archivio compresso da tar lo riconoscerà automaticamente.

Infine, il - le opzioni precedenti sono deprecate AFAIK.

Un'altra cosa: non è consigliabile l'utilizzo sudo quando non è davvero necessario. Qui devi solo scaricare ed estrarre un archivio, che non ha bisogno dei privilegi di root e puoi farlo nella tua home directory. Evita di fare errori che possono portare a gravi problemi, specialmente quando non sai veramente cosa stai facendo.


-1

Ho lo stesso problema, quindi google mi porta qui, ora il problema è risolto. uno riguarda la lettera maiuscola del tuo nome file il secondo è l'autorizzazione della cartella. cambiarlo in 777. Spero che sia d'aiuto.


Com'è meglio di altre risposte?
Toto
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.