ubuntuusers.de

Kernelupdate ignoriert Kernelparameter "forcepae" --> Fehler

Status: Gelöst | Ubuntu-Version: Ubuntu MATE 16.04 (Xenial Xerus)
Antworten |

TausB

Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

Hallo,

ich habe seit geraumer Zeit ein Problem beim Kernelupdate. Fehlermeldung:

Vorbereitung zum Entpacken von .../linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb ...
This kernel does not support a non-PAE CPU.
dpkg: Fehler beim Bearbeiten des Archivs /var/cache/apt/archives/linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb (--unpack):
 Unterprozess neues pre-installation-Skript gab den Fehlerwert 1 zurück
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-18-generic /boot/vmlinuz-4.4.0-18-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-18-generic /boot/vmlinuz-4.4.0-18-generic
Fehler traten auf beim Bearbeiten von:
 /var/cache/apt/archives/linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Aber:

  • Mein Dell D600 ist PAE-fähig

  • 16.04 lies sich installieren und läuft (mit Kernelparameter forcepae)

  • Die /etc/default/grub enthält die Zeilen:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash forcepae"
    GRUB_CMDLINE_LINUX="forcepae"

Wie bekomme ich nun den/die neuen Kernel installiert? Der letzte installierbare Kernel war der "4.4.0-15".

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

TausB schrieb:

Mein Dell D600 ist PAE-fähig

Keine Notebook-Serie, die CPU ist gefragt. Im Dell Latitude D600 sind verschiedene Pentium M verbaut worden, ohne und mit XD-bit, damit non-PAE und PAE. Also welchen Pentium M hast Du exakt?

Wenn es ein Pentium M mit PAE sein sollte, wie Du vorgibst und was offensichtlich nicht der Fall ist, brauchte man kein forcepae setzen oder andere bekannte Tricks anwenden.

Ich habe eben Xenial-Kernel 4.4.0-18.34 auf einem Banias (also dem ersten Pentium M, sprich non-PAE) mit Bootoption forcepae installiert - völlig problemlos.

  • Die /etc/default/grub enthält die Zeilen:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash forcepae"
    GRUB_CMDLINE_LINUX="forcepae"

Aktualisiere grub

1
sudo update-grub && sudo reboot

und wiederhole

1
sudo apt-get update && sudo apt-get -f install && sudo apt-get dist-upgrade

TausB

(Themenstarter)
Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

axt schrieb:

TausB schrieb:

Mein Dell D600 ist PAE-fähig

Keine Notebook-Serie, die CPU ist gefragt.

Es ist ein Laptop.

Im Dell Latitude D600 sind verschiedene Pentium M verbaut worden, ohne und mit XD-bit, damit non-PAE und PAE. Also welchen Pentium M hast Du exakt?

cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 9
model name	: Intel(R) Pentium(R) M processor 1700MHz
stepping	: 5
microcode	: 0x7
cpu MHz		: 600.000
cache size	: 1024 KB
physical id	: 0
siblings	: 1
core id		: 0
cpu cores	: 1
apicid		: 0
initial apicid	: 0
fdiv_bug	: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 tm pbe bts est tm2
bugs		:
bogomips	: 1198.89
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 32 bits virtual
power management:

EDIT

sudo lshw | more
d600                      
    Beschreibung: Computer
    Breite: 32 bits
    Fähigkeiten: smbios-2.3
  *-core
       Beschreibung: Motherboard
       Physische ID: 0
     *-memory
          Beschreibung: Systemspeicher
          Physische ID: 0
          Größe: 2013MiB
     *-cpu
          Produkt: Intel(R) Pentium(R) M processor 1700MHz
          Hersteller: Intel Corp.
          Physische ID: 1
          Bus-Informationen: cpu@0
          Version: 6.9.5
          Größe: 1700MHz
          Kapazität: 1700MHz
          Breite: 32 bits
          Fähigkeiten: fpu fpu_exception wp vme de pse tsc msr mce cx8 sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 tm p
be bts est tm2 cpufreq

/EDIT

uname -a
Linux D600 4.4.0-15-generic #31-Ubuntu SMP Fri Mar 18 19:06:37 UTC 2016 i686 i686 i686 GNU/Linux

Wenn es ein Pentium M mit PAE sein sollte, wie Du vorgibst und was offensichtlich nicht der Fall ist,...

Starke Worte!
Ich gebe nichts vor. 14.04.x läuft mit forcepae. Die Installation von 16.04 hat auch völlig problemlos funktioniert(!) - Nur das Update auf den neueren Kernel will eben nicht.

Ich habe eben Xenial-Kernel 4.4.0-18.34 auf einem Banias (also dem ersten Pentium M, sprich non-PAE) mit Bootoption forcepae installiert - völlig problemlos.

Siehe oben: Installation war/ist kein Problem gewesen; erst das Update auf den neuen Kernel bringt die Fehlermeldung (unter laufendem 16.04). Da ich die 16.04 bereits länger laufen hatte, bin ich mir sicher, dass sich die älteren Kernelupdates (so wie unter 14.04) ohne Probleme installieren ließen.

  • Die /etc/default/grub enthält die Zeilen:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash forcepae"
    GRUB_CMDLINE_LINUX="forcepae"

Aktualisiere grub

1
sudo update-grub && sudo reboot

Hatte ich exakt so ausgeführt. Der entsprechende Kernelparameter ist auch in der grub.cfg zu finden. (Oder beim editieren des Grubmenü.)

und wiederhole

1
sudo apt-get update && sudo apt-get -f install && sudo apt-get dist-upgrade

Hatte ich auch so ausgeführt, aber zu Sicherheit gerade noch einmal:

sudo apt-get update && sudo apt-get -f install && sudo apt-get dist-upgrade
[sudo] Passwort für ***: 
Holen:1 http://de.archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
OK:2 http://de.archive.ubuntu.com/ubuntu xenial-updates InRelease                  
OK:3 http://de.archive.ubuntu.com/ubuntu xenial-backports InRelease
OK:4 http://security.ubuntu.com/ubuntu xenial-security InRelease
Holen:5 http://de.archive.ubuntu.com/ubuntu xenial/main Sources [865 kB]
Holen:6 http://de.archive.ubuntu.com/ubuntu xenial/restricted Sources [5.040 B]
Holen:7 http://de.archive.ubuntu.com/ubuntu xenial/universe Sources [7.761 kB]
Holen:8 http://de.archive.ubuntu.com/ubuntu xenial/multiverse Sources [182 kB]       
Holen:9 http://de.archive.ubuntu.com/ubuntu xenial/main i386 Packages [1.179 kB]
Holen:10 http://de.archive.ubuntu.com/ubuntu xenial/main Translation-en [562 kB]
Holen:11 http://de.archive.ubuntu.com/ubuntu xenial/restricted i386 Packages [8.684 B]
Holen:12 http://de.archive.ubuntu.com/ubuntu xenial/restricted Translation-en [2.908 B]
Holen:13 http://de.archive.ubuntu.com/ubuntu xenial/universe i386 Packages [7.523 kB]
Holen:14 http://de.archive.ubuntu.com/ubuntu xenial/universe Translation-en [4.362 kB]
Holen:15 http://de.archive.ubuntu.com/ubuntu xenial/multiverse i386 Packages [143 kB]
Holen:16 http://de.archive.ubuntu.com/ubuntu xenial/multiverse Translation-en [107 kB]
Es wurden 22,9 MB in 12 s geholt (1.840 kB/s).                                                                                     
Paketlisten werden gelesen... Fertig
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Abhängigkeiten werden korrigiert ... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  linux-headers-4.4.0-16 linux-headers-4.4.0-16-generic
Verwenden Sie »sudo apt autoremove«, um sie zu entfernen.
The following additional packages will be installed:
  linux-image-4.4.0-18-generic
Vorgeschlagene Pakete:
  fdutils linux-doc-4.4.0 | linux-source-4.4.0 linux-tools
Die folgenden NEUEN Pakete werden installiert:
  linux-image-4.4.0-18-generic
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 332 nicht aktualisiert.
8 nicht vollständig installiert oder entfernt.
Es müssen noch 0 B von 17,3 MB an Archiven heruntergeladen werden.
Nach dieser Operation werden 39,7 MB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] j
(Lese Datenbank ... 320378 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb ...
This kernel does not support a non-PAE CPU.
dpkg: Fehler beim Bearbeiten des Archivs /var/cache/apt/archives/linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb (--unpack):
 Unterprozess neues pre-installation-Skript gab den Fehlerwert 1 zurück
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-18-generic /boot/vmlinuz-4.4.0-18-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-18-generic /boot/vmlinuz-4.4.0-18-generic
Fehler traten auf beim Bearbeiten von:
 /var/cache/apt/archives/linux-image-4.4.0-18-generic_4.4.0-18.34_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

mrkramps Team-Icon

Avatar von mrkramps

Anmeldungsdatum:
10. Oktober 2006

Beiträge: 5523

Wohnort: south central EL

Es gibt bereits einige Bug Reports zu diesem Fehlerbild, die sich zwar auf Kernel 4.2 beziehen, aber möglicherweise gleiche Ursache haben:

TausB

(Themenstarter)
Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

Ja das scheint das gleiche Problem zu sein. Ich habe mir mal das preinst-Skript in der Kernel-deb angeguckt, da gibt es:

$arch = `uname -i`;
if ($arch =~ m/86/) {
	system ("grep -q ' pae ' /proc/cpuinfo");
	if ($?) {
			print STDERR "This kernel does not support a non-PAE CPU.\n";
			exit 1;
	}
}

Da die cpuinfo kein pae ausweist, ist die Überprüfung mangelhaft (es fehlt die forcepae-Abfrage) - es kommt zum Fehler.

Der Workaround:

     cat /proc/cpuinfo | sed 's/flags\t*:/& pae/' > /tmp/cpuinfo_pae
      sudo mount -o bind /tmp/cpuinfo_pae /proc/cpuinfo
      sudo mount -o remount,ro,bind /proc/cpuinfo

setzt genau dort an und ergänzt (temporär) das fehlende pae-Attribut.

Hmm - evtl. ist der Bug bis zur final gelöst, bzw. beim nächsten Kernelpaket.

EDIT
Der Workaround hat auch bei mir (wie erwartet) funktioniert. @mrkramps danke für den Tipp! 👍

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

TausB schrieb:

axt schrieb:

TausB schrieb:

Mein Dell D600 ist PAE-fähig

Keine Notebook-Serie, die CPU ist gefragt.

Es ist ein Laptop.

Ja und? Ein Notebook ist ein Laptop (fast, den Begriff Laptop soll Toshiba eingeführt haben). Gefragt bei solchen Problemen ist eben keine Notebook-Serie wie eben Dell Latitude D600 mit unterschiedlichen Modellen (ich habe mir das Datenblatt gezogen), sondern logischerweise die CPU.

Wenn es ein Pentium M mit PAE sein sollte, wie Du vorgibst und was offensichtlich nicht der Fall ist,...

Starke Worte!

Vielleicht liest Du Dir Aussagen richtig durch und denkst auch mal nach. Links werden auch nicht aus Langeweile gegeben.

Ich gebe nichts vor. 14.04.x läuft mit forcepae.

Du brauchst ausgerechnet mir nichts über non-PAE erzählen (wenn Du vor dem Starten dieses Threads gesucht hättest, wüßtest Du das, ebenso mögliche Lösungen), also nichts über entsprechende Pentium M und deren Celeron-M-Pendants, über PAE-Abfragen im Kernel-Image (und wie man sie entfernt), nichts über die Bootoption forcepae und nichts über fake-pae (das ist nichts anderes als der verlinkte Workaround, nur zwei Jahre früher erschienen und einfacher handhabbar)

Nur das Update auf den neueren Kernel will eben nicht.

Es funktioniert einwandfrei. Auf Deinem System gibt es den Fehler. Das Hinzuschummeln einer pae-Ausgabe, wie Du sie durchgeführt hast, ist natürlich möglich, aber hilft Dir nur jetzt. Du müßtest sie bei jedem Kernel-Update vorher setzen. Genau deshalb solltest Du den Fehler in Deinem System suchen (und wenn forcepae gesetzt ist, aber ignoriert wird, solltest Du update-grub durchführen) und nicht jemandem, der weiß, wovon er spricht, Zeug erzählen wollen.


mrkramps schrieb:

Es gibt bereits einige Bug Reports zu diesem Fehlerbild,

Ja, das sind aber alles User, die bestehende Informationen nicht beachtet haben. Somit keine berechtigten Bugreports.

TausB

(Themenstarter)
Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

axt schrieb:

TausB schrieb:

Wenn es ein Pentium M mit PAE sein sollte, wie Du vorgibst und was offensichtlich nicht der Fall ist,...

Starke Worte!

Vielleicht liest Du Dir Aussagen richtig durch und denkst auch mal nach. Links werden auch nicht aus Langeweile gegeben.

Ich gebe nichts vor. 14.04.x läuft mit forcepae.

Du brauchst ausgerechnet mir nichts über non-PAE erzählen (wenn Du vor dem Starten dieses Threads gesucht hättest, wüßtest Du das, ebenso mögliche Lösungen), also nichts über entsprechende Pentium M und deren Celeron-M-Pendants, über PAE-Abfragen im Kernel-Image (und wie man sie entfernt), nichts über die Bootoption forcepae und nichts über fake-pae (das ist nichts anderes als der verlinkte Workaround, nur zwei Jahre früher erschienen und einfacher handhabbar)

Nur das Update auf den neueren Kernel will eben nicht.

Es funktioniert einwandfrei. Auf Deinem System gibt es den Fehler. Das Hinzuschummeln einer pae-Ausgabe, wie Du sie durchgeführt hast, ist natürlich möglich, aber hilft Dir nur jetzt. Du müßtest sie bei jedem Kernel-Update vorher setzen. Genau deshalb solltest Du den Fehler in Deinem System suchen (und wenn forcepae gesetzt ist, aber ignoriert wird, solltest Du update-grub durchführen)

Liest Du auch meine Antworten? Ich hatte ein "sudo update-grub" ausgeführt und sogar die grub.cfg kontrolliert!

und nicht jemandem, der weiß, wovon er spricht, Zeug erzählen wollen.


mrkramps schrieb:

Es gibt bereits einige Bug Reports zu diesem Fehlerbild,

Ja, das sind aber alles User, die bestehende Informationen nicht beachtet haben. Somit keine berechtigten Bugreports.

Wow - es ist nett, dass Du Dir noch einmal Zeit für diesen Thread genommen hast.
Dieser Laptop ist seit Jahren im Einsatz, überwiegend war er es mit 12.02, testweise mit 15.xy und nun testweise mit 16.04. Bisher funktionierte immer eine Installation mit forcepae. Nach Anpassung der /etc/default/grub starteten die Systeme immer. (Kernel)updates liefen bis zur 15.xy - genauer bis zum Kernel 4.4.0-15 von 16.04 - immer ohne Probleme durch - immer(!). Erst danach hatte ich Probleme - nie vorher. Da liegt doch die Vermutung Nahe, dass sich bei den Installationsskripten irgend etwas verändert hat.

(Ich hatte mich 2012 intensiv mit dem Thema pae beschäftigt. Ein "cat /proc/cpuinfo" hat mir dabei zu keinem Zeitpunkt das Flag pae angezeigt. - Die damaligen Recherchen ergaben, dass das beim Pentium M eben nicht sicher erkannt wird und deswegen der Schalter forcepae zu setzen ist. Was ja auch immer tadellos funktioniert hat.)

PS: Ich habe mir wirklich Mühe gegeben das Fehlerbild genau zu beschreiben, Forensyntax zu nutzen und Informationen zu liefern. Und obwohl mir Dein Name hier im Forum oft hilfreich und positiv auffällt, empfand ich Deine Wortwahl unangebracht harsch. Auch hatte ich nicht das Gefühl, dass Du meinen Text aufmerksam gelesen hast; Beispiel:

Aktualisiere grub

sudo update-grub && sudo reboot

Hatte ich exakt so ausgeführt. Der entsprechende Kernelparameter ist auch in der grub.cfg zu finden. (Oder beim editieren des Grubmenü.)

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

TausB schrieb:

(Ich hatte mich 2012 intensiv mit dem Thema pae beschäftigt. Ein "cat /proc/cpuinfo" hat mir dabei zu keinem Zeitpunkt das Flag pae angezeigt.

Meine Güte, das mußt Du mir alles nicht erzählen. Banias und Dothan FSB 400 liefern das Flag nun mal nicht, das ist von Anfang an bekannt (das und den technischen Hintergrund habe ich schon 2003 in c't gelesen, nur ist der Fakt damals nicht nachteilig gewesen). Deswegen gibt's ja die Tricks.

Aktualisiere grub

sudo update-grub && sudo reboot

Hatte ich exakt so ausgeführt.

Und weshalb funktioniert's dann nicht? Bei Dir, wohlgemerkt.

Kannst es gleich nochmal ausprobieren. 4.4.0-19.35 liegt in proposed und 4.4.0-20.36 im Kernel-PPA.

Nachtrag: 4.4.0-20.36 jetzt auch in proposed.

TausB

(Themenstarter)
Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

axt schrieb:

TausB schrieb:

Aktualisiere grub

sudo update-grub && sudo reboot

Hatte ich exakt so ausgeführt.

Und weshalb funktioniert's dann nicht? Bei Dir, wohlgemerkt.

Das weiß ich eben nicht, daher dieser Thread ... 😉

Kannst es gleich nochmal ausprobieren. 4.4.0-19.35 liegt in proposed und 4.4.0-20.36 im Kernel-PPA.

Nachtrag: 4.4.0-20.36 jetzt auch in proposed.

Da warte ich noch ein paar Tage und werden dann berichten.

TausB

(Themenstarter)
Avatar von TausB

Anmeldungsdatum:
26. November 2009

Beiträge: 1570

Wohnort: Terra incognita

Die Aktualisierung auf "4.4.0-21-generic #37" verlief so problemlos wie "früher". 👍
(Ich vermute [daher] immer noch, dass das "preinst-Skript" im Kernel-Paket fehlerhaft war - habe es allerdings nicht geprüft.)

Antworten |