Еще один вариант — все делать внутри армовского чрута при помощи qemu. Я так разворачивал генту на raspberry (т.к. она слишком тормозная, чтобы непосредственно на ней компелять).
Вот таким скриптом у меня монтируются разделы "малинки":
Код
#!/bin/bash
CHRT="ROOT"
if [ $# != 1 ]; then
echo "usage: $0 /dev/sdb"
exit 1
fi
function mnt(){
mount --rbind $1 ${CHRT}$1
}
[ -f /proc/sys/fs/binfmt_misc/arm ] || echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\x
ff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-static:' > /proc/sys/fs/binfmt_misc/register
mount ${1}2 ${CHRT}
mv ${CHRT}/usr/bin/qemu-arm-static_ ${CHRT}/usr/bin/qemu-arm-static
mount ${1}1 ${CHRT}/boot
mount -o bind linux ${CHRT}/usr/src/linux
mnt /dev
mnt /sys
mount -t proc none ${CHRT}/proc
mnt /run
mount -o bind portage ${CHRT}/usr/portage
chroot ${CHRT}
И скрипт для размонтирования:
Код
#!/bin/bash
CHRT="ROOT"
mv ${CHRT}/usr/bin/qemu-arm-static ${CHRT}/usr/bin/qemu-arm-static_
umount ${CHRT}/boot
umount ${CHRT}/usr/portage/
umount ${CHRT}/usr/src/linux
umount ${CHRT}/proc
umount ${CHRT}/run
umount ${CHRT}/sys
umount ${CHRT}/dev/pts
umount ${CHRT}/dev/shm
umount ${CHRT}/dev
umount ${CHRT}
Главное - не забыть /usr/bin/qemu-arm-static, иначе на настоящем железе система не загрузится.