• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] chroot: "/bin/bash: Datei nicht gefunden"

System: opensuse 12.3 (64Bit)
Situation:
- /dev/sda7 enthält das System mit allen nötigen Bestandteilen
- /dev/sda9 enthält identische Kopie (erstellt mit rsync -avHAX ...)
Problem:
Code:
#mount /dev/sda9 /system2
#chroot /system2
Fehlermeldung:
chroot: Befehl „/bin/bash“ konnte nicht ausgeführt werden: Datei oder Verzeichnis nicht gefunden
Analyse:
Code:
# ll /bin/bash /system2/bin/bash /usr/lib/systemd/systemd /system2/usr/lib/systemd/systemd
-rwxr-xr-x 1 root root 631704 27. Jan 2013  /bin/bash
-rwxr-xr-x 1 root root 631704 27. Jan 2013  /system2/bin/bash
-rwxr-xr-x 1 root root 937432 27. Sep 23:37 /system2/usr/lib/systemd/systemd
-rwxr-xr-x 1 root root 937432 27. Sep 23:37 /usr/lib/systemd/systemd
Was ist falsch?
Wie kann ich den Fall Analysieren?
Bisher habe ich das Verfahren des Clonings eines System immer erfolgreich anwenden können.
Was hat sich geändert?

====== Lösung =========================================================
Die Bash benötigt nicht nur die Datei /bin/bash sonder auch einige Libraries. Das erfährt man mit dem Befehlt
Code:
ldd /bin/bash
  • linux-vdso.so.1 (0x00007fffaf3ff000)
    libreadline.so.6 => /lib64/libreadline.so.6 (0x00007fb7413e3000)
    libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007fb7411b0000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007fb740fac000)
    libc.so.6 => /lib64/libc.so.6 (0x00007fb740bfe000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fb74162b000)
Hier kommt das für mich neue Verzeichnis lib64 ins Spiel. Mein Script zum Clonen des Systems hatte dieses Verzeichnis nicht berücksichtigt, denn bisher hatte ich den Rechner mit einer 32-Bit Version gefahren.
==============================================
Kaum macht man's richtig - schon funktioniert's ! :D
 
Oben