Upgrade Debian Stretch zu Buster

9.02.2018 Meine Linux Installation soll von von debian Strech auf Buster upgraded werden.
Hardware
  • Motherbord : Gigabyte Z170M-D3H
  • CPU Intel Core I7 6700
  • Memory : 4 x 16 GB PC-2400 DDR4
  • 512 GB Samsung Pro 960 M.2
  • 4TB WDC WD40EZRZ-00W

Ablauf

  • Laufendes System ermitteln
  • System aufräumen (bis clean)
    • alte Kernel purgen
    • install_check
  • Prüfen ob alles purged wurde
  • hostnamen ändern
  • UID anzeigen lassen und mit 40_custom vergleichen
  • 40_custom mit Editor der Wahl ändern
  • 40_custum nach Änderung anzeigen
  • update-grub2
  • Sources.list umstellen auf Buster
  • update für den folgenden upgrade
  • Nach der Installation reboot mit neuen Kernel
  • alte Kernelpakete entfernen
  • update-grub2 Nach der Änderung muss grub die neuen Werte verarbeiten
  • Reboot
  • Nach Reboot neues System checken ob sauber
  • System aufräumen (bis clean)
    • alte Kernel purgen
    • install_check
  • dist_upgrade (mysql-server)
  • Ist mysql noch vorhanden
  • Fazit
  • Das Script install_check
 

Laufendes System ermitteln

Auf den Platten sind mehrere bootfähige Partitionen mit Linux. Sie enthalten ein :
  • Debian mit grafischer Oberfläche auf SSD
  • Debian nur Textconsole als Notfall System auf HD
  • Debian mit grafischer Oberfläche auf HD (backup)
Die Installationen unterscheiden durch die Namen:
    
       CPU-Oberfläche-debianvariante-dh 
       I7 -graf(isch)-st (stretch)  -dh (Detlef Hahn)                
Namen des laufenden Systems ausgeben
root@i7-graf-st-dh:/# uname -a
Linux i7-graf-st-dh 4.14.0-0.bpo.3-amd64 #1 SMP Debian 4.14.13-1~bpo9+1 (2018-01-14) x86_64 GNU/Linux
root@i7-graf-st-dh:/boot# dpkg -l  | grep linux
  

Welche Kernel liegen in /boot?

root@i7-graf-st-dh:/boot#cd /boot  
root@i7-graf-st-dh:/boot# dpkg -l  | grep linux
ii  console-setup-linux                   1.164                             all          Linux specific part of console-setup
ii  fonts-linuxlibertine                  5.3.0-2                           all          Linux Libertine family of fonts
ii  libselinux1:amd64                     2.6-3+b3                          amd64        SELinux runtime shared libraries
ii  libv4l-0:amd64                        1.12.3-1                          amd64        Collection of video4linux support libraries
ii  libv4lconvert0:amd64                  1.12.3-1                          amd64        Video4linux frame format conversion library
ii  linux-base                            4.5                               all          Linux image base package
ii  linux-compiler-gcc-6-x86              4.14.13-1~bpo9+1                  amd64        Compiler for Linux on x86 (meta-package)
ii  linux-headers-4.13.0-0.bpo.1-amd64    4.13.13-1~bpo9+1                  amd64        Header files for Linux 4.13.0-0.bpo.1-amd64
ii  linux-headers-4.13.0-0.bpo.1-common   4.13.13-1~bpo9+1                  all          Common header files for Linux 4.13.0-0.bpo.1
ii  linux-headers-4.14.0-0.bpo.3-amd64    4.14.13-1~bpo9+1                  amd64        Header files for Linux 4.14.0-0.bpo.3-amd64
ii  linux-headers-4.14.0-0.bpo.3-common   4.14.13-1~bpo9+1                  all          Common header files for Linux 4.14.0-0.bpo.3
ii  linux-headers-amd64                   4.14+89~bpo9+1                    amd64        Header files for Linux amd64 configuration (meta-package)
ii  linux-image-4.11.0-0.bpo.1-amd64      4.11.6-1~bpo9+1                   amd64        Linux 4.11 for 64-bit PCs
ii  linux-image-4.12.0-0.bpo.1-amd64      4.12.6-1~bpo9+1                   amd64        Linux 4.12 for 64-bit PCs
ii  linux-image-4.12.0-0.bpo.2-amd64      4.12.13-1~bpo9+1                  amd64        Linux 4.12 for 64-bit PCs
ii  linux-image-4.13.0-0.bpo.1-amd64      4.13.13-1~bpo9+1                  amd64        Linux 4.13 for 64-bit PCs
ii  linux-image-4.14.0-0.bpo.3-amd64      4.14.13-1~bpo9+1                  amd64        Linux 4.14 for 64-bit PCs
ii  linux-image-amd64                     4.14+89~bpo9+1                    amd64        Linux for 64-bit PCs (meta-package)
ii  linux-kbuild-4.13                     4.13.13-1~bpo9+1                  amd64        Kbuild infrastructure for Linux 4.13
ii  linux-kbuild-4.14                     4.14.13-1~bpo9+1                  amd64        Kbuild infrastructure for Linux 4.14
ii  linux-libc-dev:amd64                  4.14.13-1~bpo9+1                  amd64        Linux support headers for userspace development
ii  util-linux                            2.29.2-1                          amd64        miscellaneous system utilities
root@i7-graf-st-dh:/boot# 

Oh, da liegen mehrere alte Kernel rum.
Alles über Paketmanager löschen ausser
Achtung: wenn auch eine dieser Files gelöscht wird, steht Neuinstallation an
linux-image-amd64  	                    Anker für Update Kernelimages
linux-headers-amd64                     Anker für Update Headerfiles
linux-image-4.14.0-0.bpo.3-amd64		neuester Kernel
linux-headers-4.14.0-0.bpo.3-common  + linux-headers-4.14.0-0.bpo.3-amd64  zu Kernel passende Header
linux-kbuild-4.14			            zu Kernel passender kbuild

alte Kernel und Linux-Header per aptitude purge löschen

Dabei wird auch automatisch virtualbox angepasst
 
root@i7-graf-st-dh:/boot# aptitude purge linux-headers-4.13.0-0.bpo.1-amd64 linux-headers-4.13.0-0.bpo.1-common 
      linux-image-4.11.0-0.bpo.1-amd64 linux-image-4.12.0-0.bpo.1-amd64 linux-image-4.12.0-0.bpo.2-amd64 
      linux-image-4.13.0-0.bpo.1-amd64 linux-kbuild-4.13

Die folgenden Pakete werden ENTFERNT:
  linux-headers-4.13.0-0.bpo.1-amd64{p} linux-headers-4.13.0-0.bpo.1-common{pu} linux-image-4.11.0-0.bpo.1-amd64{p} linux-image-4.12.0-0.bpo.1-amd64{p} linux-image-4.12.0-0.bpo.2-amd64{p} linux-image-4.13.0-0.bpo.1-amd64{p} linux-kbuild-4.13{pu} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 7 werden entfernt und 2 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 826 MB frei werden.
Möchten Sie fortsetzen? [Y/n/?] 

Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 194585 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von linux-headers-4.13.0-0.bpo.1-amd64 (4.13.13-1~bpo9+1) ...
Entfernen von linux-headers-4.13.0-0.bpo.1-common (4.13.13-1~bpo9+1) ...
Entfernen von linux-image-4.11.0-0.bpo.1-amd64 (4.11.6-1~bpo9+1) ...
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.11.0-0.bpo.1-amd64
/etc/kernel/postrm.d/zz-update-grub:
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-0.bpo.3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-0.bpo.3-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.13.0-0.bpo.1-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.13.0-0.bpo.1-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.12.0-0.bpo.2-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.12.0-0.bpo.2-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.12.0-0.bpo.1-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.12.0-0.bpo.1-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Entfernen von linux-image-4.12.0-0.bpo.1-amd64 (4.12.6-1~bpo9+1) ...
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.12.0-0.bpo.1-amd64
/etc/kernel/postrm.d/zz-update-grub:
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-0.bpo.3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-0.bpo.3-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.13.0-0.bpo.1-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.13.0-0.bpo.1-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.12.0-0.bpo.2-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.12.0-0.bpo.2-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Entfernen von linux-image-4.12.0-0.bpo.2-amd64 (4.12.13-1~bpo9+1) ...
/etc/kernel/prerm.d/dkms:
dkms: removing: virtualbox 5.1.30 (4.12.0-0.bpo.2-amd64) (x86_64)

-------- Uninstall Beginning --------
Module:  virtualbox
Version: 5.1.30
Kernel:  4.12.0-0.bpo.2-amd64 (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

vboxdrv.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.12.0-0.bpo.2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetadp.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.12.0-0.bpo.2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetflt.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.12.0-0.bpo.2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxpci.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.12.0-0.bpo.2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod...

DKMS: uninstall completed.
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.12.0-0.bpo.2-amd64
/etc/kernel/postrm.d/zz-update-grub:
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-0.bpo.3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-0.bpo.3-amd64
Linux-Abbild gefunden: /boot/vmlinuz-4.13.0-0.bpo.1-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.13.0-0.bpo.1-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Entfernen von linux-image-4.13.0-0.bpo.1-amd64 (4.13.13-1~bpo9+1) ...
/etc/kernel/prerm.d/dkms:
dkms: removing: virtualbox 5.1.30 (4.13.0-0.bpo.1-amd64) (x86_64)

-------- Uninstall Beginning --------
Module:  virtualbox
Version: 5.1.30
Kernel:  4.13.0-0.bpo.1-amd64 (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

vboxdrv.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.13.0-0.bpo.1-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetadp.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.13.0-0.bpo.1-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetflt.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.13.0-0.bpo.1-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxpci.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.13.0-0.bpo.1-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod...

DKMS: uninstall completed.
I: /vmlinuz.old is now a symlink to boot/vmlinuz-4.14.0-0.bpo.3-amd64
I: /initrd.img.old is now a symlink to boot/initrd.img-4.14.0-0.bpo.3-amd64
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.13.0-0.bpo.1-amd64
/etc/kernel/postrm.d/zz-update-grub:
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-0.bpo.3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-0.bpo.3-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Entfernen von linux-kbuild-4.13 (4.13.13-1~bpo9+1) ...
(Lese Datenbank ... 161396 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von linux-image-4.12.0-0.bpo.2-amd64 (4.12.13-1~bpo9+1) ...
Löschen der Konfigurationsdateien von linux-image-4.11.0-0.bpo.1-amd64 (4.11.6-1~bpo9+1) ...
Löschen der Konfigurationsdateien von linux-image-4.12.0-0.bpo.1-amd64 (4.12.6-1~bpo9+1) ...
Löschen der Konfigurationsdateien von linux-image-4.13.0-0.bpo.1-amd64 (4.13.13-1~bpo9+1) ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-st-dh:/boot# 

Welcher Kernel ist jetzt noch vorhanden?

  ------------------------------------------------------------------ Nach aptitude purge ------------------------------------------------------------------
 
root@i7-graf-st-dh:/boot# dpkg -l  | grep linux
ii  console-setup-linux                   1.164                             all          Linux specific part of console-setup
ii  fonts-linuxlibertine                  5.3.0-2                           all          Linux Libertine family of fonts
ii  libselinux1:amd64                     2.6-3+b3                          amd64        SELinux runtime shared libraries
ii  libv4l-0:amd64                        1.12.3-1                          amd64        Collection of video4linux support libraries
ii  libv4lconvert0:amd64                  1.12.3-1                          amd64        Video4linux frame format conversion library
ii  linux-base                            4.5                               all          Linux image base package
ii  linux-compiler-gcc-6-x86              4.14.13-1~bpo9+1                  amd64        Compiler for Linux on x86 (meta-package)
ii  linux-headers-4.14.0-0.bpo.3-amd64    4.14.13-1~bpo9+1                  amd64        Header files for Linux 4.14.0-0.bpo.3-amd64
ii  linux-headers-4.14.0-0.bpo.3-common   4.14.13-1~bpo9+1                  all          Common header files for Linux 4.14.0-0.bpo.3
ii  linux-headers-amd64                   4.14+89~bpo9+1                    amd64        Header files for Linux amd64 configuration (meta-package)
ii  linux-image-4.14.0-0.bpo.3-amd64      4.14.13-1~bpo9+1                  amd64        Linux 4.14 for 64-bit PCs
ii  linux-image-amd64                     4.14+89~bpo9+1                    amd64        Linux for 64-bit PCs (meta-package)
ii  linux-kbuild-4.14                     4.14.13-1~bpo9+1                  amd64        Kbuild infrastructure for Linux 4.14
ii  linux-libc-dev:amd64                  4.14.13-1~bpo9+1                  amd64        Linux support headers for userspace development
ii  util-linux                            2.29.2-1                          amd64        miscellaneous system utilities
root@i7-graf-st-dh:/boot#  

Was ist noch in /boot?


-rw-r--r-- 1 root root   197366 Jan 15 00:48 config-4.14.0-0.bpo.3-amd64
drwx------ 4 root root      512 Jan  1  1970 efi
lrwxrwxrwx 1 root root       15 Mai 11  2017 grub -> /boot/efi/grub/
-rw-r--r-- 1 root root 21760235 Mär  9 06:31 initrd.img-4.14.0-0.bpo.3-amd64
-rw-r--r-- 1 root root  3033028 Jan 15 00:48 System.map-4.14.0-0.bpo.3-amd64
-rw-r--r-- 1 root root  4843280 Jan 15 00:48 vmlinuz-4.14.0-0.bpo.3-amd64
root@i7-graf-st-dh:/boot# 


Ok, das sieht sauber aus
Wenn mehr als ein Kernel vorhanden ist, hat der Teil von Virtual Box, der die Kernel Module erzeugt ein Problem und baut die Module nicht.
---------------------------------------------------------------------

Ist das System jetzt sauber ?

Zur Prüfung wird ein script install_check eingesetzt, das von meinem Freund H. entwickelt wurde.
Das Script zeigt verwaiste und nicht mehr benötigte Pakete an (Script ist am Ende der Seite).
Werden verwaiste Pkete gefunden, müssen diese mittels (apt oder aptitude) purge entfernt werden. Danach wird das Script erneut aufgerufen. Diese Schritte werden solange wiederholt, bis das System sauber ist.
root@i7-graf-st-dh:/boot# /root/bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 2 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster

gsoap behält die folgenden 1 installierten Pakete:
  libgsoap-dev
gsoap behalten? [Ynpsiuqx?], [H]ilfe: Y
+ deborphan
qalculate
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
+ rm /tmp/i_check.tmp
root@i7-graf-st-dh:/boot# 
Zunächst wird angezeigt, daß libgsoap-dev in der letzten Zeit installiert wurde.
Diese Pakete sollen behalten werden. Deshalb wird mit Y geantwortet.

System ist nicht sauber, qalculate wird nicht verwendet

Das Paket qalculate soll entfernt werden.
 
root@i7-graf-st-dh:/boot# aptitude purge qalculate

Die folgenden Pakete werden ENTFERNT:
  libcln6{u} libglade2-0{u} libqalculate5-data{u} libqalculate5v5{u} qalc{u} qalculate{p} qalculate-gtk{u} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 7 werden entfernt und 2 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 8.015 kB frei werden.
Möchten Sie fortsetzen? [Y/n/?] y
Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 161392 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von qalculate (0.9.7-6) ...
Entfernen von qalculate-gtk (0.9.7-6+b1) ...
Entfernen von qalc (0.9.7-9.2) ...
Entfernen von libglade2-0:amd64 (1:2.6.4-2) ...
Entfernen von libqalculate5v5:amd64 (0.9.7-9.2) ...
Entfernen von libqalculate5-data (0.9.7-9.2) ...
Entfernen von libcln6 (1.3.4-2+b1) ...
Trigger für mime-support (3.60) werden verarbeitet ...
Trigger für desktop-file-utils (0.23-1) werden verarbeitet ...
Trigger für sgml-base (1.29) werden verarbeitet ...
Trigger für libc-bin (2.24-11+deb9u1) werden verarbeitet ...
Trigger für man-db (2.7.6.1-2) werden verarbeitet ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-st-dh:/boot# 

erneut checken

Nach dem Purge muß erneut geprüft werden, ob das System jetzt sauber ist.
root@i7-graf-st-dh:/boot# /root/bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 2 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
+ deborphan
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
rc  libglade2-0:amd64                            1:2.6.4-2                   amd64                       library to load .glade files at runtime
rc  qalculate-gtk                                0.9.7-6+b1                  amd64                       Powerful and easy to use desktop calculator - GTK+ version
+ rm /tmp/i_check.tmp
root@i7-graf-st-dh:/boot# 

Diese beiden Pakete libglade2-0:amd64, qalculate-gtk müssen auch noch manuell gelöscht werden
Diese Schritte (purge, check) sind zu wiederholen, bis das Script nichts mehrn findet.
root@i7-graf-st-dh:/boot# aptitude purge libglade2-0:amd64 qalculate-gtk
Die folgenden Pakete werden ENTFERNT: libglade2-0{p} qalculate-gtk{p} 0 Pakete aktualisiert, 0 zusätzlich installiert, 2 werden entfernt und 2 nicht aktualisiert. 0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein. Möchten Sie fortsetzen? [Y/n/?] y Schreiben der erweiterten Statusinformationen... (Lese Datenbank ... 161265 Dateien und Verzeichnisse sind derzeit installiert.) Löschen der Konfigurationsdateien von qalculate-gtk (0.9.7-6+b1) ... Löschen der Konfigurationsdateien von libglade2-0:amd64 (1:2.6.4-2) ...

Nochmal checken

root@i7-graf-st-dh:/boot# /root/bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 2 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
+ deborphan
+ grep -v '^ii'
+ COLUMNS=200
+ dpkg -l
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
+ rm /tmp/i_check.tmp
root@i7-graf-st-dh:/boot#

Jetzt ist das System sauber und wir sind zufrieden.

Der Stationsname i7-graf-st-dh wird in der jetzt geändert und muss ggf. in Scripten angepasst werden,
wenn dort hartkodiert und nicht per ?lt; verwendet wurde.
. Dazu sollte der Returnwert aus uname -n in den Scrips verwendet werden.

Damit in der Folge bereits mit dem neuen Namen gebootet wird,
muss er an verschieden Stellen geändert werden:
  • /etc/hosts
  • /etc/hostname
  • /etc/dhcp/dhclient.conf        
    Diese Änderung ist nur bei meinem System erforderlich, damit mein System einfach ins Netzwerk von H. eingehängt werden kann.
In /etc/hosts werden bei mir verschiedene VirtualHost in /etc/apache2/sites-available für den Zugriff per HTTP definiert und in /etc/apache2/sites-enabled per symbolic Link freigegeben.
Sailing hat eine feste IP, da es zu Testzwecken mit https angelegt wurde.
Siehe : detlefhahn.de/linux/apache/apache_inst.php
# Damit mehrere hostnames verwendet werden können ist in /etc/host.conf
#    multi on
# gesetzt.
127.0.0.1       localhost   detlef  i7-graf-st-dh  uschi
192.168.178.20  sailing

# The following lines are desirable for IPv6 capable hosts
::1     localhost sailing ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

in /etc/hostname wird der neue Hostname geschrieben.
i7-graf-buster-dh

Mein Freund H. und ich haben identische Maschinen und wir verwenden die gleiche Nomenklatur für die Rechnernamen.
 <CPU-Typ>-<graf|min|...>-<Distribution>-<Autorenkürzel> für echte Maschinen
oder
<Distribution>-<Funktion> für virtuelle Maschinen
Das geht davon aus, daß immer nur eine Maschine einer CPU-Generation im Hause existiert. Damit meine Maschine einfach in sein Netz integriert werden kann, ist eine Änderung in /etc/dhcp/dhclient.conf erforderlich
Mit send dhcp-client-identifier kann der Client seine eigene ID vorgeben.
Auszug Datei : /etc/dhcp/dhclient.conf
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search,
        qrfc3442-classless-static-routes, ntp-servers;
send dhcp-client-identifier "xyz-i7-graf-buster-dh";


Plattenstruktur

Auf den Platten liegen zumindest 3 lauffähige Systeme. Eine Installation :
  • mit grafischer Oberfläche auf der SSD mit jeweils aktuellem Release. Mit dieser wird i.d.R. gearbeitet
  • mit grafischer Oberfläche auf der Harddisk (Release nicht unbedingt aktuell)
  • .
  • mit Textkonsole (als Notfallsystem)
Um z.B. das gesamte aktuelle System per tar zu sichern, kann eines der beiden anderen System gebootet werden.
Die Partition /boot/efi wird in allen Installationen von grub angesprochen.
/dev/nvme0n1p1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)

Klicken Sie in das Image, um es zu vergrößern



Mehrere bootfähige Patitions auf den Platten

Wenn man mehrere bootfähige Partitions auf seinen Platten hat und diese auch auf aktuellem Stand halten will, wird irgendwann von apt-get oder aptitude auch ein neuer Kernel installiert werden.
Danach wird automatisch update-grub2 ausgeführt. grub sucht sich seine Kernel und erzeugt den Startbildschirm zur Auswahl des Kernels.
Der zuletzt ausgeführte update-grub2b> gewinnt und erzeugt den Startbildschirm.
Die Informationen daruf sind allerdings dürftig. Wir sehen die Partition und den Type des Kernels, jedoch keine Relaseinfo und keine UUID's.
Hier kommt nun die Datei 40_custom ins Spiel.
In dieser Datei kann der Systemadministrator eigene Einträge (im Rahmen der Syntax) definieren, die grub nur anzeigt aber bein update nicht antastet.
Diese Datei liegt im Normalfall in /etc/grub.d und ist damit für jede Installation vorhanden und eingebunden. Damit sie nicht mehrfach verwaltet werden muß, wurde sie nach /boot/efi verschoben und durch einen symbolischen Link ersetzt. Der Link muß in jeder Installation gesetzt werden.
In der Datei 40_custom liegen fixe Einträge, die grub zwar verwendet aber nicht automatisch ändert.

Verzeichnis /etc/grub.d

root@i7-graf-buster-dh:/boot# ll /etc/grub.d/
insgesamt 80
-rwxr-xr-x 1 root root  9783 Feb 11  2017 00_header
-rwxr-xr-x 1 root root  6258 Feb 11  2017 05_debian_theme
-rwxr-xr-x 1 root root 12442 Mär  2 13:53 10_linux
-rwxr-xr-x 1 root root 11298 Mär  2 13:53 20_linux_xen
-rwxr-xr-x 1 root root 12059 Feb 11  2017 30_os-prober
-rwxr-xr-x 1 root root  1418 Feb 11  2017 30_uefi-firmware
lrwxrwxrwx 1 root root    19 Mai 11  2017 40_custom -> /boot/efi/40_custom
-rwxr-xr-x 1 root root   214 Mär  2 13:53 40_custom.dpkg-new
-rwxr-xr-x 1 root root   216 Feb 11  2017 41_custom
-rw-r--r-- 1 root root   483 Feb 11  2017 README
root@i7-graf-buster-dh:/boot# 

Verzeichnis /boot/efi

Hier liegt die Datei 40_custom, alle Installationen verweisen mit Ihrem sysmbolik Link hierher.
root@i7-graf-st-dh:/etc/default# cd /boot/efi
root@i7-graf-st-dh:/boot/efi# ll
insgesamt 4
-rwx------ 1 root root 2497 Mai 11  2017 40_custom
drwx------ 3 root root  512 Mai 10  2017 EFI
drwx------ 5 root root  512 Mär  9 11:54 grub
root@i7-graf-st-dh:/boot/efi# 

Hier ist der Bootscreen von grub2 zu sehen (nach der Änderung). Klicken Sie auf das Image, um es zu vergrössern.
Der Bereich ab System setup kommt aus 40_custom und wird von Grub nicht angetastet.
Somit ist es immer möglich das System zu booten, auch wenn man an Grub herum geschraubt hat, solange diese Kernel Images vorhanden sind.


Hier folgt die Struktur ab /boot
root@i7-graf-buster-dh:/boot# ll
insgesamt 29693
-rw-r--r-- 1 root root   197460 Feb 14 06:56 config-4.14.0-3-amd64
drwx------ 4 root root      512 Jan  1  1970 efi
lrwxrwxrwx 1 root root       15 Mai 11  2017 grub -> /boot/efi/grub/
-rw-r--r-- 1 root root 22314470 Mär 19 10:11 initrd.img-4.14.0-3-amd64
-rw-r--r-- 1 root root  3039249 Feb 14 06:56 System.map-4.14.0-3-amd64
-rw-r--r-- 1 root root  4839184 Feb 14 06:56 vmlinuz-4.14.0-3-amd64
root@i7-graf-buster-dh:/boot# 

root@i7-graf-buster-dh:/boot# ll efi
insgesamt 4
-rwx------ 1 root root 2503 Mär  9 14:42 40_custom
drwx------ 3 root root  512 Mai 10  2017 EFI
drwx------ 5 root root  512 Mär  9 14:47 grub
root@i7-graf-buster-dh:/boot# ll efi/grub
insgesamt 2389
drwx------ 2 root root     512 Mai 10  2017 fonts
-rwx------ 1 root root   24790 Mär  9 14:47 grub.cfg
-rwx------ 1 root root    1024 Mai 10  2017 grubenv
drwx------ 2 root root    2560 Mär  9 13:39 locale
-rwx------ 1 root root 2397557 Mär  9 13:39 unicode.pf2
drwx------ 2 root root   19456 Mär  9 13:39 x86_64-efi
root@i7-graf-buster-dh:/boot#
Im Normallfall werden bei einer Installation die Verzeichnisee Grub und EFI direkt im Verzeichnis /boot erzeugt.
Damit alle Maschinen auf eine einheitliche grub Konfiguration zugreifen, wurde für EFI eine eigenen Partition aufgesetzt die nach /boot/efi gemounted wird.
Das Verzeichnis grub wurde in diese Partition verschoben und in allen Installationen wurde das Verzeichnis grub durch einen symbolischen Link nach /boot/etf/grub ersetzt.
40_custom vor Änderung
Eine manuelle Änderung ist erforderlich:
  • wenn die Partitionsverteilung geändert wird (neue dazu, alte weg)
  • wenn eine Partition neu formatiert wird.

Hier nun endlich der Inhalt von 40_custom
Grub2 führt das script aus. Dabei wird der Inhalt ab der 4. Zeile übernommen.
Das Originalscript enthält nur die ersten 4 Zeilen. D.h. es wird von Grub2 nichts hinter den Bootmenuentries eingefügt.
Werden jedoch wie hier eigene Entries definiert, so übernimmt grub2 diese ohne Änderung ab der 5. Zeile.
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry '----SSD----'  {
        echo "6C6A-AD15                            -> nvme0n1p1  (i7-efi)"
        echo "c0edb2ef-fc35-49a1-b4b0-0cbf51d88c20 -> nvme0n1p2  (i7-swap)"
        echo "4bc35afa-dab0-4a1c-a74b-748313b49856 -> nvme0n1p3  (i7-min-st-dh)"
        echo "2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 -> nvme0n1p4  (i7-graf-st-dh)"
        echo "a31712c6-7aa9-433f-b544-604cf3da48d8 -> nvme0n1p5  (/data)"
}
menuentry 'i7-min-st-dh (stretch | 4.9.0-2 | nvme0n1p3 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 4bc35afa-dab0-4a1c-a74b-748313b49856
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=4bc35afa-dab0-4a1c-a74b-748313b49856 ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}
menuentry 'i7-graf-st-dh (stretch | 4.9.0-2 | nvme0n1p4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 2e0f6b5c-9d5b-4766-9db4-e8364a3706d4
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}

menuentry '----WDC----'  {
        echo "E650-CF6D                            -> sda1  (efi)"
        echo "b5f13f7c-ab39-45b6-8599-ded6526c36da -> sda2  (swap)"
        echo "0de5af7a-7670-4a7c-8657-073240c55f8b -> sda3  (i7-min-st-dh-hdd)"
        echo "41982129-0f54-4f9d-ba2a-b370d03e8ce4 -> sda4  (i7-graf-st-dh-hdd)"
        echo "8bf4c436-31eb-4992-855c-9f02f78960d1 -> sda5  (i7-data-hdd)"
        echo "7578c700-dd4f-4384-976d-dd2173749045 -> sda6  (i7-data-800G-hdd)"
}
menuentry 'i7-graf-st-dh-hdd (stretch | 4.9.0-2 | sda4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 41982129-0f54-4f9d-ba2a-b370d03e8ce4
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=41982129-0f54-4f9d-ba2a-b370d03e8ce4 ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}
menuentry 'i7-min-st-dh-hdd (stretch | 4.9.0-2 | sda3 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 0de5af7a-7670-4a7c-8657-073240c55f8b
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=0de5af7a-7670-4a7c-8657-073240c55f8b ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}

40_custom mit Editor der Wahl ändern

Die Änderung betrifft:
  • die Revisionnr. von Kernel und initrd.img
  • die neuen Rechnernamen
Dabei wird sinnvoll /boot in einen zweiten Terminalfenster angezeigt, damit die Werte per cut / paste übernommen werden können.
detlef@i7-graf-st-dh:~$ l /boot
insgesamt 29149
-rw-r--r-- 1 root root   197366 Jan 15 00:48 config-4.14.0-0.bpo.3-amd64
drwx------ 4 root root      512 Jan  1  1970 efi
lrwxrwxrwx 1 root root       15 Mai 11  2017 grub -> /boot/efi/grub/
-rw-r--r-- 1 root root 21760235 Mär  9 06:31 initrd.img-4.14.0-0.bpo.3-amd64
-rw-r--r-- 1 root root  3033028 Jan 15 00:48 System.map-4.14.0-0.bpo.3-amd64
-rw-r--r-- 1 root root  4843280 Jan 15 00:48 vmlinuz-4.14.0-0.bpo.3-amd64
detlef@i7-graf-st-dh:~$ 
Die Einträge werden an den aktuellen Kernel angepasst

40_custom nach Änderung

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry '----SSD----'  {
        echo "6C6A-AD15                            -> nvme0n1p1  (i7-efi)"
        echo "c0edb2ef-fc35-49a1-b4b0-0cbf51d88c20 -> nvme0n1p2  (i7-swap)"
        echo "4bc35afa-dab0-4a1c-a74b-748313b49856 -> nvme0n1p3  (i7-min-st-dh)"
        echo "2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 -> nvme0n1p4  (i7-graf-st-dh)"
        echo "a31712c6-7aa9-433f-b544-604cf3da48d8 -> nvme0n1p5  (/data)"
}
menuentry 'i7-min-st-dh (stretch | 4.9.0-2 | nvme0n1p3 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 4bc35afa-dab0-4a1c-a74b-748313b49856
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=4bc35afa-dab0-4a1c-a74b-748313b49856 ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}
menuentry 'i7-graf-st-dh (stretch | 4.14.0-0-bpo.3 | nvme0n1p4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 2e0f6b5c-9d5b-4766-9db4-e8364a3706d4
        linux  /boot/vmlinuz-4.14.0-0.bpo.3-amd64 root=UUID=2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 ipv6.disable=1
        initrd /boot/initrd.img-4.14.0-0.bpo.3-amd64 
}

menuentry '----WDC----'  {
        echo "E650-CF6D                            -> sda1  (efi)"
        echo "b5f13f7c-ab39-45b6-8599-ded6526c36da -> sda2  (swap)"
        echo "0de5af7a-7670-4a7c-8657-073240c55f8b -> sda3  (i7-min-st-dh-hdd)"
        echo "41982129-0f54-4f9d-ba2a-b370d03e8ce4 -> sda4  (i7-graf-st-dh-hdd)"
        echo "8bf4c436-31eb-4992-855c-9f02f78960d1 -> sda5  (i7-data-hdd)"
        echo "7578c700-dd4f-4384-976d-dd2173749045 -> sda6  (i7-data-800G-hdd)"
}
menuentry 'i7-graf-st-dh-hdd (stretch | 4.9.0-2 | sda4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 41982129-0f54-4f9d-ba2a-b370d03e8ce4
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=41982129-0f54-4f9d-ba2a-b370d03e8ce4 ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}
menuentry 'i7-min-st-dh-hdd (stretch | 4.9.0-2 | sda3 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 0de5af7a-7670-4a7c-8657-073240c55f8b
        linux  /boot/vmlinuz-4.9.0-2-amd64 root=UUID=0de5af7a-7670-4a7c-8657-073240c55f8b ipv6.disable=1
        initrd /boot/initrd.img-4.9.0-2-amd64
}

UID anzeigen lassen .

Die Menuentries für die Kernel enthalten auch die UUID der entsprechenden Partitions.
Damit die richtigen uuid eingetragen werden, ist es unerlässlich, daß die UUID's des laufenden Systems mit den in 40_custom verwendeten UUID's übereinstimmen.
Mit ls -l /dev/disk/by-uuid kann sich jeder User die UUID's anzeigen lassen.
Das erfolgt sinnvoll in einen anderen Terminal.
Die Funktion der Einträge für '----SSD----' und '----WDC----' werden nachher erläutert.
detlef@i7-graf-buster-dh:~$ ll /dev/disk/by-uuid
insgesamt 0
lrwxrwxrwx 1 root root 10 Mär 17 10:12 0de5af7a-7670-4a7c-8657-073240c55f8b -> ../../sda3
lrwxrwxrwx 1 root root 15 Mär 17 10:12 2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 -> ../../nvme0n1p4
lrwxrwxrwx 1 root root 10 Mär 17 10:12 41982129-0f54-4f9d-ba2a-b370d03e8ce4 -> ../../sda4
lrwxrwxrwx 1 root root 15 Mär 17 10:12 4bc35afa-dab0-4a1c-a74b-748313b49856 -> ../../nvme0n1p3
lrwxrwxrwx 1 root root 15 Mär 17 10:12 6C6A-AD15 -> ../../nvme0n1p1
lrwxrwxrwx 1 root root 10 Mär 17 10:12 7578c700-dd4f-4384-976d-dd2173749045 -> ../../sda6
lrwxrwxrwx 1 root root 10 Mär 17 10:12 8bf4c436-31eb-4992-855c-9f02f78960d1 -> ../../sda5
lrwxrwxrwx 1 root root 15 Mär 17 10:12 a31712c6-7aa9-433f-b544-604cf3da48d8 -> ../../nvme0n1p5
lrwxrwxrwx 1 root root 10 Mär 17 10:12 b5f13f7c-ab39-45b6-8599-ded6526c36da -> ../../sda2
lrwxrwxrwx 1 root root 15 Mär 17 10:12 c0edb2ef-fc35-49a1-b4b0-0cbf51d88c20 -> ../../nvme0n1p2
lrwxrwxrwx 1 root root 10 Mär 17 10:12 E650-CF6D -> ../../sda1
detlef@i7-graf-buster-dh:~$ 

Mit blkidb> kann root sich u.a. die UUID's und weitere Infos der Disks des Systems anzeigen lassen.
root@i7-graf-st-dh:/etc/default# blkid
/dev/nvme0n1p1: UUID="6C6A-AD15" TYPE="vfat" PARTLABEL="i7-efi" PARTUUID="62a3f338-78ec-4744-baa5-e2fed3117e93"
/dev/nvme0n1p2: UUID="c0edb2ef-fc35-49a1-b4b0-0cbf51d88c20" TYPE="swap" PARTLABEL="i7-swap" PARTUUID="354b2e7a-87be-4d6c-a08f-f6cc3561572e"
/dev/nvme0n1p3: LABEL="i7-min-st-dh" UUID="4bc35afa-dab0-4a1c-a74b-748313b49856" UUID_SUB="48e1511c-9a23-402c-bc23-8f33a865eb1d" TYPE="btrfs" PARTLABEL="i7-min-dh" PARTUUID="054dd511-cb86-4fc9-a233-dfd2d677b077"
/dev/nvme0n1p4: LABEL="i7-graf-st-d" UUID="2e0f6b5c-9d5b-4766-9db4-e8364a3706d4" UUID_SUB="be771144-9abf-4928-9483-8850c1c5ba94" TYPE="btrfs" PARTLABEL="i7-graf-dh" PARTUUID="aea451f4-d740-444b-854a-0bc6775d648d"
/dev/nvme0n1p5: LABEL="i7-data-dh" UUID="a31712c6-7aa9-433f-b544-604cf3da48d8" UUID_SUB="2e323274-764f-4c97-a1ae-eceb48b5e9b0" TYPE="btrfs" PARTLABEL="i7-data" PARTUUID="dafc3419-453f-465b-bc4f-b264f08af8d7"
/dev/sda1: UUID="E650-CF6D" TYPE="vfat" PARTLABEL="i7-efi" PARTUUID="399cff03-88d0-4d56-be92-14dfeda17414"
/dev/sda2: UUID="b5f13f7c-ab39-45b6-8599-ded6526c36da" TYPE="swap" PARTLABEL="i7-swap" PARTUUID="d9139f21-681c-435a-b9df-76fed44be423"
/dev/sda3: LABEL="i7-min-st-dh" UUID="0de5af7a-7670-4a7c-8657-073240c55f8b" UUID_SUB="09d54393-a9d5-4d0c-8e34-11caf49d2591" TYPE="btrfs" PARTLABEL="i7-min-dh" PARTUUID="9e9c1bcc-5ccb-4836-8822-30615f87f7c5"
/dev/sda4: LABEL="i7-graf-st-d" UUID="41982129-0f54-4f9d-ba2a-b370d03e8ce4" UUID_SUB="df0ad236-bd4b-49ce-b967-fea9627c25db" TYPE="btrfs" PARTLABEL="i7-graf-st-dh" PARTUUID="98673690-d9b7-4b1f-b935-5452592bc79c"
/dev/sda5: LABEL="i7-data-dh" UUID="8bf4c436-31eb-4992-855c-9f02f78960d1" UUID_SUB="67f18a3e-be4a-4818-b616-527b9ebedcdc" TYPE="btrfs" PARTLABEL="i7-data-dh" PARTUUID="b0e557ae-7984-432e-8914-bb6a79354e41"
/dev/sda6: LABEL="data_800gb" UUID="7578c700-dd4f-4384-976d-dd2173749045" UUID_SUB="3bf59b3a-6ba0-4296-8029-b7991d2a487c" TYPE="btrfs" PARTUUID="17162054-6440-49b9-9d65-be7ad4dc9a6d"
/dev/nvme0n1: PTUUID="bbe17828-245d-4632-928b-c15ed920d7ed" PTTYPE="gpt"
root@i7-graf-st-dh:/etc/default# 

update-grub2

Nach der Änderung muss grub die neuen Werte verarbeiten
root@i7-graf-st-dh:/boot/efi# update-grub2
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-0.bpo.3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-0.bpo.3-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
root@i7-graf-st-dh:/boot/efi# 

Änderungen in /etc/apt/sources.list

root@i7-graf-buster-dh:/etc/apt# ll
insgesamt 28
drwxr-xr-x 1 root root  236 Jan 18 15:04 apt.conf.d
-rw-r--r-- 1 root root  104 Mai  6  2017 listchanges.conf
drwxr-xr-x 1 root root    0 Apr  1  2017 preferences.d
-rw-r--r-- 1 root root 1017 Aug  6  2017 sources.list
drwxr-xr-x 1 root root   24 Nov  5 18:31 sources.list.d
-rw-r--r-- 1 root root 6736 Feb  2 13:17 trusted.gpg
drwxr-xr-x 1 root root  584 Mai 27  2017 trusted.gpg.d
root@i7-graf-buster-dh:/etc/apt# 

Sources.list umstellen auf Buster

Die alte sources.list für stretch wurde verwendet, um Pakete für virtualbox aus der Testing Umgebung zu holen. Da diese Paket im stable Zweig nicht verfügbar waren.
Für buster sind die Pakete im Reposittory vorhanden.
Ausserdem gibt es Backports erst ab einer stable Version.
# Wenn Sie ausschließlich freie Software benutzen möchten, sollten Sie die
# Sektionen contrib und non-free aus dem Eintrag entfernen.  

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

# https://wiki.debian.org/de/Backports
# Backports sind Pakete, die auf Programmversionen aus testing (hauptsächlich)
# und unstable (nur in einigen Fällen, bspw. Sicherheits-Updates) basieren 
# und so kompiliert wurden, dass sie möglichst ohne neue Bibliotheken auf
# Debian stable verwendet werden können. Wir empfehlen Ihnen, sich einzelne
# Backports herauszusuchen, die Sie benötigen, statt alle verfügbaren 
# Backports zu installieren.

deb http://ftp.debian.org/debian stretch-backports main contrib non-free

/etc/apt/sources.list nach der Änderung


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

# https://wiki.debian.org/de/Backports
# Backports sind Pakete, die auf Programmversionen aus testing (hauptsächlich)
# und unstable (nur in einigen Fällen, bspw. Sicherheits-Updates) basieren 
# und so kompiliert wurden, dass sie möglichst ohne neue Bibliotheken auf
# Debian stable verwendet werden können. Wir empfehlen Ihnen, sich einzelne
# Backports herauszusuchen, die Sie benötigen, statt alle verfügbaren 
# Backports zu installieren.

#Für Buster gibt es noch keine Backports
# Backports gibt es erst ab einen stabilen Version
#deb http://ftp.debian.org/debian stretch-backports main contrib non-free

Buster ist noch Testing, d.h. mindestens einmal pro Woche muss ein Update gemacht werden.

Das ist der Preis für ein aktuelles System
root@i7-graf-buster-dh:/etc/apt/apt.conf.d# ll
insgesamt 36
-rw-r--r-- 1 root root   82 Mai  6  2017 00CDMountPoint
-rw-r--r-- 1 root root   40 Mai  6  2017 00trustcdrom
-rw-r--r-- 1 root root  769 Apr  1  2017 01autoremove
-r--r--r-- 1 root root 2599 Jan 18 15:04 01autoremove-kernels
-rw-r--r-- 1 root root   42 Aug  6  2017 02backports
-rw-r--r-- 1 root root  114 Mai 11  2017 02nosuggestions
-rw-r--r-- 1 root root  202 Feb  5  2017 20listchanges
-rw-r--r-- 1 root root 1040 Mär  8  2017 20packagekit
-rw-r--r-- 1 root root  182 Jan 20  2017 70debconf
root@i7-graf-buster-dh:/etc/apt/apt.conf.d# mv 02backports ..
root@i7-graf-buster-dh:/etc/apt/apt.conf.d# 
Da keine Backports vorhanden sind, 02backports eine Ebene höher verschieben, damit ist es für später noch da.

update für den folgenden upgrade

Jetzt kann endlich der update angestossen werden
Man beachte die Zeile Aktueller Status. Da kommt was

root@i7-graf-buster-dh:/etc/apt/apt.conf.d# aptitude update

Holen: 1 http://ftp.debian.org/debian buster InRelease [142 kB]
Holen: 2 http://ftp.debian.org/debian buster-updates InRelease [46,0 kB]
Ign http://repo.vivaldi.com/stable/deb stable InRelease      
Treffer http://repo.vivaldi.com/stable/deb stable Release
Holen: 3 http://security.debian.org/debian-security buster/updates InRelease [25,5 kB]
Holen: 4 http://ftp.debian.org/debian buster/main amd64 Packages [7.439 kB]
Holen: 5 http://ftp.debian.org/debian buster/main Translation-en [5.627 kB]
Holen: 6 http://ftp.debian.org/debian buster/main Translation-de_DE [830 B]
Holen: 7 http://ftp.debian.org/debian buster/main Translation-de [1.571 kB]
Holen: 8 http://ftp.debian.org/debian buster/non-free amd64 Packages [76,7 kB]
Holen: 9 http://ftp.debian.org/debian buster/non-free Translation-en [79,9 kB]
Holen: 10 http://ftp.debian.org/debian buster/contrib amd64 Packages [53,4 kB]
Holen: 11 http://ftp.debian.org/debian buster/contrib Translation-en [46,4 kB]
15,1 MB wurden in 2 s heruntergeladen (5.184 kB/s)             
                                                    
Aktueller Status: 1307 (+1307) upgradable, 53062 (+53043) new.
root@i7-graf-buster-dh:/etc/apt/apt.conf.d# 

root@i7-graf-buster-dh:/etc/apt/apt.conf.d# aptitude upgrade

Auflösen der Abhängigkeiten ...                     
Die folgenden NEUEN Pakete werden zusätzlich installiert:
  binutils-common{a} binutils-x86-64-linux-gnu{a} bubblewrap{a} cpp-7{a} cups-ipp-utils{a} dirmngr{a} fdisk{a} gcc-7{a} 
  gcc-7-base{a} gcc-8-base{a} gdal-data{a} gir1.2-harfbuzz-0.0{a} gir1.2-polkit-1.0{a} gnome-themes-extra{a} 
  gnome-themes-extra-data{a} gnupg-l10n{a} gnupg-utils{a} gpg{a} gpg-agent{a} gpg-wks-client{a} gpg-wks-server{a} gpgconf{a} 
  libactivation-java{a} libappstream4{a} libargon2-0{a} libaribb24-0{a} libarmadillo8{a} libasan4{a} libass9{a} libbinutils{a} 
  libblockdev-fs2{a} libblockdev-loop2{a} libblockdev-part-err2{a} libblockdev-part2{a} libblockdev-swap2{a} 
  libblockdev-utils2{a} libblockdev2{a} libbluray2{a} libbrotli1{a} libcdio17{a} libcom-err2{a} libconfig-inifiles-perl{a} 
  libcryptsetup12{a} libdap25{a} libdns-export169{a} libegl-mesa0{a} libegl1{a} libepubgen-0.1-1{a} libetpan20{a} 
  libevent-2.1-6{a} libexo-2-0{a} libext2fs2{a} libfyba0{a} libgcc-7-dev{a} libgdbm-compat4{a} libgdbm5{a} libgeos-3.6.2{a} 
  libgfortran4{a} libgit2-26{a} libgl1{a} libgles2{a} libglib2.0-dev-bin{a} libglvnd-core-dev{a} libglvnd-dev{a} libglvnd0{a} 
  libglx-mesa0{a} libglx0{a} libgsl23{a} libgslcblas0{a} libgsoap-2.8.60{a} libhttp-parser2.7.1{a} libhunspell-1.6-0{a} 
  libical3{a} libilmbase23{a} libindicator3-7{a} libisc-export166{a} libjim0.77{a} liblivemedia62{a} libllvm5.0{a} 
  libmagick++-6.q16-8{a} libmagickcore-6.q16-5{a} libmagickwand-6.q16-5{a} libmail-java{a} libmicrodns0{a} libmpfr6{a} 
  libmwaw-0.3-3{a} libmysofa0{a} libnetcdf13{a} libnfs8{a} libnorm1{a} libntfs-3g88{a} libopencv-core3.2{a} libopengl0{a} 
  liborcus-0.13-0{a} libparted-fs-resize0{a} libpcre2-16-0{a} libperl5.26{a} libplacebo4{a} libpoppler72{a} libproj13{a} 
  libpython3.6{a} libpython3.6-minimal{a} libpython3.6-stdlib{a} libqpdf21{a} libqxp-0.0-0{a} libraw16{a} libsodium23{a} 
  libstaroffice-0.0-0{a} libstemmer0d{a} libsuitesparseconfig5{a} libsvgsalamander-java{a} libtry-tiny-perl{a} libunistring2{a} 
  libva-drm2{a} libva-wayland2{a} libva-x11-2{a} libva2{a} libvlccore9{a} libvpx5{a} libvulkan1{a} libwebpmux3{a} 
  libwps-0.4-4{a} libx264-152{a} libx265-146{a} libxerces-c3.2{a} libxmlsec1{a} libxmlsec1-nss{a} libytnef0{a} libzmf-0.0-0{a} 
  linux-compiler-gcc-7-x86{a} linux-headers-4.14.0-3-amd64{a} linux-headers-4.14.0-3-common{a} linux-image-4.14.0-3-amd64{a} 
  perl-modules-5.26{a} php7.2-common{a} php7.2-mbstring{a} php7.2-mysql{a} php7.2-xml{a} python-asn1crypto{a} 
  python-concurrent.futures{a} python-faulthandler{a} python3-certifi{a} python3-debconf{a} python3-distutils{a} 
  python3-gi-cairo{a} python3-idna{a} python3-lib2to3{a} python3-olefile{a} python3.6{a} python3.6-minimal{a} 
  sound-theme-freedesktop{a} 
Die folgenden Pakete werden ENTFERNT:
  claws-mail-fancy-plugin{u} gir1.2-gnomekeyring-1.0{u} gir1.2-wnck-3.0{u} gnome-accessibility-themes{u} gnome-orca{u} 
  gnome-themes-standard-data{u} i965-va-driver{u} libaacs0{u} libao-common{u} libao4{u} libarmadillo7{u} libass5{u} 
  libatk-adaptor{u} libblas-common{u} libbluray1{u} libbrlapi0.6{u} libcdio13{u} libdap23{u} libdirectfb-1.2-9{u} 
  libdotconf0{u} libebur128-1{u} libetpan17{u} libgeos-3.5.1{u} libgfortran3{u} libgit2-24{u} libgles1-mesa{u} libgles2-mesa{u} 
  libgnuinet-java{u} libgnumail-java{u} libgsl2{u} libgsoap10{u} libhttp-parser2.1{u} libhunspell-1.4-0{u} libical2{u} 
  libilmbase12{u} libiso9660-8{u} libjavascriptcoregtk-1.0-0{u} libjim0.76{u} liblivemedia57{u} libllvm3.9{u} liblouis-data{u} 
  liblouis12{u} libmagick++-6.q16-7{u} libmpfr4{u} libnetcdf11{u} libntfs-3g871{u} libopencv-core2.4v5{u} 
  libopencv-imgproc2.4v5{u} libperl5.24{u} libpisock9{u} libpoppler64{u} libproxy-tools{u} libpython3.5{u} 
  libpython3.5-minimal{u} libpython3.5-stdlib{u} libqpdf17{u} libraw15{u} libsbsms10{u} libsodium18{u} libspeechd2{u} 
  libsuitesparseconfig4{u} libtxc-dxtn-s2tc{u} libva-drm1{u} libva-x11-1{u} libva1{u} libvcdinfo0{u} libvlccore8{u} 
  libwebkitgtk-1.0-0{u} libx264-148{u} libx265-95{u} libxerces-c3.1{u} mesa-va-drivers{u} python3-brlapi{u} python3-louis{u} 
  python3-pyatspi{u} python3-speechd{u} python3-xdg{u} python3.5{u} python3.5-minimal{u} qpdf{u} rename{u} speech-dispatcher{u} 
  speech-dispatcher-audio-plugins{u} va-driver-all{u} xbrlapi{u} 
Die folgenden Pakete werden aktualisiert:
  adduser adwaita-icon-theme android-libbacktrace android-libbase android-libcutils android-liblog android-libutils 
  android-libziparchive antlr apache2 apache2-bin apache2-data apache2-utils apktool apt apt-listchanges apt-utils aptitude 
  aptitude-common aspell aspell-de aspell-de-1901 aspell-en at-spi2-core audacity audacity-data avahi-daemon base-files 
  base-passwd bash bash-completion bc bind9-host binfmt-support binutils binutils-multiarch bogofilter bogofilter-bdb 
  bogofilter-common bsdmainutils bsdutils btrfs-progs busybox ca-certificates ca-certificates-java cabextract claws-mail 
  claws-mail-acpi-notifier claws-mail-address-keeper claws-mail-archiver-plugin claws-mail-attach-remover 
  claws-mail-attach-warner claws-mail-bogofilter claws-mail-bsfilter-plugin claws-mail-clamd-plugin claws-mail-doc 
  claws-mail-extra-plugins claws-mail-feeds-reader claws-mail-fetchinfo-plugin claws-mail-gdata-plugin claws-mail-i18n 
  claws-mail-libravatar claws-mail-mailmbox-plugin claws-mail-managesieve claws-mail-multi-notifier claws-mail-newmail-plugin 
  claws-mail-pdf-viewer claws-mail-perl-filter claws-mail-pgpinline claws-mail-pgpmime claws-mail-plugins 
  claws-mail-python-plugin claws-mail-smime-plugin claws-mail-spam-report claws-mail-spamassassin claws-mail-tnef-parser 
  claws-mail-tools claws-mail-vcalendar-plugin coinor-libcbc3 coinor-libcgl1 coinor-libclp1 coinor-libcoinmp1v5 
  coinor-libcoinutils3v5 coinor-libosi1v5 console-setup console-setup-linux coreutils cpio cpp cpp-6 cron cups cups-browsed 
  cups-bsd cups-client cups-common cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers cups-ppdc 
  cups-server-common dash db5.3-util dbconfig-common dbconfig-mysql dbus dbus-user-session dbus-x11 dc dconf-gsettings-backend 
  dconf-service debconf debconf-i18n debian-archive-keyring debianutils default-java-plugin default-jdk default-jdk-headless 
  default-jre default-jre-headless default-mysql-client desktop-base desktop-file-utils device-tree-compiler dia dia-common 
  dialog diffoscope diffutils diffutils-doc discover distro-info-data dkms dmidecode dmsetup dns-root-data dnsmasq-base 
  docx2txt dpkg e2fslibs e2fsprogs efibootmgr enchant evince evince-common exfalso exfat-fuse exfat-utils exo-utils file 
  findutils firefox-esr firefox-esr-l10n-de fontconfig fontconfig-config fonts-crosextra-caladea fonts-font-awesome 
  fonts-freefont-ttf fonts-lato fonts-liberation fonts-linuxlibertine fonts-noto-mono fonts-opensymbol fonts-sil-gentium 
  fonts-sil-gentium-basic foomatic-db-compressed-ppds foomatic-db-engine freeplane fritzing fritzing-data galera-3 gawk gcc 
  gcc-6 gcc-6-base gconf-service gconf2-common gcr gdisk geany geany-common geoip-database gettext-base ghostscript gimp 
  gimp-data gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-glib-2.0 gir1.2-gst-plugins-base-1.0 
  gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gtksource-3.0 gir1.2-javascriptcoregtk-4.0 gir1.2-keybinder-3.0 gir1.2-notify-0.7 
  gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gir1.2-soup-2.4 gir1.2-webkit2-4.0 glib-networking glib-networking-common 
  glib-networking-services gnome-desktop3-data gnome-keyring gnome-themes-standard gnupg gnupg-agent gpgsm gpgv grep groff-base 
  groovy grub-common grub-efi-amd64 grub-efi-amd64-bin grub2-common gsettings-desktop-schemas gsfonts gsoap gstreamer1.0-alsa 
  gstreamer1.0-libav gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio 
  gstreamer1.0-x gtk-update-icon-cache gtk2-engines-pixbuf gtk2-engines-xfce gvfs gvfs-common gvfs-daemons gvfs-libs hddtemp 
  hdparm hicolor-icon-theme hostname hplip hplip-data hunspell-de-at hunspell-de-ch hunspell-de-de hunspell-en-us hyphen-de 
  icu-devtools ifupdown imagemagick imagemagick-6-common imagemagick-6-doc imagemagick-6.q16 ingerman init init-system-helpers 
  inkscape installation-report intel-microcode iproute2 iptables isc-dhcp-client isc-dhcp-common iso-codes ispell iswiss 
  iucode-tool iw jarwrapper java-common java-wrappers jmapviewer junit junit4 kbd kdiff3-qt keyboard-configuration keyutils 
  klibc-utils kmod krb5-locales laptop-detect less libabw-0.1-1 libaec0 libaio1 libamd2 libantlr-java libantlr3-runtime-java 
  libapache-pom-java libapache2-mod-php7.0 libapparmor1 libappindicator1 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 
  libaprutil1-ldap libapt-inst2.0 libapt-pkg5.0 libarchive13 libarpack2 libart-2.0-2 libasan3 libasm-java libaspell15 
  libassuan0 libatinject-jsr330-api-java libatk-bridge2.0-0 libatk-bridge2.0-dev libatk-wrapper-java libatk-wrapper-java-jni 
  libatk1.0-0 libatk1.0-data libatk1.0-dev libatkmm-1.6-1v5 libatomic1 libatspi2.0-0 libatspi2.0-dev libaudio2 libaudit-common 
  libaudit1 libautocomplete-java libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavahi-glib1 
  libavalon-framework-java libavcodec57 libavfilter6 libavformat57 libavresample3 libavutil55 libbabl-0.1-0 
  libbasicusageenvironment1 libbatik-java libbind9-160 libblas3 libblkid1 libbluetooth3 libboost-chrono1.62.0 
  libboost-date-time1.62.0 libboost-filesystem1.62.0 libboost-iostreams1.62.0 libboost-locale1.62.0 libboost-system1.62.0 
  libboost-thread1.62.0 libbsd0 libburn4 libc-bin libc-dev-bin libc-l10n libc6 libc6-dev libcairo-gobject2 libcairo-perl 
  libcairo-script-interpreter2 libcairo2 libcairo2-dev libcairomm-1.0-1v5 libcamd2 libcanberra-gtk0 libcanberra-gtk3-0 
  libcanberra-gtk3-module libcanberra0 libcap-ng0 libcap2 libcap2-bin libcc1-0 libccolamd2 libcdparanoia0 libcdr-0.1-1 
  libcgi-fast-perl libcgi-pm-perl libcholmod3 libchromaprint1 libcilkrts5 libclass-accessor-perl libcolamd2 libcomerr2 
  libcommons-cli-java libcommons-codec-java libcommons-io-java libcommons-lang-java libcommons-logging-java 
  libcommons-parent-java libcroco3 libcrypt-openssl-bignum-perl libcrypt-openssl-rsa-perl libcups2 libcupscgi1 libcupsfilters1 
  libcupsimage2 libcupsmime1 libcupsppdc1 libcurl3 libcurl3-gnutls libcwidget3v5 libdaemon0 libdapclient6v5 libdapserver7v5 
  libdatrie1 libdb5.3 libdbd-mysql-perl libdbi-perl libdbus-1-3 libdbus-1-dev libdbus-glib-1-2 libdbusmenu-glib4 
  libdbusmenu-gtk4 libdconf1 libdebconfclient0 libdevmapper1.02.1 libdiscover2 libdjvulibre-text libdjvulibre21 libdns169 
  libdpkg-perl libdrm-amdgpu1 libdrm-common libdrm-dev libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libdvbpsi10 
  libdvdnav4 libdvdread4 libe-book-0.1-1 libebml4v5 libecj-java libedit2 libefiboot1 libefivar1 libegl1-mesa libegl1-mesa-dev 
  libelf1 libenchant1c2a libeot0 libepoxy-dev libepoxy0 liberror-perl libestr0 libetonyek-0.1-1 libevdev2 libevdocument3-4 
  libevview3-3 libexif12 libexo-1-0 libexo-common libexo-helpers libexpat1 libexpat1-dev libexttextcat-2.0-0 libexttextcat-data 
  libfaad2 libfastjson4 libfcgi-perl libfdisk1 libffi6 libfftw3-double3 libfftw3-single3 libfile-copy-recursive-perl 
  libfile-mimeinfo-perl libflite1 libfontbox-java libfontconfig1 libfontconfig1-dev libfontembed1 libfop-java libfreehand-0.1-1 
  libfreetype6 libfreetype6-dev libfreexl1 libfribidi0 libgail-common libgail18 libgarcon-1-0 libgarcon-common libgbm1 
  libgcc-6-dev libgcc1 libgcj-common libgcj17 libgck-1-0 libgconf-2-4 libgcr-3-common libgcr-base-3-1 libgcr-ui-3-1 libgcrypt20 
  libgd3 libgdal20 libgdata-common libgdata22 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgegl-0.3-0 
  libgeoip1 libgeos-c1v5 libgeotiff2 libgif7 libgimp2.0 libgirepository-1.0-1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa 
  libglew2.0 libglib-perl libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev libglibmm-2.4-1v5 libgme0 libgmp10 
  libgnome-desktop-3-12 libgnutls30 libgoa-1.0-0b libgoa-1.0-common libgomp1 libgpg-error0 libgpgme11 libgpgmepp6 libgphoto2-6 
  libgphoto2-l10n libgphoto2-port12 libgpm2 libgpod-common libgpod4 libgraphite2-3 libgraphite2-dev libgroupsock8 libgs9 
  libgs9-common libgsoap-dev libgssapi-krb5-2 libgstreamer-plugins-bad1.0-0 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0 
  libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk-3-dev libgtk-3-doc libgtk2-perl libgtk2.0-0 libgtk2.0-bin libgtk2.0-common 
  libgtkmm-2.4-1v5 libgtkmm-3.0-1v5 libgtksourceview-3.0-1 libgtksourceview-3.0-common libgtkspell0 libgudev-1.0-0 libgusb2 
  libgutenprint2 libgxps2 libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-icu0 libharfbuzz0b libhawtjni-runtime-java 
  libhdf4-0-alt libhdf5-100 libhogweed4 libhpmud0 libhsqldb1.8.0-java libhtml-parser-perl libhtml-template-perl 
  libhtml-tree-perl libhttp-cookies-perl libhttp-message-perl libicu-dev libicu57 libid3tag0 libidn11 libidn2-0 libijs-0.35 
  libimage-info-perl libimage-magick-perl libimage-magick-q16-perl libimlib2 libimobiledevice6 libinput-bin libinput10 
  libio-socket-ssl-perl libip4tc0 libip6tc0 libipc-system-simple-perl libiptc0 libisc166 libisccc160 libisccfg160 libisofs6 
  libitm1 libjack-jackd2-0 libjansi-java libjansi-native-java libjansson4 libjavaparser-java libjavascriptcoregtk-4.0-18 
  libjaxp1.3-java libjbig2dec0 libjemalloc1 libjlatexmath-java libjline2-java libjpeg62-turbo libjs-jquery libjs-jquery-easing 
  libjs-jquery-fancybox libjs-jquery-mousewheel libjs-sphinxdoc libjson-c3 libjson-glib-1.0-0 libjson-glib-1.0-common 
  libk5crypto3 libkeybinder-3.0-0 libkeyutils1 libklibc libkmlbase1 libkmlconvenience1 libkmldom1 libkmlengine1 
  libkmlregionator1 libkmlxsd1 libkmod2 libknopflerfish-osgi-framework-java libkpathsea6 libkrb5-3 libkrb5support0 liblapack3 
  liblcms2-2 liblcms2-utils libldap-2.4-2 libldap-common libldb1 liblightdm-gobject-1-0 liblirc-client0 liblmdb0 
  liblocale-gettext-perl liblockfile-bin liblockfile1 liblog4j1.2-java liblogging-stdlog0 liblognorm5 liblqr-1-0 liblsan0 
  liblwp-protocol-https-perl liblwres160 liblzma5 libmad0 libmagic-mgc libmagic1 libmagickcore-6.q16-3 libmagickwand-6.q16-3 
  libmail-dkim-perl libmariadbclient18 libmatroska6v5 libmbim-glib4 libmbim-proxy libmenu-cache-bin libmenu-cache3 libmhash2 
  libmm-glib0 libmount1 libmp3lame0 libmpc3 libmpeg2-4 libmpg123-0 libmpx2 libmspack0 libmspub-0.1-1 libmysqlcppconn7v5 
  libnautilus-extension1a libncurses5 libncursesw5 libnet-dbus-perl libnet-dns-perl libnet-http-perl libnet-ssleay-perl 
  libnetaddr-ip-perl libnettle6 libnewt0.52 libnfnetlink0 libnghttp2-14 libnm0 libnma0 libnotify-bin libnotify4 libnpth0 
  libnspr4 libnss3 liboauth0 libodbc1 libogdi3.2 libogg0 libonig4 libopenexr22 libopenjp2-7 libopenmpt-modplug1 libopenmpt0 
  libopts25 libopus0 liborc-0.4-0 libp11-kit0 libpackagekit-glib2-18 libpagemaker-0.0-0 libpam-cap libpam-gnome-keyring 
  libpam-modules libpam-modules-bin libpam-runtime libpam-systemd libpam0g libpango-1.0-0 libpango-perl libpango1.0-dev 
  libpangocairo-1.0-0 libpangoft2-1.0-0 libpangomm-1.4-1v5 libpangoxft-1.0-0 libparted2 libpcap0.8 libpcre16-3 libpcre2-8-0 
  libpcre3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpcsclite1 libperl4-corelibs-perl libpipeline1 libpixman-1-0 
  libpixman-1-dev libplist3 libpng-dev libpng16-16 libpoppler-glib8 libpoppler-qt5-1 libpostproc54 libpotrace0 libpq5 
  libprocps6 libproj12 libprotobuf-lite10 libproxy1v5 libpsl5 libpulse-mainloop-glib0 libpulse0 libpulsedsp libpython-all-dev 
  libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libpython3-stdlib 
  libqdox-java libqhull7 libqmi-glib5 libqmi-proxy libqt5concurrent5 libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 
  libqt5opengl5 libqt5printsupport5 libqt5serialport5 libqt5sql5 libqt5sql5-sqlite libqt5svg5 libqt5widgets5 libqt5x11extras5 
  libqt5xml5 libquadmath0 libqwt-qt5-6 libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-base libreoffice-base-core 
  libreoffice-base-drivers libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-gtk2 
  libreoffice-help-de libreoffice-help-en-us libreoffice-impress libreoffice-java-common libreoffice-l10n-de libreoffice-math 
  libreoffice-report-builder-bin libreoffice-sdbc-hsqldb libreoffice-style-galaxy libreoffice-style-tango libreoffice-writer 
  librsvg2-2 librsvg2-common libruby2.3 libsamplerate0 libsane-extras libsane-extras-common libsane-hpaio libsdl-image1.2 
  libsdl1.2debian libsecret-1-0 libsecret-common libselinux1 libsemanage-common libsemanage1 libsepol1 libserd-0-0 
  libservlet3.1-java libshine3 libshout3 libsigsegv2 libslang2 libslang2-modules libsmali-java libsmartcols1 libsmbclient 
  libsnappy1v5 libsndfile1 libsnmp-base libsnmp30 libsocket6-perl libsoundtouch1 libsoup-gnome2.4-1 libsoup2.4-1 libsoxr0 
  libspatialite7 libsqlite3-0 libss2 libssh-gcrypt-4 libssh2-1 libssl1.0.2 libssl1.1 libstartup-notification0 libstdc++-6-dev 
  libstdc++6 libsub-name-perl libsuil-0-0 libsuperlu5 libswresample2 libswscale4 libsystemd0 libsz2 libtag1v5 libtag1v5-vanilla 
  libtagc0 libtalloc2 libtasn1-6 libtbb2 libtcl8.6 libtdb1 libterm-readkey-perl libtevent0 libtext-charwidth-perl 
  libtext-iconv-perl libthai-data libthai0 libthunarx-2-0 libtiff5 libtinfo5 libtk8.6 libtsan0 libtumbler-1-0 libtwolame0 
  libubsan0 libudev1 libudisks2-0 libumfpack5 libunique-1.0-0 libupnp6 libupower-glib3 liburi-perl libusageenvironment3 
  libusb-0.1-4 libusb-1.0-0 libusbmuxd4 libuuid1 libv4l-0 libv4lconvert0 libvamp-hostsdk3v5 libvdpau-va-gl1 libvdpau1 
  libvisio-0.1-1 libvisual-0.4-0 libvlc-bin libvlc5 libvorbis0a libvorbisenc2 libvorbisfile3 libvte-2.91-0 libvte-2.91-common 
  libwacom-bin libwacom-common libwacom2 libwavpack1 libwayland-bin libwayland-client0 libwayland-cursor0 libwayland-dev 
  libwayland-egl1-mesa libwayland-server0 libwbclient0 libwebkit2gtk-4.0-37 libwebkit2gtk-4.0-37-gtk2 libwebp6 libwebpdemux2 
  libwmf0.2-7 libwnck-3-0 libwnck-3-common libwpd-0.10-10 libwrap0 libwww-perl libwxbase3.0-0v5 libwxgtk3.0-0v5 libxalan2-java 
  libxapian30 libxatracker2 libxau-dev libxau6 libxcb-icccm4 libxcb-render-util0 libxcursor-dev libxcursor1 libxdamage-dev 
  libxdamage1 libxfce4panel-2.0-4 libxfce4ui-1-0 libxfce4ui-2-0 libxfce4ui-common libxfce4ui-utils libxfont2 libxkbcommon-dev 
  libxkbcommon-x11-0 libxkbcommon0 libxklavier16 libxml-commons-resolver1.1-java libxml-libxml-perl 
  libxml-namespacesupport-perl libxml-parser-perl libxml-sax-base-perl libxml-xpathengine-perl libxml2 
  libxmlgraphics-commons-java libxres1 libxslt1.1 libxss1 libxstream-java libxtables12 libxvidcore4 libyaml-snake-java libzmq5 
  light-locker lightdm lightdm-gtk-greeter linux-headers-amd64 linux-image-amd64 linux-kbuild-4.14 linux-libc-dev locales login 
  lsb-base lsb-release man-db manpages manpages-de manpages-dev mariadb-client-10.1 mariadb-client-core-10.1 mariadb-common 
  mariadb-server-10.1 mariadb-server-core-10.1 markdown mc mc-data media-player-info mediawiki mediawiki-classes meld 
  mesa-utils mesa-vdpau-drivers mobile-broadband-provider-info modemmanager mount multiarch-support mysql-common 
  mysql-workbench mythes-en-us nano ncurses-base ncurses-bin ncurses-term net-tools netcat-traditional network-manager 
  network-manager-gnome nfs-common nfs-kernel-server notification-daemon ntfs-3g ntp ntp-doc ntpdate odbcinst odbcinst1debian2 
  openbsd-inetd openjdk-8-jdk openjdk-8-jdk-headless openjdk-8-jre openjdk-8-jre-headless openprinting-ppds openssh-client 
  openssh-server openssh-sftp-server openssl orage os-prober p11-kit p11-kit-modules p7zip p7zip-full p7zip-rar packagekit 
  packagekit-tools parted passwd patch pavucontrol perl perl-base php-common php-mbstring php-mysql php-pear php-phpseclib 
  php-xml php7.0 php7.0-cli php7.0-common php7.0-curl php7.0-gd php7.0-json php7.0-mbstring php7.0-mcrypt php7.0-mysql 
  php7.0-opcache php7.0-readline php7.0-xml phpmyadmin pinentry-curses pinentry-gnome3 poppler-data poppler-utils ppp 
  printer-driver-all printer-driver-brlaser printer-driver-c2050 printer-driver-c2esp printer-driver-cjet printer-driver-dymo 
  printer-driver-escpr printer-driver-foo2zjs printer-driver-foo2zjs-common printer-driver-gutenprint printer-driver-hpcups 
  printer-driver-hpijs printer-driver-m2300w printer-driver-min12xxw printer-driver-pnm2ppa printer-driver-postscript-hp 
  printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix procps proj-bin proj-data psmisc 
  pulseaudio pulseaudio-utils putty putty-tools python python-all python-all-dev python-cairo python-cffi-backend 
  python-chardet python-cryptography python-dbus python-dev python-enum34 python-feedparser python-gflags python-gi 
  python-gi-cairo python-gobject-2 python-gtk2 python-idna python-libxml2 python-minimal python-mutagen python-numpy 
  python-pkg-resources python-ptyprocess python-pyasn1 python-pyodbc python-setuptools python-six python-talloc python2.7 
  python2.7-dev python2.7-minimal python3 python3-apt python3-cairo python3-chardet python3-cups python3-cupshelpers 
  python3-dbus python3-debian python3-debianbts python3-gi python3-magic python3-minimal python3-pil python3-pkg-resources 
  python3-ptyprocess python3-pycurl python3-reportbug python3-reportlab python3-reportlab-accel python3-requests python3-six 
  python3-smbc python3-uno python3-urllib3 qt5-gtk-platformtheme qttranslations5-l10n quodlibet rake reportbug ristretto rsync 
  rsyslog rtkit ruby ruby-minitest ruby-test-unit ruby2.3 samba-libs sed sensible-utils shared-mime-info simple-scan simplyhtml 
  slsh socat spamassassin sphinx-rtd-theme-common sudo system-config-printer system-config-printer-common 
  system-config-printer-udev systemd systemd-sysv sysvinit-utils tango-icon-theme tar task-desktop task-german 
  task-german-desktop task-print-server task-ssh-server task-xfce-desktop tasksel tasksel-data tcl8.6 tcpd thunar thunar-data 
  tk8.6 trydiffoscope ttf-mscorefonts-installer tumbler tumbler-common tzdata ucf udev udisks2 umlet uno-libs3 upower ure 
  usb-modeswitch usb-modeswitch-data usbmuxd util-linux vdpau-driver-all vim-common vim-tiny virtualbox virtualbox-dkms 
  virtualbox-ext-pack virtualbox-guest-additions-iso virtualbox-qt vlc vlc-bin vlc-data vlc-l10n vlc-plugin-base 
  vlc-plugin-notify vlc-plugin-qt vlc-plugin-samba vlc-plugin-skins2 vlc-plugin-video-output vlc-plugin-video-splitter 
  vlc-plugin-visualization w3m wamerican wayland-protocols wget whiptail wngerman wpasupplicant xarchiver xauth xdg-user-dirs 
  xdg-utils xfburn xfce4 xfce4-clipman xfce4-clipman-plugin xfce4-dict xfce4-diskperf-plugin xfce4-fsguard-plugin 
  xfce4-genmon-plugin xfce4-goodies xfce4-mount-plugin xfce4-netload-plugin xfce4-notifyd xfce4-panel xfce4-pulseaudio-plugin 
  xfce4-session xfce4-terminal xfce4-weather-plugin xfce4-xkb-plugin xfdesktop4 xfdesktop4-data xkb-data xml-core 
  xorg-docs-core xserver-common xserver-xorg-core xserver-xorg-input-libinput xserver-xorg-input-wacom 
  xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-intel xserver-xorg-video-nouveau xserver-xorg-video-qxl 
  xserver-xorg-video-radeon xterm xxd xxdiff xz-utils zygrib 
Die folgenden Pakete werden EMPFOHLEN, aber NICHT installiert:
  ant ant-optional apparmor citadel-server clamav debhelper dma e2fsprogs-l10n esmtp-run exim4 exim4-daemon-heavy 
  exim4-daemon-light fakeroot fig2dev firmware-linux-free fonts-liberation2 fonts-noto-hinted fp-utils fp-utils-3.0.4 
  gcj-6-jre-lib genisoimage gettext ghc giflib-tools gir1.2-secret-1 gsfonts-x11 gstreamer1.0-plugins-bad icc-profiles-free 
  irqbalance jsbeautifier kdiff3-doc libarchive-tools libatk1.0-doc libatm1 libblockdev-crypto2 libcanberra-gtk-module 
  libdata-dump-perl libfile-fcntllock-perl libgdk-pixbuf2.0-bin libglib2.0-doc libgpars-groovy-java libjcommander-java 
  liblouis-bin liblouisutdml-bin libmagickcore-6.q16-5-extra libmail-spf-perl libnss-systemd libpango1.0-doc libpng-tools 
  libreoffice-librelogo libreoffice-nlpsolver libreoffice-ogltrans libreoffice-report-builder libreoffice-script-provider-bsh 
  libreoffice-script-provider-js libreoffice-script-provider-python libreoffice-sdbc-firebird libreoffice-sdbc-postgresql 
  libreoffice-wiki-publisher libsaxon-java libwmf-bin libxt-dev llvm mono-utils msmtp-mta myspell-de-at myspell-de-ch 
  myspell-de-de nullmailer odt2txt oggvideotools orca pgpdump php-apcu php-bz2 php-intl php-tcpdf php-wikidiff2 php-zip 
  php7.0-bz2 php7.0-intl php7.0-zip php7.1-bz2 php7.1-intl php7.1-zip php7.2-bz2 php7.2-intl php7.2-zip postfix 
  printer-driver-fujixerox procyon-decompiler pseudo publicsuffix python-lxml python-musicbrainzngs python-scour 
  python3-argcomplete python3-binwalk python3-defusedxml python3-guestfs python3-jsondiff python3-progressbar python3-pyxattr 
  python3-renderpm python3-rpm python3-tlsh python3-xattr qmail-run r-base-core rpm2cpio sa-compile sendmail-bin sng sntp spamc 
  sqlite3 squashfs-tools ssmtp tcpdump tix uuid-runtime vdpau-va-driver yelp zip 
1275 Pakete aktualisiert, 151 zusätzlich installiert, 85 werden entfernt und 1 nicht aktualisiert.
1.159 MB an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 514 MB zusätzlich belegt sein.
Möchten Sie fortsetzen? [Y/n/?] 

Nach der Installation erfolgt reboot mit neuen Kernel

root@i7-graf-buster-dh:~# reboot
Danach muss wie vorher, der alte Kernel und seine Module gelöscht / purged werden
Dazu werden die Pakete mittele dpkg ermittelt, da in /boot nut die binaray liegen.
 
root@i7-graf-buster-dh:~# cd /boot
root@i7-graf-buster-dh:/boot# dpkg -l | grep linux
ii  binutils-x86-64-linux-gnu             2.30-5                              amd64        GNU binary utilities, for x86-64-linux-gnu target
ii  console-setup-linux                   1.178                               all          Linux specific part of console-setup
ii  fonts-linuxlibertine                  5.3.0-4                             all          Linux Libertine family of fonts
ii  libselinux1:amd64                     2.7-2+b1                            amd64        SELinux runtime shared libraries
ii  libv4l-0:amd64                        1.14.2-1                            amd64        Collection of video4linux support libraries
ii  libv4lconvert0:amd64                  1.14.2-1                            amd64        Video4linux frame format conversion library
ii  linux-base                            4.5                                 all          Linux image base package
ii  linux-compiler-gcc-6-x86              4.14.13-1~bpo9+1                    amd64        Compiler for Linux on x86 (meta-package)
ii  linux-compiler-gcc-7-x86              4.15.4-1                            amd64        Compiler for Linux on x86 (meta-package)
ii  linux-headers-4.14.0-0.bpo.3-amd64    4.14.13-1~bpo9+1                    amd64        Header files for Linux 4.14.0-0.bpo.3-amd64
ii  linux-headers-4.14.0-0.bpo.3-common   4.14.13-1~bpo9+1                    all          Common header files for Linux 4.14.0-0.bpo.3
ii  linux-headers-4.14.0-3-amd64          4.14.17-1                           amd64        Header files for Linux 4.14.0-3-amd64
ii  linux-headers-4.14.0-3-common         4.14.17-1                           all          Common header files for Linux 4.14.0-3
ii  linux-headers-amd64                   4.14+89                             amd64        Header files for Linux amd64 configuration (meta-package)
ii  linux-image-4.14.0-0.bpo.3-amd64      4.14.13-1~bpo9+1                    amd64        Linux 4.14 for 64-bit PCs
ii  linux-image-4.14.0-3-amd64            4.14.17-1                           amd64        Linux 4.14 for 64-bit PCs
ii  linux-image-amd64                     4.14+89                             amd64        Linux for 64-bit PCs (meta-package)
ii  linux-kbuild-4.14                     4.14.17-1                           amd64        Kbuild infrastructure for Linux 4.14
ii  linux-libc-dev:amd64                  4.15.4-1                            amd64        Linux support headers for userspace development
ii  util-linux                            2.31.1-0.4                          amd64        miscellaneous system utilities
root@i7-graf-buster-dh:/boot# 

alte Kernelpakete entfernen

Der vorherige Kernel mit den Backports soll raus.
Folgende Module sind zu entfernen - linux-headers-4.14.0-0.bpo.3-amd64
- linux-headers-4.14.0-0.bpo.3-common
- linux-image-4.14.0-0.bpo.3-amd64

Mit dem Purge werden vom System auch der gcc-6 und die alte virtualbox weggeräumt.
Deshalb sollten die Dateien nicht per rm gelöscht werden.

root@i7-graf-buster-dh:/boot# aptitude purge linux-headers-4.14.0-0.bpo.3-amd64 linux-headers-4.14.0-0.bpo.3-commonlinux-image-4.14.0-0.bpo.3-amd64
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
Die folgenden Pakete werden ENTFERNT:
  cpp-6{u} gcc-6{u} linux-compiler-gcc-6-x86{u} linux-headers-4.14.0-0.bpo.3-amd64{p} linux-headers-4.14.0-0.bpo.3-common{pu} linux-image-4.14.0-0.bpo.3-amd64{p} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 6 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 349 MB frei werden.
Möchten Sie fortsetzen? [Y/n/?] 
Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 180003 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von linux-headers-4.14.0-0.bpo.3-amd64 (4.14.13-1~bpo9+1) ...
Entfernen von linux-compiler-gcc-6-x86 (4.14.13-1~bpo9+1) ...
Entfernen von gcc-6 (6.4.0-12) ...
Entfernen von cpp-6 (6.4.0-12) ...
Entfernen von linux-headers-4.14.0-0.bpo.3-common (4.14.13-1~bpo9+1) ...
Entfernen von linux-image-4.14.0-0.bpo.3-amd64 (4.14.13-1~bpo9+1) ...
/etc/kernel/prerm.d/dkms:
dkms: removing: virtualbox 5.2.8 (4.14.0-0.bpo.3-amd64) (x86_64)

-------- Uninstall Beginning --------
Module:  virtualbox
Version: 5.2.8
Kernel:  4.14.0-0.bpo.3-amd64 (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

vboxdrv.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.14.0-0.bpo.3-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetadp.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.14.0-0.bpo.3-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxnetflt.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.14.0-0.bpo.3-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.


vboxpci.ko:
 - Uninstallation
   - Deleting from: /lib/modules/4.14.0-0.bpo.3-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod...

DKMS: uninstall completed.
I: /vmlinuz.old is now a symlink to boot/vmlinuz-4.14.0-3-amd64
I: /initrd.img.old is now a symlink to boot/initrd.img-4.14.0-3-amd64
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.14.0-0.bpo.3-amd64
/etc/kernel/postrm.d/zz-update-grub:
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-3-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
Trigger für man-db (2.8.2-1) werden verarbeitet ...
(Lese Datenbank ... 159533 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von linux-image-4.14.0-0.bpo.3-amd64 (4.14.13-1~bpo9+1) ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-buster-dh:/boot# 

Der CC-6 Compiler wurde automatisch mit entfernt, da er nur für den Kernel verwendet wurde. Es wurden auch die Module für die Virtualbox (bpo) entfernt und neue Module für den neuen Kernel gebaut.
40_custom muss wieder manuell geändert werden, da neuer Kernel
Kommt langsam Routine auf?

Welchen Kernel wurde gebootet?
detlef@i7-graf-buster-dh:~$ uname -a
Linux i7-graf-buster-dh 4.14.0-3-amd64 #1 SMP Debian 4.14.17-1 (2018-02-14) x86_64 GNU/Linux
 
Nur dieser Eintrag muss in 40_custom geändert werden, da das jetzt buster ist und keine Backports hat.

menuentry 'i7-graf-st-dh (stretch | 4.14.0-0-bpo.3 | nvme0n1p4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 2e0f6b5c-9d5b-4766-9db4-e8364a3706d4
        linux  /boot/vmlinuz-4.14.0-0.bpo.3-amd64 root=UUID=2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 ipv6.disable=1
        initrd /boot/initrd.img-4.14.0-0.bpo.3-amd64
}
Der neue Eintrag
menuentry 'i7-graf-buster-dh (buster | 4.14.0-3 | nvme0n1p4 | btrfs)' --class gnu-linux --class gnu --class os {
        search --no-floppy --fs-uuid --set=root 2e0f6b5c-9d5b-4766-9db4-e8364a3706d4
        linux  /boot/vmlinuz-4.14.0-3-amd64 root=UUID=2e0f6b5c-9d5b-4766-9db4-e8364a3706d4 ipv6.disable=1
        initrd /boot/initrd.img-4.14.0-3-amd64
}

Nach der Änderung muss grub die neuen Werte verarbeiten

Achtung vor Reboot update-grub2 wichtig !!!!!!!!!!
root@i7-graf-buster-dh:~# update-grub2
GRUB-Konfigurationsdatei wird erstellt …
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Linux-Abbild gefunden: /boot/vmlinuz-4.14.0-3-amd64
initrd-Abbild gefunden: /boot/initrd.img-4.14.0-3-amd64
Debian GNU/Linux 9 (stretch) auf /dev/nvme0n1p3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda3 gefunden
Debian GNU/Linux 9 (stretch) auf /dev/sda4 gefunden
Adding boot menu entry for EFI firmware configuration
erledigt
root@i7-graf-buster-dh:~# 

reboot Nachdem jetzt der upgrade durchgeführt ist, sollte ein Reboot erfolgen, damit man sieht was geändert wurde (nicht zwingend erforderlich)

Hier ist der Bootscreen von grub2 zu sehen (nach der Änderung). Klicken Sie auf das Image, um es zu vergrössern.
Da nur der grafische Kernel auf der SSD auf buster umgestellt wurde, blieben die Einträge für die anderen Kernel erhalten.
Da buster ja noch nicht stable ist, werden häufig updates gemacht wedrden müssen.
Es macht deshalb keine Sinn auch diese auf buster hochzuziehen., denn als stable stretch erfüllen sie ihre Aufgabe als Notfallsystem hervorragend
Aus dem Screenshot können wir zwar die Partition des Systems entnehmen, sehen aber nicht die uuid.
Hier kommen nun '----SSD----' und '----WDC----' ins Spiel.
Wenn wir den Cursor auf '----SSD----' stellen und e eingeben, bekommen wir nachfolgende Anzeige, in der wir die uuids der Partions sehen, ohne das System zu booten.

Analog für '----WDC----'

Nach Reboot neues System wieder checken ob sauber


root@i7-graf-buster-dh:~# bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
+ deborphan
libdns-export162
libunistring0
libustr-1.0-1
libcryptsetup4
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
rc  gnome-accessibility-themes                   3.22.2-2                    all                         Accessibility themes for the GNOME desktop
rc  gnome-orca                                   3.22.2-3                    all                         Scriptable screen reader
rc  libao-common                                 1.2.2-1                     amd64                       Cross Platform Audio Output Library (Common files)
rc  libatk-adaptor:amd64                         2.22.0-2                    amd64                       AT-SPI 2 toolkit bridge
rc  libdotconf0:amd64                            1.3-0.2                     amd64                       Configuration file parser library - runtime files
rc  libhttp-parser2.1:amd64                      2.1-2                       amd64                       parser for HTTP messages written in C
rc  libpisock9                                   0.12.5-dfsg-2+b3            amd64                       library for communicating with a PalmOS PDA
rc  libpython3.5-minimal:amd64                   3.5.3-1                     amd64                       Minimal subset of the Python language (version 3.5)
rc  libvcdinfo0                                  0.7.24+dfsg-0.2             amd64                       library to extract information from VideoCD
rc  libvlccore8:amd64                            2.2.7-1~deb9u1              amd64                       base library for VLC and its modules
rc  python3.5-minimal                            3.5.3-1                     amd64                       Minimal subset of the Python language (version 3.5)
rc  speech-dispatcher                            0.8.6-4+deb9u1              amd64                       Common interface to speech synthesizers
rc  xbrlapi                                      5.5-2~bpo9+1                amd64                       Access software for a blind person using a braille display - xbrlapi
+ rm /tmp/i_check.tmp
root@i7-graf-buster-dh:~# 
Mit dem neuen System sind anscheined einige Pakete überflüssig geworden.
es werden mehrere Runden install_check gedreht, bis das System sauber ist.
root@i7-graf-buster-dh:~# aptitude purge libdns-export162 libunistring0 libustr-1.0-1 
    libcryptsetup4 gnome-accessibility-themes gnome-orca libao-common libatk-adaptor:amd64 
    libdotconf0:amd64 libhttp-parser2.1:amd64 libpisock9 libpython3.5-minimal:amd64 
    libvcdinfo0 libvlccore8:amd64 python3.5-minimal  speech-dispatcher xbrlapi

Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
Die folgenden Pakete werden ENTFERNT:
  gnome-accessibility-themes{p} gnome-orca{p} libao-common{p} libatk-adaptor{p} libcryptsetup4{p} libdns-export162{p} libdotconf0{p} libhttp-parser2.1{p} libpisock9{p} libpython3.5-minimal{p} libunistring0{p} libustr-1.0-1{p} libvcdinfo0{p} libvlccore8{p} python3.5-minimal{p} speech-dispatcher{p} xbrlapi{p} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 17 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 3.828 kB frei werden.
Möchten Sie fortsetzen? [Y/n/?] y
Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 159532 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von libcryptsetup4:amd64 (2:1.7.3-4) ...
Entfernen von libdns-export162 (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Entfernen von libunistring0:amd64 (0.9.6+really0.9.3-0.1) ...
Entfernen von libustr-1.0-1:amd64 (1.0.4-6) ...
Trigger für libc-bin (2.27-1) werden verarbeitet ...
(Lese Datenbank ... 159501 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von libatk-adaptor:amd64 (2.22.0-2) ...
Löschen der Konfigurationsdateien von gnome-accessibility-themes (3.22.2-2) ...
Löschen der Konfigurationsdateien von libvcdinfo0 (0.7.24+dfsg-0.2) ...
Löschen der Konfigurationsdateien von speech-dispatcher (0.8.6-4+deb9u1) ...
Löschen der Konfigurationsdateien von xbrlapi (5.5-2~bpo9+1) ...
Löschen der Konfigurationsdateien von libvlccore8:amd64 (2.2.7-1~deb9u1) ...
Löschen der Konfigurationsdateien von libao-common (1.2.2-1) ...
Löschen der Konfigurationsdateien von python3.5-minimal (3.5.3-1) ...
Löschen der Konfigurationsdateien von libdotconf0:amd64 (1.3-0.2) ...
Löschen der Konfigurationsdateien von libpisock9 (0.12.5-dfsg-2+b3) ...
Löschen der Konfigurationsdateien von libhttp-parser2.1:amd64 (2.1-2) ...
Löschen der Konfigurationsdateien von gnome-orca (3.22.2-3) ...
Löschen der Konfigurationsdateien von libpython3.5-minimal:amd64 (3.5.3-1) ...
Trigger für systemd (237-4) werden verarbeitet ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-buster-dh:~# 

Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
Die folgenden Pakete werden ENTFERNT:
  gnome-accessibility-themes{p} gnome-orca{p} libao-common{p} libatk-adaptor{p} libcryptsetup4{p} libdns-export162{p} libdotconf0{p} libhttp-parser2.1{p} libpisock9{p} libpython3.5-minimal{p} libunistring0{p} libustr-1.0-1{p} libvcdinfo0{p} libvlccore8{p} python3.5-minimal{p} speech-dispatcher{p} xbrlapi{p} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 17 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 3.828 kB frei werden.
Möchten Sie fortsetzen? [Y/n/?] y
Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 159532 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von libcryptsetup4:amd64 (2:1.7.3-4) ...
Entfernen von libdns-export162 (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Entfernen von libunistring0:amd64 (0.9.6+really0.9.3-0.1) ...
Entfernen von libustr-1.0-1:amd64 (1.0.4-6) ...
Trigger für libc-bin (2.27-1) werden verarbeitet ...
(Lese Datenbank ... 159501 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von libatk-adaptor:amd64 (2.22.0-2) ...
Löschen der Konfigurationsdateien von gnome-accessibility-themes (3.22.2-2) ...
Löschen der Konfigurationsdateien von libvcdinfo0 (0.7.24+dfsg-0.2) ...
Löschen der Konfigurationsdateien von speech-dispatcher (0.8.6-4+deb9u1) ...
Löschen der Konfigurationsdateien von xbrlapi (5.5-2~bpo9+1) ...
Löschen der Konfigurationsdateien von libvlccore8:amd64 (2.2.7-1~deb9u1) ...
Löschen der Konfigurationsdateien von libao-common (1.2.2-1) ...
Löschen der Konfigurationsdateien von python3.5-minimal (3.5.3-1) ...
Löschen der Konfigurationsdateien von libdotconf0:amd64 (1.3-0.2) ...
Löschen der Konfigurationsdateien von libpisock9 (0.12.5-dfsg-2+b3) ...
Löschen der Konfigurationsdateien von libhttp-parser2.1:amd64 (2.1-2) ...
Löschen der Konfigurationsdateien von gnome-orca (3.22.2-3) ...
Löschen der Konfigurationsdateien von libpython3.5-minimal:amd64 (3.5.3-1) ...
Trigger für systemd (237-4) werden verarbeitet ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-buster-dh:~# 
 
root@i7-graf-buster-dh:~# bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
libisc-export160 behalten? [Ynpsiuqx?], [H]ilfe: Y
+ deborphan
libisc-export160
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
+ rm /tmp/i_check.tmp
root@i7-graf-buster-dh:~#
root@i7-graf-buster-dh:~# aptitude purge libisc-export160

Die folgenden Pakete werden ENTFERNT:
  libisc-export160{p} 
0 Pakete aktualisiert, 0 zusätzlich installiert, 1 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 617 kB frei werden.
Möchten Sie fortsetzen? [Y/n/?] y
Schreiben der erweiterten Statusinformationen...
(Lese Datenbank ... 159472 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von libisc-export160 (1:9.10.3.dfsg.P4-12.3+deb9u4) ...
Trigger für libc-bin (2.27-1) werden verarbeitet ...
Paketlisten werden gelesen...
Abhängigkeitsbaum wird aufgebaut....
Statusinformationen werden eingelesen....
Lesen der erweiterten Statusinformationen...
Initialisieren des Paketstatus'...
Schreiben der erweiterten Statusinformationen...
Erzeugen der Tag-Datenbank...
root@i7-graf-buster-dh:~# 

Weiterer install_check

root@i7-graf-buster-dh:~# bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 1 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
+ deborphan
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
+ rm /tmp/i_check.tmp
root@i7-graf-buster-dh:~# 

dist_upgrade

Da 1 paket nicht aktualisiert wurde, wird ein dist-upgrade gefahren.
Wie wir sehen werden, wird dabei ein beschädigter mysql-server entfernt.


root@i7-graf-buster-dh:~# aptitude dist-upgrade 

Die folgenden Pakete werden aktualisiert:           
  default-mysql-server{b} 
1 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 0 nicht aktualisiert.
3.484 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 1.024 B zusätzlich belegt sein.
Die folgenden Pakete haben verletzte Abhängigkeiten:
 default-mysql-server : Beschädigt: mysql-server (< 5.7) but 5.5.9999+default is installed
Die folgenden Aktionen werden diese Abhängigkeiten auflösen:

     Entfernen der folgenden Pakete:        
1)     mysql-server [5.5.9999+default (now)]



Diese Lösung akzeptieren? [Y/n/q/?] y
Die folgenden Pakete werden ENTFERNT:
  mysql-server{a} 
Die folgenden Pakete werden aktualisiert:
  default-mysql-server 
1 Pakete aktualisiert, 0 zusätzlich installiert, 1 werden entfernt und 0 nicht aktualisiert.
3.484 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 7.168 B frei werden.
Möchten Sie fortsetzen? [Y/n/?] 
Holen: 1 http://ftp.debian.org/debian buster/main amd64 default-mysql-server all 1.0.4 [3.484 B]
3.484 B wurden in 0 s heruntergeladen (35,0 kB/s) 
Changelogs werden gelesen... Fertig
(Lese Datenbank ... 159466 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von mysql-server (5.5.9999+default) ...
(Lese Datenbank ... 159464 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../default-mysql-server_1.0.4_all.deb ...
Entpacken von default-mysql-server (1.0.4) über (1.0.2) ...
default-mysql-server (1.0.4) wird eingerichtet ...
                                                    
Aktueller Status: 0 (-1) upgradable, 53058 (-1) new.
root@i7-graf-buster-dh:~# 
root@i7-graf-buster-dh:~# bin/install_check
+ aptitude clean

+ aptitude -f install

Es werden keine Pakete installiert, aktualisiert oder entfernt.
0 Pakete aktualisiert, 0 zusätzlich installiert, 0 werden entfernt und 0 nicht aktualisiert.
0 B an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 0 B zusätzlich belegt sein.
                                                    
+ debfoster
+ deborphan
+ COLUMNS=200
+ dpkg -l
+ grep -v '^ii'
+ cat /tmp/i_check.tmp
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                         Version                     Architektur                 Beschreibung
+++-============================================-===========================-===========================-=============================================================================================
+ rm /tmp/i_check.tmp
root@i7-graf-buster-dh:~# 

Ist mysql noch vorhanden

 
root@i7-graf-buster-dh:~# ps fax | grep mysql
  972 ?        Ssl    0:01 /usr/sbin/mysqld
 2115 pts/0    S+     0:00              \_ grep --color=auto mysql

Der Deamon läuft noch. sind aber die MYSQL-Module nach  dem Reboot vorhanden


root@i7-graf-buster-dh:~# dpkg -l | grep mysql
ii  dbconfig-mysql                        2.0.9                               all          dbconfig-common MySQL/MariaDB support
ii  default-mysql-client                  1.0.4                               all          MySQL database client binaries (metapackage)
ii  default-mysql-server                  1.0.4                               all          MySQL database server binaries and system database setup (metapackage)
ii  libdbd-mysql-perl                     4.046-1                             amd64        Perl5 database interface to the MariaDB/MySQL database
ii  libmysqlcppconn7v5:amd64              1.1.9-1                             amd64        MySQL Connector for C++ (library)
ii  mysql-common                          5.8+1.0.4                           all          MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-utilities                       1.6.4-1                             all          collection of scripts for managing MySQL servers
ii  mysql-workbench                       6.3.8+dfsg-1+b3                     amd64        MySQL Workbench - a visual database modeling, administration and queuing tool
ii  mysql-workbench-data                  6.3.8+dfsg-1                        all          MySQL Workbench -- architecture independent data
ii  php-mysql                             1:7.2+60                            all          MySQL module for PHP [default]
ii  php7.0-mysql                          7.0.27-1                            amd64        MySQL module for PHP
ii  php7.2-mysql                          7.2.2-1                             amd64        MySQL module for PHP
ii  python-mysql.connector                2.1.6-1                             all          pure Python implementation of MySQL Client/Server protocol
root@i7-graf-buster-dh:~# 

Das sieht doch nun ganz gut aus.

Fazit

Wenn man diese Installationsorgie sieht, bekommt man Respekt vor den Maintainern, die dabei hunderte Paket mit ihren Abhängigkeiten zu einem Upgrade bündeln.
Lohn der Mühe ist jetzt ein aktuelles System (testing), in dem natürlich auch jetzt immer wieder updates gefahren werden müssen.

Das Script install_check

Zum Abschluss das Script install_check
#!/bin/bash

#
# Systemüberprüfung
#
set -x

aptitude clean
aptitude -f install
debfoster
deborphan
COLUMNS=200 dpkg -l | grep -v ^ii >/tmp/i_check.tmp
cat /tmp/i_check.tmp
rm /tmp/i_check.tmp