Debian Upgrade

Aus MattWiki
Version vom 18. Oktober 2023, 23:11 Uhr von Matt (Diskussion | Beiträge) (→‎Troubleshooting)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Upgrade Debian 8 Jessie auf Debian 9 Stretch

Quelle: https://linuxconfig.org/how-to-upgrade-debian-8-jessie-to-debian-9-stretch

Vorbereitung

Überprüfen, ob es obsolete Pakete gibt:

# aptitude search '~o'

Betriebssystem sauber auf die aktuelle Ausgangsversion bringen

# apt-get update
# apt-get upgrade 
# apt-get dist-upgrade

Konsistenzprüfungen der Paketdatenbank inkl. Prüfung der Datenbanksauberkeit, Konsistenz, teilweise installierter, fehlender oder obsoleter Pakete

# dpkg -C

Wenn keine Fehler gemeldet wurden noch prüfen, ob Pakete zurückgehalten werden

# apt-mark showhold

Liste installierter Programme (Welcher Unterschied zu dpkg -l?)

# dpkg-query -l                    oder 
# dpkg -l

Repository upgraden

Backup von /etc/apt/sources.list erstellen

In /etc/apt/sources.list das Wort Jessie durch das Wort stretch ersetzen. Danach aktuelle Respositories holen.

# apt-get update

Upgrade simulieren

Liste der Programme, die auf die neue Distribution upgegraded werden

# apt list --upgradable           

Upgrade durchführen

# apt-get upgrade
# apt-get dist-upgrade

Nochmals überprüfen, ob es obsolete Pakete gibt:

# aptitude search '~o'

Obsolete Pakete entfernen mit

# apt autoremove (?)

Betriebssysteminformationen überprüfen siehe Command Line Interface-Befehle (Debian)

Upgrade Debian 9 Stretch auf Debian 10 Buster

Quellen:

Vorbereitung

Überprüfen, ob es obsolete Pakete gibt:

# aptitude search '~o'

Überprüfen, ob es 3rd-Party-Pakete gibt:

# aptitude search '~i(!~ODebian)'

Betriebssystem sauber auf die aktuelle Ausgangsversion bringen

# apt-get update
# apt-get upgrade 
# apt-get dist-upgrade

Konsistenzprüfungen der Paketdatenbank inkl. Prüfung der Datenbanksauberkeit, Konsistenz, teilweise installierter, fehlender oder obsoleter Pakete

# dpkg -C

Wenn keine Fehler gemeldet wurden noch prüfen, ob Pakete zurückgehalten werden

# apt-mark showhold

Pakete on Hold werden nicht upgegradet. Dies kann zu Problemen führen. Daher sollten die Fehler aus den vorangegangenen beiden Befehlen beseitigt werden, bevor weitergemacht wird. Dabei kann der folgende Befehl helfen:

# dpkg --audit

Liste installierter Programme (Welcher Unterschied zu dpkg -l?)

# dpkg-query -l                    oder 
# dpkg -l

Repository upgraden

Backup von /etc/apt/sources.list erstellen

In /etc/apt/sources.list das Wort stretch durch das Wort buster ersetzen.
Backport-Repository deaktivieren / auskommentieren.
Entweder per Editor oder damit:

### In sources.list "stretch" finden und durch "buster" ersetzen
# sed -i 's/stretch/buster/g' /etc/apt/sources.list    


Danach aktuelle Respositories holen.

# apt-get update

Upgrade simulieren

Liste der Programme, die auf die neue Distribution upgegraded werden

# apt list --upgradable           

Upgrade durchführen

# apt-get upgrade
# apt-get dist-upgrade

Bereinigungsarbeiten

Nochmals überprüfen, ob es obsolete Pakete gibt:

# aptitude search '~o'

Obsolete Pakete entfernen mit

# apt autoremove (?)

Betriebssystemversion überprüfen

Siehe Command Line Interface-Befehle (Debian)#Betriebssystem

Upgrade Debian 10 Buster to Debian 11 Bullseye

Source: https://www.howtoforge.com/how-to-upgrade-from-debian-10-to-debian-11/

Update system first

apt-get update -y
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove
apt-get clean
reboot

After restarting the system, verify your operating system version using the following command:

lsb_release -a

You should see the following output:

No LSB modules are available.
Distributor ID:   Debian
Description:      Debian GNU/Linux 10 (buster)
Release:          10
Codename:         buster

Update Debian 10 Repository to Debian 11

Either via CLI:

sed -i 's/buster\/updates/bullseye-security/g' /etc/apt/sources.list
sed -i 's/buster/bullseye/g' /etc/apt/sources.list
sed -i 's/buster\/updates/bullseye-security/g' /etc/apt/sources.list.d/*.list
sed -i 's/buster/bullseye/g' /etc/apt/sources.list.d/*.list

Or manually by replacing "buster/updates" with "bullseye-security", and "buster" with "bullseye" in:

nano /etc/apt/sources.list

The result should be similar to the one below:

deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb http://security.debian.org/debian-security bullseye-security main
deb http://ftp.debian.org/debian bullseye-backports main contrib non-free

Upgrade Debian 10 to 11

apt-get update -y
apt upgrade --without-new-pkgs -y
apt-get full-upgrade -y
reboot

Verify Debian 11 Upgrade

lsb_release -a

Should see output:

No LSB modules are available.
Distributor ID:  Debian
Description:     Debian GNU/Linux 11 (bullseye)
Release:         11
Codename:        bullseye

Upgrade Debian 11 Bullseye to Debian 12 Bookworm

Source: https://www.tecmint.com/upgrade-debian-11-to-12/

# apt-get update
# apt-get upgrade
# apt-get --purge autoremove 

Update sources.list:

# nano /etc/apt/sources.list

Change bullseye to bookworm.

# apt-get update
# apt-get upgrade --without-new-pkgs
# apt-get full-upgrade
# sudo reboot

Check and purge

# lsb_release -a
# cat/etc/debian_version
# neofetch
# apt-get --purge autoremove

Troubleshooting

Kein öffentlicher Schlüssel gefunden

Manchmal passiert es, dass bei der Aktualisierung der Repositories die Fehlermeldung kommtm dass kein öffentlicher Schlüssel für ein Repository besteht.

In diesem Falle kann es helfen, die Pakete zu aktualisieren:

# apt-get upgrade

Danach sollte die Fehlermeldung bei der Repository-Aktualisierung nicht mehr erscheinen.

Falls dies nicht hilft, fehlt vielleicht der Debian Keyring. In diesem falle kann versucht werden, das Paket "debian-keyring" zu installieren:

# apt-get install debian-keyring

Dieses enthält GnuPG Schlüssel von Entwicklern.

PHP 7.3 or PHP 7.4 instead PHP 8.2 needed

Source: https://tecadmin.net/how-to-install-php-on-debian-12/

Add Sury's PHP repository:

sudo apt install -y apt-transport-https lsb-release ca-certificates wget 
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list 
sudo apt update 


Install PHP 8.2

sudo apt install -y php8.2 

Install PHP 8.1

sudo apt install -y php8.1 

Install PHP 7.4 For some legacy applications, you may need an older version like PHP 7.4. Now you can install PHP 7.4 using the following command:

sudo apt install -y php7.4 


Verify installation

php -v

Switch between PHP versions:

sudo update-alternatives --set php /usr/bin/php7.4 

To switch back to PHP 8.2, replace php7.4 with php8.2.