Für alte Debian Versionen, an diesem Beispiel ein 9er „Stretch“, wird nach dem Support-Ende das offizielle Debian-Repository abgeschaltet. Das macht sich bei der Installation neuer Programme (via apt), updates und upgrades durch eine nicht wirklich hilfreiche Fehlermeldung bemerkbar:
W: The repository 'http://security.debian.org stretch/updates Release' does not have a Release file.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: Fehlschlag beim Holen von http://security.debian.org/dists/stretch/updates/main/binary-amd64/Packages 404 Not Found
E: Fehlschlag beim Holen von http://archive.debian.org/debian/dists/stretch/contrib/binary-amd64/by-hash/SHA256/4bf9e048244d93b8db73fe8c8cbb219299ca4595e60e2fb45ab1f27d0ff9ea3e Hash-Summe stimmt nicht überein
Das ist unglücklich, wenn man ein altes System noch etwas weiterpflegen muss oder zusätzliche Pakete braucht. Der Hinweis „does not have a Release file“ zeigt auch … fast in die richtige Richtung.
Lösung
Debian Archive to the rescue! Man muss nur seine /etc/apt/sources.list
auf die „neuen“ Archiv-URLs anpassen und schon kann man die Repositories weiternutzen.
Suchen+Ersetzen Bash-Einzeiler für die sources.list
sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list
Die gefixte Debian 9 sources.list enthält nun (mindestens):
deb http://archive.debian.org/debian/ stretch main non-free contrib
deb-src http://archive.debian.org/debian/ stretch main non-free contrib
deb http://archive.debian.org/debian-security/ stretch/updates main non-free contrib
deb-src http://archive.debian.org/debian-security/ stretch/updates main non-free contrib