如何绕过许可证页面以使用wget在服务器上下载Oracle / Sun Java?


10

我正在尝试在Ubuntu Server 12.04上安装Liferay,该服务器需要JRE并建议使用版本6。

我在权威的存储库中找不到JRE6,也无法解决如何通过手册(wget)下载的许可协议。

我可以在wget中添加一个值来接受Oracle许可协议并下载文件吗?

谢谢


对于将来的搜索者,请检查以下内容:stackoverflow.com/a/10959815/2184122
Robert Lugg

Answers:


10

“自动” Oracle Java下载(JRE / JDK 6/7等)

您将需要安装sqlite3。这是一个很小的包装,请sudo apt-get install sqlite3根据需要使用。

  1. 打开Firefox,转到所需的版本/变体的Java下载页面,然后单击“ 接受许可协议”单选按钮。

    在此处输入图片说明

  2. 打开一个终端,并将其粘贴以从Firefox SQLite cookie数据库中提取必要的Oracle会话cookie到可以使用的cookies格式文本文件wget中(script的源):

    回显“ .mode”选项卡
    选择主机,如果主机全局'。*',然后为'TRUE',否则为'FALSE'结束,路径,
    isSecure时为“ TRUE”的情况,否则为“ FALSE”结束,有效期,名称,值
    来自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. 笔记:

    • 您可以将这些cookie用于任何 Oracle下载,只要它来自otn-pub目录
    • 您可以将脚本粘贴到.sh文件中,以方便使用
    • cookie与IP无关,因此对于无头/ CLI服务器,只需使用SCP或传输cookies文件即可,您可以从任何计算机下载(但是cookie上有30分钟的超时时间,请注意)
    • 相关: 如何使用wget / curl从我登录的网站下载?

1
100%合法吗?
Tachyons,2012年

@tachyons是的,您必须先在某些计算机上打开浏览器,然后单击“接受许可协议”,然后才能执行以下任何操作……
ish 2012年

很酷的把戏,但是知道它是否仍然有效吗?我一直在尝试,但是它只会下载一个html页面内容,内容为“对不起!要从OTN下载产品,您必须同意OTN许可条款”。要么我做错了,要么Oracle明智了……
Kurtosis 2012年

您也总是可以将该网址也放到浏览器中:)
Dreamwalker

虽然这个答案很好,但我在下面发布的答案容易得多。当然,如果我的机器停止工作,您可能需要退回到这一点。
Periata Breatta '16

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
不再有效。
罗杰·达尔

是的,这行不通,一直将我重定向到login.oracle.com
Alexander Mills,


1

除了izx答案之外,还有一个chrome插件可用于导出Cookie,因此您不必使用sqlite。


@izx的答案很好。但是我更喜欢pushy的建议,而不是使用sqlite3,而是建议使用“ Cookie.txt导出”来获取cookie内容(对应于izx的答案的第2步)。
mdahlman 2013年

0

没有Cookie的快速方法:

  • 在浏览器中开始下载
  • 暂停下载
  • 复制用于下载的网址
  • 将网址与wget一起使用: wget --no-check-certificate URL_FOR_DOWNLOAD

该URL可能仅在有限的时间内(通常为30分钟)有效。


0

实际上,只需在Linux上的文件中获取pushy提到的chrome扩展名给出的内容即可。然后从oracle页面复制dl地址并将其添加到您的wget命令中。例如,对于dl 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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.