Ich konnte die Kernel-Binärdatei nicht an der Standardposition in finden /boot
. Ich habe auch das gesamte Dateisystem nach vmlinux
oder durchsuchtbzimage
find / -iname vmlin*
find / -iname bzimage
Dies ist jedoch ein eingebettetes Gerät, kein Standarddesktop. Ist es möglich, dass sich die Kernel-Binärdatei an einem anderen Speicherort befindet, der nicht gemountet ist?
Beispiel:
/
ist auf der SD-Karte gemountet und der Kernel ist auf Flash geschrieben?
Wenn nicht, welche Optionen gibt es zum Auffinden der Kernel-Binärdatei?
kernel
boot
linux-kernel
embedded
TheMeaningfulEngineer
quelle
quelle
Antworten:
/boot
ist der Standardspeicherort für den Kernel in Desktop- / Server-Distributionen, eingebettete Systeme variieren jedoch stark. Wo der Kernel vollständig gespeichert ist, hängt von Ihrem Bootloader ab und ist möglicherweise keine Datei, da eingebettete Bootloader häufig nicht in der Lage sind, Linux-Dateisysteme zu lesen.Zum Beispiel mit U-Boot (ein beliebter Embedded Bootloader), Sie erstellen ein Bild
mkimage
, das dann sein kann auf eine separate FAT - Partition geschrieben oder geschrieben in einem anderen systemspezifischen Format. Wenn sich das Kernel-Image auf einer FAT-Partition befindet, wird diese Partition häufig nicht unter Linux bereitgestellt, da Linux nie darauf zugreifen muss (außer bei Upgrades, aber die meisten eingebetteten Systeme aktualisieren ihren Kernel nicht separat vom Bootloader).Das Ergebnis ist, dass Sie danach suchen müssen. Wenn Sie Hilfe benötigen, müssen Sie Ihr System sehr genau beschreiben, und selbst dann können wir möglicherweise helfen, je nachdem, wie beliebt Ihr eingebettetes System ist. Wenn Sie es selbst nicht finden können, sollten Sie die Anbieter des eingebetteten Systems um Unterstützung bitten.
quelle
Wenn Ihr eingebettetes Gerät U-Boot verwendet, wird das Kernel-Image möglicherweise auf einer bestimmten Partition in einem NAND-Flash geschrieben. Sehen Sie das ! Wenn dies der Fall ist, können Sie die Binärdatei finden, indem Sie sich Ihren U-Boot-Quellcode ansehen, wenn Sie Zugriff darauf haben. Sie können die Umgebungsvariable auch auf Hinweise überprüfen. Dies hängt stark von Ihrem System ab, sodass ich keine genauen Angaben machen kann.
quelle
Ja. Es wird möglich sein, den Kernel auf einer anderen Partition zu haben
Um den Kernel-Speicherort zu finden,
quelle