こちら に従ってJettyをUbuntuにインストールしようとしていますが、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
しかし、私がしようとすると
Sudo tar -xfz etty-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$ 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$
ダッシュの使用と引数の順序が問題のようです:
$ 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
編集:次の2つのコマンドは私にとってはうまくいくようです:
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
もちろん、tar tzf
をtar xzf
に置き換える必要があり、場合によってはSudo
を追加する必要があります。
問題は、f
引数の位置にある可能性があります。アーカイブの名前はf
引数の後に続くことになっているため、z
というファイルを開くことができないというエラーメッセージが表示されます。
試してください:
tar -tzf jetty-distribution-9.1.0.v20131115.tar.gz
コマンド Sudo wget http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1
は2つの理由で間違っています:
http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1
を正しいダウンロードリンクとして。その後、次のコマンドを使用する必要があります。
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`
-O
引数は、正しいファイル名に出力するのに役立ちます。
その後、 tar xvf jetty-distribution-9.1.3.v20140225.tar.gz
は動作するはずです。
ここで、オプションx
は抽出モードを使用し、v
は詳細情報(抽出されるファイルの名前)を表示し、f
は次の引数が抽出するアーカイブへのパスであることを指定します。
z
は自動的に認識するため、gzip
圧縮アーカイブを示すtar
オプションは必要ありません。
最後に、-
上記のオプションは非推奨のAFAIKです。
もう1つ:本当に必要ない場合はSudo
の使用はお勧めしません。ここでは、root権限を必要としないアーカイブをダウンロードして抽出するだけで、ホームディレクトリで実行できます。特に深刻な問題を引き起こす可能性のあるミスを回避します。
私は同様の問題を抱えていましたが、以下のコマンドで抽出することができました。
Sudo tar -zxvf your_package_name.tar.gz -C /opt/
それが役に立てば幸い!