readelf schlägt in qemu chroot fehl, wenn absoluter Pfad verwendet wird

416
J.Hartmann

Ich versuche, Java 8 SDK in einer von qemu emulierten Chroot-Umgebung zu installieren, und ich bin gegen den folgenden Fehler gestoßen

readelf: Error: /proc/self/exe: Failed to read file's magic number 

Readelf funktioniert, wenn der Pfad nicht absolut ist. Im Folgenden wird der richtige Header ausgegeben.

cd / && readelf -h proc/self/exe 

Folgendes tut es nicht

readelf -h /proc/self/exe 

Anregungen oder fortgesetzte Debugging-Tipps? Danke im Voraus!

0

1 Antwort auf die Frage

0
RalfFriedl

Versuchen

ls -l proc/self/exe /proc/self/exe 

und sehen, ob es einen Unterschied gibt.

Warum solltest du sogar die Kopfzeile readelfin der Chroot zeigen?

/ Proc / self / exe ist mit / bin / ls verknüpft. Warum folgt readelf nicht diesem Symlink? Warum ist die Verwendung des absoluten Pfads wichtig? Zu dieser zweiten Frage wird sie bei der Installation von oracle-java8-installer im Prozess zur Konfiguration vorkonfigurierender Pakete aufgerufen. Ich vermute, es ist für Systeminformationen? J.Hartmann vor 6 Jahren 0
Es muss ein Problem mit der von qemu emulierten chrootierten Umgebung sein, in einer normalen chroot arbeiten beide. Auch die Nachricht sagt nicht "No solea file". Offenbar ist es erfolgreich, aber Lesen nicht. Versuchen Sie `strace readelf -h / proc / self / exe` RalfFriedl vor 6 Jahren 0
Die Ausgabe von strace sagt alles! `qemu: Nicht unterstützter Syscall: 26`. Vielen Dank für deine Hilfe! J.Hartmann vor 6 Jahren 0