Hallo Maarten, Wat zegt: grub-install --recheck /dev/sda
Met vriendelijke groet, Paul van der Vlis. Op 19-06-16 om 15:20 schreef [email protected]: > 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. > -- Paul van der Vlis Linux systeembeheer Groningen https://www.vandervlis.nl/
