如何解决Linux系统下下载cmip6模式数据出现的报错:No ESG Credentials found in ***/credentials.pem
前言:
最近在LInux上批量下载cmip6模式资料时,由于没有注册网页也没有通过网页的选取直接生成了.sh文件
,将.sh
文件放到Linux
系统中使用wge
t进行批量下载时,运行命令:
sh wget_cmip6.sh
出现报错:No ESG Credentials found in ***/credentials.pem
那么如何解决呢?提供以下几个方法经供参考:
- solution 1: 删除目录
~/.esg
下所有的文件并重新运行脚本 - solution 2:运行脚本通过
-H
选项:
bash wget-################.sh -H
脚本名称前面的 bash 命令将打开用于运行脚本的正确 Shell。这个脚本会询问您的 OpenID 和密码。只有在默认模式下,如果从同一个 ESGF 数据节点运行多次下载,这将被跳过,而使用本地存储的凭据进行身份验证。
- solution 3 :系统上安装的 wget 应用程序可能不会使用
SSL
进行编译。可以通过“wget-help
”并调查是否有一些SSL
选项来检查这一点,然后:
尝试使用带-T
选项的 Wget 脚本
和你的系统管理员谈谈安装一个新版本的支持 SSL 的 wget
- solution 4:可以尝试在另一个系统上获得证书。在那里用 Wget 脚本运行一个简短的下载,或者,如果不可能,运行
MyProxyLogon
应用程序。将证书从另一个系统复制到要运行的旧系统上,位置为:~/.esg/credentials.pem
。
- solution 5 : 如果要下载的数据集是不受限制的,则使用选项 -s. 运行脚本,不需要授权。在使用此方法进行下载时,请确保不使用其他选项,例如-s 和-H 不应该组合在一起
bash wget-xxx.sh -s
- solution 6 : 对于受限数据,如果 Oracle Java 可用,则以默认模式运行脚本:
bash wget-xxx.sh
参考的谷歌结果:
https://esgf.github.io/esgf-user-support/user_guide.html#data-search-and-download
https://www.youtube.com/watch?v=cO0wgBIpSGs