E: The repository 'http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release' does not have a Release file
Apt GetCertbotDebian BusterApt Get Problem Overview
Since i installed certbot on Debian 10, it always shows this error:
root@HypeTime:/home/sinusbot# apt update
Hit:1 http://security.debian.org/debian-security buster/updates InRelease
Hit:2 http://deb.debian.org/debian buster InRelease
Hit:3 http://deb.debian.org/debian buster-updates InRelease
Ign:4 http://ppa.launchpad.net/certbot/certbot/ubuntu focal InRelease
Err:5 http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release
404 Not Found [IP: 2001:67c:1560:8008::15 80]
Reading package lists... Done
E: The repository 'http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Does someone know how to fix this error?
Apt Get Solutions
Solution 1 - Apt Get
I got rid of the error message on Ubuntu 20.04 by removing the ppa repository. It took me a long time to find out the exact command argument, so this might help others :-). I used the command:
sudo apt-add-repository -r ppa:certbot/certbot
After that, the following commands do not generate any errors:
sudo apt update
sudo apt-get update
Solution 2 - Apt Get
I stumbled into these messages
~$ sudo add-apt-repository ppa:certbot/certbot
This is the PPA for packages prepared by Debian Let's Encrypt Team and backported for Ubuntu.
Note: Packages are only provided for currently supported Ubuntu releases.
More info: https://launchpad.net/~certbot/+archive/ubuntu/certbot
Press [ENTER] to continue or Ctrl-c to cancel adding it.
Hit:1 http://ca-central-1.ec2.archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://ca-central-1.ec2.archive.ubuntu.com/ubuntu focal-updates InRelease [111 kB]
Get:3 http://ca-central-1.ec2.archive.ubuntu.com/ubuntu focal-backports InRelease [98.3 kB]
Get:4 http://security.ubuntu.com/ubuntu focal-security InRelease [107 kB]
Ign:5 http://ppa.launchpad.net/certbot/certbot/ubuntu focal InRelease
Get:6 http://ca-central-1.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [588 kB]
Get:7 http://ca-central-1.ec2.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [666 kB]
Err:8 http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release
404 Not Found [IP: 91.189.95.83 80]
Reading package lists... Done
E: The repository 'http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
by following Ubuntu 18.04 certbot installation instructions on Ubuntu 20.04.
I should've followed the Ubuntu 20.04 certbot installation instructions, which avoid the command sequence sudo add-apt-repository ppa:certbot/certbot
followed by sudo apt install python-certbot-nginx
and simply execute
sudo apt install certbot python3-certbot-nginx
Note that the 20.04-friendly command uses python3
in the command, and not just python
.
To be fair, I wasn't the only one dealing with this issue. This other post about solutions that offer the -r
option to remove repositories helped me figure out in which direction a solution to my issue could be.
See @vinyll's answer for "A one-liner Certbot install is available with the uninstaller included. Works also on Ubuntu 20.04." I did not follow that route because I'm not to keen to uninstall packages without being absolutely certain what they're dependencies for. Since I wasn't 100% certain at the time, it was easier to just follow the installation instructions for the proper OS than uninstall it risking eliminating needed dependencies without being aware.
Solution 3 - Apt Get
The latest source works just fine and can be installed with a one-liner to install certbot.
curl -o- https://raw.githubusercontent.com/vinyll/certbot-install/master/install.sh | bash
That solved for me, and there's an uninstall also when certbot PPA will be fixed again.
Solution 4 - Apt Get
Use the following:
> sudo apt-add-repository -r ppa:certbot/certbot
and
> sudo apt update
Solution 5 - Apt Get
I have recently installed certbot
using this command:
sudo snap install --classic certbot
Solution 6 - Apt Get
@vinyll answer helped me that am dealing with Ubuntu server 20.04
.
There's just a little drawback with it: installs the current head of the repository, which currently is 1.9.0.dev0
.
I suggest to look at Certbot repository for the desired release tag - in my case v1.8.0
that refers to the just released version 1.8.0
- and to edit the script to "checkout" it.
The script would become (to install Certbot v1.8.0
):
#!/bin/bash
ROOT=~/.certbot-src
# Remove older versions if existing, for a simple re-install/update.
rm -rf $ROOT
# Clone certbot source.
git clone https://github.com/certbot/certbot $ROOT
# Check if python3-venv is installed, and install it otherwise.
CHECK_PACKAGES='python3-venv'
if ! dpkg -s $CHECK_PACKAGES >/dev/null 2>&1; then
echo "The packages '$CHECK_PACKAGES' are not installed. "
echo "They will now be installed automatically with 'sudo apt-get install $CHECK_PACKAGES'."
sudo apt-get install -y $CHECK_PACKAGES
fi
# Checkout the desired release TAG.
cd $ROOT
git checkout v1.8.0 # Replace v1.8.0 with the TAG you chosen
# Setup virtual environment for certbot.
sudo apt-get install -y python3-dev python3-venv gcc libaugeas0 libssl-dev libffi-dev ca-certificates openssl
python3 tools/venv3.py
# Link installed certbot version, so it can used everywhere.
sudo ln -s $ROOT/venv3/bin/certbot /usr/local/bin/
NOTE: if you want to do a clean install and you are going to remove an old Certbot version, do it carefully - e.g. there could be configuration files that would be deleted using apt purge certbot
or apt autoremove --purge certbot
, bringing the new Certbot installation in an inconsistent state; this answer may help.