ライセンスページをバイパスして、wgetを使用するサーバーにOracle / Sun Javaをダウンロードするにはどうすればよいですか?


10

JREが必要でバージョン6を推奨するUbuntu Server 12.04にLiferayをインストールしようとしています。

信頼できるリポジトリでJRE6を見つけることができず、手動(wget)ダウンロードのライセンス契約を通過する方法を見つけることができません。

Oracleのライセンス契約に同意してファイルをダウンロードするために、wgetに値を追加できますか?

ありがとう


今後の検索については、こちらをご覧
Robert Lugg

回答:


10

「自動」Oracle Javaダウンロード(JRE / JDK 6/7など...)

sqlite3をインストールする必要があります。これは小さなパッケージsudo apt-get install sqlite3です。必要に応じて使用してください。

  1. Firefoxを開き、必要なバージョン/バリアントのJavaダウンロードページに移動し、[ 使用許諾契約に同意する]ラジオボタンをクリックします。

    ここに画像の説明を入力してください

  2. ターミナルを開き、これを貼り付けて、Firefox SQLite Cookieデータベースから必要なOracleセッションCookieを、cookiesテキストファイルwgetが使用できる形式のテキストファイル(スクリプトのソース)に抽出します。

    echo ".mode tabs
    ホストを選択、ホストグロブの場合 '。*'、次に 'TRUE'、それ以外の場合 'FALSE'終了、パス、
    isSecureの場合は「TRUE」、それ以外の場合は「FALSE」で終了、有効期限、名前、値
    from moz_cookies; "| sqlite3〜/ .mozilla / firefox / *。default / cookies.sqlite
    | grep -i oracle> /tmp/oracle-cookies.txt
    
  3. 次にwget、これらのセッションCookieを使用してダウンロードするために使用します。

    wget --load-cookies=/tmp/oracle-cookies.txt wget http://download.oracle.com/otn-pub/java/jdk/6u14-b08/jdk-6u14-linux-x64.bin
  4. ノート:

    • あなたはのためにこれらのクッキーを使用することができます任意のそれはから来ている限りのOracleダウンロードotn-pubディレクトリ
    • スクリプトを.shファイルに貼り付けて、使いやすくすることができます
    • CookieはIPに関連付けられていないため、ヘッドレス/ CLIサーバーの場合、SCPまたはcookiesファイルを転送するだけで、任意のコンピューターからダウンロードできます(ただし、Cookieには30分のタイムアウトがあるため、注意してください)。
    • 関連: ログインしているサイトからwget / curlを使用してダウンロードするにはどうすればよいですか?

1
100%合法ですか?
タキオン

@tachyonsはい、これを行うには、一部のコンピューターでブラウザーを開き、「使用許諾契約に同意する」をクリックする必要があります...
ish

クールなトリックですが、それでも機能するかどうかはわかりませんか?試してみましたが、「申し訳ありません。OTNから製品をダウンロードするには、OTNライセンス条項に同意する必要があります」というHTMLページのコンテンツしかダウンロードしません。私が間違っているのか、オラクルがこれに賢明だったのか...
Kurtosis 2012

いつでもブラウザにそのURLを通過することができます:)
Dreamwalker

この答えは素晴らしいですが、私が以下に投稿した答えははるかに簡単です。もちろん、私が機能しなくなった場合、これにフォールバックする必要があるかもしれません。
Periata Breatta 2016年

6

Stackoverflowにも同様の質問がありますLinuxでのJava JDKのダウンロードとインストールを自動化する方法は?

wgetを使用した答えは次のとおりです。

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" "http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-x64.tar.gz"

最後の引数は、ダウンロード元のURLです。異なるJavaバージョンのアーカイブは、バージョンだけでなく拡張子も異なります。


2
動作しなくなりました。
Roger Dahl

はい、これは機能しません。login.oracle.comにリダイレクトされ続けます
Alexander Mills

6

mkyong.comからのヒント:を使用wget --header "Cookie: oraclelicense=accept-securebackup-cookie" [link from download page]して、ブラウザーからCookieを抽出せずにダウンロードできます。


これが機能する限り、これは他の回答よりも明らかに優れています。この執筆時点ではまだそうです。
Ludovic Kuty 2017年

1

izxの回答に加えて、Cookieのエクスポートに使用できるChrome プラグインがあるため、sqliteを使用する必要はありません。


@izxの答えは素晴らしいです。しかし、私はsqlite3を使用するよりも、 "Cookie.txtエクスポート"を使用して(izxの回答のステップ2に対応する)Cookieのコンテンツを取得するというpushyの提案をはるかに好みます。
mdahlman 2013

0

クッキーを使わない簡単な方法:

  • ブラウザでダウンロードを開始します
  • ダウンロードを一時停止します
  • ダウンロードに使用されているURLをコピーします
  • wgetでURLを使用します。 wget --no-check-certificate URL_FOR_DOWNLOAD

URLはおそらく限られた時間(多くの場合30分)だけ有効です。


0

実際には、Linux上のファイルでpushyによって言及されたchrome拡張によって与えられたコンテンツを取得するだけです。次に、oracleページからdl adresseをコピーし、それをwgetコマンドに追加します。たとえば、Oracle Database 11gリリース2(11.2.0.1.0)をダウンロードするには、次のようにします。

vagrant@vagrant-ubuntu-trusty-64:~/download$ wget -x --load-cookies cookies.txt http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_1of2.zip

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.