Ubuntu 13.10にJenkinsをインストールしようとしていますが、次のコマンドを実行しようとすると、上記のエラーが発生します。
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | Sudo apt-key add -
この問題は、企業プロキシの背後にあり、企業が独自の証明書を使用している場合に発生する可能性があります。コマンドに「--no-check-certificate」を追加するだけです。例えばwget --no-check-certificate -qO - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | Sudo apt-key add -
できます。何が起こっているのかを知りたい場合は、「-no-check-certificate」オプションを追加する前に、quietの代わりにverboseコマンドを使用できます。例えばwget -vO - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | Sudo apt-key add -
これは、プロキシの背後にいる場合に「--no-check-certificate」を使用するよう指示します。
解決できました。コマンドを2つのコマンドに分け、ダウンロードしたファイル名を直接使用しました。例-
wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | Sudo apt-key add -
に分けることができます
wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key
Sudo apt-key add jenkins-ci.org.key
プロキシの背後でこれを行ったとき、私も同じエラーを受け取りました。しかし、以下を端末からエクスポートして同じコマンドを再試行した後、問題は解決しました。
export http_proxy="http://username:password@proxy_ip_addr:port/"
export https_proxy="https://username:password@proxy_ip_addr:port/"
Ubuntu Dockerコンテナーでこのエラーが発生しました。原因は、コンテナにCA証明書がなかったためだと思います。修正するには、次を実行する必要がありました。
apt-get update
apt-get install ca-certificates
gpg:有効なOpenPGPデータが見つかりません。
このシナリオでは、メッセージはダウンロードに失敗しましたであることを伝える不可解な方法です。これらの2つのステップを一緒にパイプするとうまくいきますが、ダウンロードレポートからのエラーメッセージが抑制されるため、特にwget -q
(またはcurl -s
)を使用する場合、エラーレポートが壊れます。
ダウンロードの失敗には、さまざまな理由が考えられます。これまでのところ正確にリストされていなかった私の場合は、Sudo
で囲んでいるスクリプトを呼び出したときにプロキシ設定が失われました。
私はこの問題を「gpg-no-valid-openpgp-data-found」を得て、次の最初のブラウザで開いて貼り付けて解決します https://pkg.jenkins.io/debian/jenkins-ci.org .key その後、Downloadsフォルダーにあるキーをダウンロードしてから、cd/Downloads /に移動し、Sudo apt-key add jenkins-ci.org.keyif 「OK」と表示されたら、キーの追加に成功します:)
次のコマンドを実行すると、jenkins-ci.org.keyファイルが現在の作業ディレクトリに保存されます。
curl -O http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key
次に、次のコマンドを使用してキーファイルを追加します。
apt-key add jenkins-ci.org.key
システムからOKが返されたら、キーファイルは正常に追加されています。
私の場合、問題は、キーファイルが301 Moved Permanentlyリダイレクトの背後にあり、curlコマンドがそれに従わなかったことであることが判明しました。代わりにwget
を使用して修正しました。
wget URL
Sudo apt-key add FILENAME
...ここで、FILENAMEは、wget
がファイルをダウンロードした後に出力するファイル名です。
更新:または、curl -L
を使用してcurlがリダイレクトに従うようにすることもできます。