我正在尝试在我的 ubuntu 中安装 certbot16.04.3服务器,与 16.04.2 相同的命令不起作用。安装的 python 是默认的Python 2.7.12
这是安装脚本:
#!/bin/bash
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-nginx
这是输出
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
python-certbot-nginx : Depends: certbot (>= 0.17.0~) but it is not going to be installed
Depends: python-acme but it is not going to be installed
Depends: python-certbot but it is not going to be installed
Depends: python-mock but it is not going to be installed
Depends: python-openssl but it is not going to be installed
Depends: python-pkg-resources but it is not going to be installed
Depends: python-zope.interface but it is not going to be installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
E: Unable to correct problems, you have held broken packages.
如果我尝试这个
sudo apt-get install python-pkg-resources
我明白了
The following packages have unmet dependencies:
python-pkg-resources : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
E: Unable to correct problems, you have held broken packages
我已经尝试过
sudo add-apt-repository universe
sudo apt-get update
sudo apt-get install -f
sudo apt-get install --reinstall python2.7
更多信息
$ apt-cache policy python
python:
Installed: 2.7.12-1
Candidate: 2.7.12-1
Version table:
*** 2.7.12-1 100
100 /var/lib/dpkg/status
2.7.11-1 500
500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 Packages
答案1
我知道这不能解决你的问题(抱歉),但它可能会帮助其他人。我遇到了同样的问题,并在https://github.com/certbot/certbot/issues/5247- 启用 Universe repo -add-apt-repository universe
答案2
这种类型的问题在部分完成的升级或包安装失败时很常见。
The following packages have unmet dependencies:
python-pkg-resources : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
E: Unable to correct problems, you have held broken packages
显示什么dpkg --get-selections | grep hold
?您可以删除、安装或重新安装这些吗?您可以运行dpkg --configure -a
以尝试“完成”任何卡住的安装吗?
/etc/apt/sources.list
或者,您是否拥有多个不同 ubuntu 版本的源文件/etc/apt/sources.list.d
(来自从未正确完成的升级?)
最后,有什么sudo aptitude install python-certbot-nginx
建议(能力可以有更好/更深的依赖逻辑解析,但要小心,它的一些建议可能有点太疯狂了!)