Help us understand the problem. What is going on with this article?

wget/curlでOracleJDKをダウンロード

More than 3 years have passed since last update.

update: 2015/10/01
2015/10/01現在も、JDK(tar.gz, rpm, ...)のURLを適宜置き換えれば
本記事で紹介しているCookieでダウンロード可能です。

概要

OracleJDK を wgetcurl で素直にダウンロードすることができないのは有名な話で、ライセンス同意チェックの Cookie を添えてやるのは周知のハックとなっていますが、毎回忘れてしまうのでメモしておきます。

作業

1. URLの確認

Oracle のダウンロードページより、 JDK のアーカイブの URL を確認します。

download_01.jpg

ライセンス規約に同意後、ダウンロードリンクをコピーしておきます。

download_02.png

NOTE

x86 か x64 かは環境に合わせて選択して下さい。

どちらのアーキテクチャかわからない場合は uname -a または arch コマンドで確認できます。
結果に x86_64 が含まれていれば 64bit です。

手元の環境では次のように表示されましたので 32bit 環境であることが分かります。

Linux localhost.localdomain 2.6.18-371.3.1.el5 #1 SMP Thu Dec 5 12:47:01 EST 2013 i686 i686 i386 GNU/Linux

2. ダウンロード

wget または curl でダウンロードします。
次のようなライセンス同意チェックの Cookie を添えてやります。

"Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie"

wget の場合

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-i586.tar.gz -O jdk-7u55-linux-i586.tar.gz
  • --no-cookies で現存の Cookie が使われないようにします。
  • --no-check-certificate でサーバー証明書を検証しないようにします。
  • --header でお馴染みの Cookie を渡します。
  • -O で保存ファイル名を指定します。これを忘れると後述の認証パラメータがついたファイル名になりますが、適宜 mv でリネームすれば OK です。

curl の場合

curl -OL --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-i586.tar.gz
  • -O で URL の末尾ファイル名を使って保存します。
  • -L でリダイレクトに追従します。
  • --header でお馴染みの Cookie を渡します。

失敗する場合は…

いったんブラウザでダウンロードを開始してからキャンセルし、認証パラメータを含む直リンクの URL を控えます。

download_03.jpg

これを直接 wgetcurl でダウンロードします。
この URL を使う場合はリダイレクトはないので curl-L は不要です。

wget http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-i586.tar.gz?AuthParam=1400233433_b2dd1fbbd299195727ef4a3feb0fc6dd -O jdk-8u5-linux-i586.tar.gz
curl -O http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-i586.tar.gz?AuthParam=1400233433_b2dd1fbbd299195727ef4a3feb0fc6dd

なお、この認証パラメータは数分で期限切れになるようなのでご注意下さい。

Debian 系 (Ubuntu / Debian / Mint) の場合

Web Upd8 の PPA リポジトリを追加してインストールするのが良いかと思います。

for Ubuntu / Mint

# リポジトリ追加
sudo add-apt-repository ppa:webupd8team/java

# ライセンス承諾の質問に自動で「同意」する場合はこれを実行
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections

# インストール
sudo apt-get -y update
sudo apt-get -y install oracle-java7-installer

# もちろん aptitude でもいい
# sudo aptitude -y update
# sudo aptitude -y install oracle-java7-installer

for Debian

su -

# リポジトリ追加
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list

# 鍵のダウンロード
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886

# パッケージリストの更新
apt-get update

# ライセンス承諾の質問に自動で「同意」する場合はこれを実行
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections

# インストール
apt-get install oracle-java8-installer
exit

以上です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした