我已经使用 salt 有一段时间了,最近在我的一个文件中设置 oracle-java8-installer 时遇到了一个问题。
这是我的 init.sls 文件。
oracle-java8-installer:
pkgrepo.managed:
- ppa: webupd8team/java
pkg.installed:
- require:
- pkgrepo: oracle-java8-installer
debconf.set:
- data:
'shared/accepted-oracle-license-v1-1': {'type': 'boolean', 'value': True}
- require_in:
- pkg: oracle-java8-installer
这是失败的输出。
----------
ID: oracle-java8-installer
Function: pkgrepo.managed
Result: False
Comment: Failed to configure repo 'oracle-java8-installer': Error: key retrieval failed: Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.iWTPBbRLgo --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --logger-fd 1 --recv-keys 7B2C3B0889BF5709A105D03AC2518248EEA14886
?: [fd 4]: read error: Connection reset by peer
gpgkeys: HTTP fetch error 7: couldn't connect: eof
gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
Started:
Duration:
Changes:
----------
ID: oracle-java8-installer
Function: debconf.set
Result: True
Comment: All specified answers are already set
Started:
Duration:
Changes:
----------
ID: oracle-java8-installer
Function: pkg.installed
Result: False
Comment: One or more requisite failed
Started:
Duration:
Changes:
----------
我不确定为什么会失败。这个系统上确实有 Java 7,而且我知道他们推荐将其卸载,但这不应该导致问题。
任何帮助都将受到赞赏。
答案1
我不明白幕后发生的一切,但我会尝试解释正在发生的事情。
当您尝试使用 salt 添加 ppa 时,它会尝试通过端口 11371 访问 keyserver.ubuntu.com。大多数公司防火墙都会阻止这样的奇怪端口。如果您在公司网络中,这可能是问题所在。
解决这个问题的方法是使用cmd.run 'sudo add-apt-repository ppa:webupd8team/java'
当您使用此功能时,它会使用最常见的 Linux 发行版使用的默认端口 80。
大部分信息来自这里
答案2
抱歉有点晚了,但我发现这个要点适用于 Ubuntu 14.04: https://gist.github.com/renoirb/6722890