Estaba siguiendo las instrucciones de este tutorial CÓMO: Purgar y reinstalar Grub 2 del Live CD , cuando encontré un error en el paso 1, cuando inicié el comando
sudo chroot /mnt/temp
El error fue el siguiente:
chroot: failed to run command `/bin/bash': Exec format error
De donde viene eso? ¿Cómo paso?
Tuve el mismo problema al hacer una imagen para el arco armhf. Tuve que instalar
qemu-user-static
y luego copiarlo a la carpeta chroot bin.fuente
El error significa que su jail (
/mnt/temp
) no contiene un shell bash, o no contiene las bibliotecas necesarias para ejecutar el shell bash.Si creaste tu cárcel usando algo como esto:
Probablemente quisiste hacer esto en su lugar:
Sin embargo, como respuesta técnica a su problema, intente:
Esto debería permitirle hacer un chroot con éxito, en ese momento puede hacer otras cosas.
Sin embargo, hay alrededor de un millón de cosas mal en hacer eso, y casi con certeza no quieres hacer eso. Use minbase cuando cree su cárcel, o instale ubuntu en un objetivo en blanco (por ejemplo, una máquina virtual) y cree un archivo tar de todo el sistema en el que luego lo descomprima
/mnt/temp
.fuente
De hecho, esta es una incompatibilidad de 64 bits y 32 bits.
Aunque con
(copia exec de 32 bits a la nueva raíz en el
tmp
directoriochroot
está bien, todos los comandos aún fallan. Tendrías que copiarlos por todas partes.fuente
En mi caso, estaba tratando de convertirme en una versión de Linux de 64 bits, pero mi Linux actual era de 32 bits.
Había montado una imagen de disco (imagen maestra, para replicar en varias máquinas).
fuente
Creo que es un ERROR.
`/ bin / bash '
pero no
'bin / bash'
fuente