[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Upgrade naar Jessie faalt



Geachte dames en heren,

Ik dank Geert Stappers en Paul van der Vlis voor hun reacties. In de loop der dingen heb ik pas later kennis genomen van deze reacties en daarom zullen die reacties pas verderop in dit verslag aan de orde komen.

Paragraaf 5.6.2 van de Release Notes stelt dat verouderde init-scripts geheel verwijderd zouden moeten worden. De paragraaf verwijst naar paragraaf 4.8.1. Een lijst met verwijderde pakketten waarvan nog configuratiebestanden op het systeem kunnen staan wordt als volgt verkregen:

root@desktop-computer:~# dpkg -l | awk '/^rc/ {print $2}'
[lijst met 130 pakketten, bijna allemaal behorend tot arch:i386]
root@desktop-computer:~#

Er is ook nog paragraaf 5.6.3 die een onderzoekje aanbeveelt naar lokaal aangepaste init-scripts:

root@desktop-computer:~# debsums -c -e | grep ^/etc/init.d
debsums: missing file /etc/gdm3/greeter.gsettings (from gdm3 package)
root@desktop-computer:~#

Uit dit onderzoekje volgt naar mijn mening dat paragraaf 5.6.3 verder buiten beschouwing kan worden gelaten, maar laat wel zien dat pakket gdm3 niet compleet is. gdm3 is de Gnome display manager.

Ik stel nog een algemeen onderzoek in naar de integriteit van de aanwezige pakketten.
1. Hebben alle pakketten hun md5 checksums?

root@desktop-computer:~# debsums -l
root@desktop-computer:~#

Alle pakketten hebben dus hun md5 checksums.
2. Zijn alle pakketten integer, afgezien van hun (eventueel gewijzigde) configuratiebestanden?

root@desktop-computer:~# debsums -s
[debsums noemt 49 files die ontbreken in het pakket gnome-media-common]
root@desktop-computer:~#

Alle pakketten zijn dus integer, behalve gnome-media-common.
3. Welke pakketten hebben configuratiebestanden die afwijken van wat standaard is?

root@desktop-computer:~# debsums -se
debsums: changed file /etc/default/cups (from cups package)
debsums: missing file /etc/gdm3/greeter.gsettings (from gdm3 package)
debsums: changed file /etc/NetworkManager/NetworkManager.conf (from network-manager package) debsums: changed file /etc/apt/apt.conf.d/10periodic (from update-notifier-common package)
root@desktop-computer:~#

Inspectie van /etc/default/cups: cups herinstalleren
File ontbreekt: gdm3 herinstalleren
Inspectie van /etc/NetworkManager/NetworkManager.conf: network-manager herinstalleren
Inspectie van /etc/apt/apt.conf.d/10periodic: handhaven

Op dit punt aangekomen neem ik kennis van de reacties van Geert en Paul. Geert komt met de volgende tip:

echo -e '#!/bin/sh\nexit 0' > /var/lib/dpkg/info/grub-pc.postinst
apt-get --reinstall install grub-pc

De eerste regel vervangt de inhoud van grub-pc.postinst in een script dat eigenlijk alleen exit 0 bevat. Het is een paardenmiddel om met succes door het post-installatiescript heen te komen. De inhoud van het post-installatiescript is er echter natuurlijk niet voor niets. Ik ga dat script eerst doonemen, waarbij het gaat om welke taken dat script verzorgt en waarop de exit-code 64 slaat. De tweede regel installeert daarna grub-pc met de optie reinstall.

Geert baseerde zijn tip op mijn bericht van 14 juni 2016. Daarin komt inderdaad voor:

dpkg: fout bij verwerken van pakket grub-pc (--configure):
subproces post-installation script geïnstalleerd gaf een foutwaarde 64 terug

Hierdoor staat de mogelijke effektiviteit van de tip buiten kijf.

Ik verwijder nu eerst de verouderde init-scripts, conform paragraaf 4.8.1. Ik verwijder ook de pakketten die automatisch zijn geïnstalleerd en niet langer nodig zouden zijn, behalve firefox-esr-l10n-nl, gnome-font-viewer en gnome-tweak-tool. Vervolgens installeer ik de pakketten de niet in orde waren of twijfelachtig waren opnieuw:

root@desktop-computer:~# apt-get --reinstall install gdm3 gnome-media-common cups network-manager

Daarbij krijg ik echter de mededeling: "Herinstalleren van gnome-media-common is niet mogelijk omdat het niet opgehaald kan worden." Daarom laat ik na uitvoering van het bovenstaande commando gnome-media-common helemaal verwijderen:

root@desktop-computer:~# apt-get purge gnome-media-common
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd
De statusinformatie wordt gelezen... Klaar
De volgende pakketten zullen VERWIJDERD worden:
  gnome-media-common*
0 opgewaardeerd, 0 nieuw geïnstalleerd, 1 te verwijderen en 5 niet opgewaardeerd.
4 niet volledig geïnstalleerd of verwijderd.
Na deze bewerking zal er 7942 kB schijfruimte vrijkomen.
Wilt u doorgaan? [J/n] J
(Database wordt ingelezen ... 211821 bestanden en mappen momenteel geïnstalleerd.)
gnome-media-common (2.30.0-1) wordt verwijderd ...
Bezig met afhandelen van triggers voor hicolor-icon-theme (0.13-1) ...
Bezig met afhandelen van triggers voor gconf2 (3.2.6-3) ...
Instellen van linux-image-3.16.0-4-amd64 (3.16.7-ckt25-2) ...
vmlinuz(/boot/vmlinuz-3.16.0-4-amd64
) points to /boot/vmlinuz-3.16.0-4-amd64
(/boot/vmlinuz-3.16.0-4-amd64) -- doing nothing at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 263.
initrd.img(/boot/initrd.img-3.16.0-4-amd64
) points to /boot/initrd.img-3.16.0-4-amd64
(/boot/initrd.img-3.16.0-4-amd64) -- doing nothing at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 263.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-3.16.0-4-amd64
/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
cat: /video.lst: Bestand of map bestaat niet
/usr/sbin/grub-probe: fout: kan canoniek pad van '' niet achterhalen.
Geen pad of apparaat gegeven.
Gebruik:  grub-probe [OPTIE...] [OPTIE...] [PAD|APPARAAT]
Typ 'grub-probe --help' of 'grub-probe --usage' voor meer informatie.
run-parts: /etc/kernel/postinst.d/zz-update-grub exited with return code 64 Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 634. dpkg: fout bij verwerken van pakket linux-image-3.16.0-4-amd64 (--configure): subproces post-installation script geïnstalleerd gaf een foutwaarde 1 terug
Instellen van grub-pc (2.02~beta2-22+deb8u1) ...
Installing for i386-pc platform.
Installatie is afgerond. Er werden geen fouten gerapporteerd.
Generating grub configuration file ...
cat: /video.lst: Bestand of map bestaat niet
/usr/sbin/grub-probe: fout: kan canoniek pad van '' niet achterhalen.
Geen pad of apparaat gegeven.
Gebruik:  grub-probe [OPTIE...] [OPTIE...] [PAD|APPARAAT]
Typ 'grub-probe --help' of 'grub-probe --usage' voor meer informatie.
dpkg: fout bij verwerken van pakket grub-pc (--configure):
subproces post-installation script geïnstalleerd gaf een foutwaarde 64 terug dpkg: vereistenproblemen verhinderen de configuratie van linux-image-amd64:
 linux-image-amd64 is afhankelijk van linux-image-3.16.0-4-amd64; maar:
  Pakket linux-image-3.16.0-4-amd64 is nog niet geconfigureerd.

dpkg: fout bij verwerken van pakket linux-image-amd64 (--configure):
 vereistenproblemen - blijft ongeconfigureerd
dpkg: vereistenproblemen verhinderen de configuratie van startupmanager:
 startupmanager is afhankelijk van grub | grub-pc; maar:
  Pakket grub is niet geïnstalleerd.
  Pakket grub-pc is nog niet geconfigureerd.

dpkg: fout bij verwerken van pakket startupmanager (--configure):
 vereistenproblemen - blijft ongeconfigureerd
Fouten gevonden tijdens verwerken van:
 linux-image-3.16.0-4-amd64
 grub-pc
 linux-image-amd64
 startupmanager
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@desktop-computer:~#

De grote schoonmaak heeft dus geen enkel effekt gehad op de problematiek.

Ik heb vervolgens linux-image-3.16.0-4-amd64.postinst, grub-pc.postinst en zz-update-grub bestudeerd, maar ik kan niet begrijpen hoe laatstgenoemde de code 64 kan retourneren.

Ik heb daarna de tip van Geert uitvoerd. Het leek mij daarbij wel beter om als tweede commando apt-get install startupmanager te kiezen, zodat grub-pc niet opnieuw opgehaald wordt uit een repository en gebruikt wordt om de cache te vernieuwen. Ik nam echter de proef op de som:

root@desktop-computer:~# echo -e '#!/bin/sh\nexit 0' > /var/lib/dpkg/info/grub-pc.postinst
root@desktop-computer:~# apt-get --reinstall install grub-pc
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd
De statusinformatie wordt gelezen... Klaar
0 opgewaardeerd, 0 nieuw geïnstalleerd, 1 opnieuw geïnstalleerd, 0 te verwijderen en 7 niet opgewaardeerd.
4 niet volledig geïnstalleerd of verwijderd.
Na deze bewerking zal er 0 B extra schijfruimte gebruikt worden.
E: Internal Error, No file name for grub-pc:amd64
root@desktop-computer:~#

Dit was heel vreemd. Ik vroeg mij af of er misschien een pakket grub-pc:i386 is die de bestanden van grub-pc:amd64 heeft overschreven. Onderzoek op mijn andere computer leerde echter dat grub-pc:i386 daar niet is geïnstalleerd als gevolg van multiarch. Ik probeerde daarna nog:

root@desktop-computer:~# echo -e '#!/bin/sh\nexit 0' > /var/lib/dpkg/info/grub-pc.postinst
root@desktop-computer:~# apt-get install startupmanager
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd
De statusinformatie wordt gelezen... Klaar
startupmanager is reeds de nieuwste versie.
0 opgewaardeerd, 0 nieuw geïnstalleerd, 0 te verwijderen en 7 niet opgewaardeerd.
4 niet volledig geïnstalleerd of verwijderd.
Na deze bewerking zal er 0 B extra schijfruimte gebruikt worden.
Wilt u doorgaan? [J/n] J
Instellen van linux-image-3.16.0-4-amd64 (3.16.7-ckt25-2) ...
vmlinuz(/boot/vmlinuz-3.16.0-4-amd64
) points to /boot/vmlinuz-3.16.0-4-amd64
(/boot/vmlinuz-3.16.0-4-amd64) -- doing nothing at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 263.
initrd.img(/boot/initrd.img-3.16.0-4-amd64
) points to /boot/initrd.img-3.16.0-4-amd64
(/boot/initrd.img-3.16.0-4-amd64) -- doing nothing at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 263.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-3.16.0-4-amd64
/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
cat: /video.lst: Bestand of map bestaat niet
/usr/sbin/grub-probe: fout: kan canoniek pad van '' niet achterhalen.
Geen pad of apparaat gegeven.
Gebruik:  grub-probe [OPTIE...] [OPTIE...] [PAD|APPARAAT]
Typ 'grub-probe --help' of 'grub-probe --usage' voor meer informatie.
run-parts: /etc/kernel/postinst.d/zz-update-grub exited with return code 64 Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-3.16.0-4-amd64.postinst line 634. dpkg: fout bij verwerken van pakket linux-image-3.16.0-4-amd64 (--configure): subproces post-installation script geïnstalleerd gaf een foutwaarde 1 terug
Instellen van grub-pc (2.02~beta2-22+deb8u1) ...
dpkg: vereistenproblemen verhinderen de configuratie van linux-image-amd64:
 linux-image-amd64 is afhankelijk van linux-image-3.16.0-4-amd64; maar:
  Pakket linux-image-3.16.0-4-amd64 is nog niet geconfigureerd.

dpkg: fout bij verwerken van pakket linux-image-amd64 (--configure):
 vereistenproblemen - blijft ongeconfigureerd
Instellen van startupmanager (1.9.13-8) ...
Bezig met afhandelen van triggers voor menu (2.1.47) ...
Fouten gevonden tijdens verwerken van:
 linux-image-3.16.0-4-amd64
 linux-image-amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@desktop-computer:~#

De problematiek lijkt nu in omvang te zijn afgenomen. Het ligt nu voor de hand om die andere twee scripts op dezelfde manier aan te pakken, maar het lijkt me beter eerst het bovenstaande te delen en nieuw advies te vragen.

Met vriendelijke groet,

Maarten.


Reply to: