Mount Squashfs как корень в initramfs Raspbian

В настоящее время я пытаюсь сделать загрузку raspbian из образа squashFS через initramfs. Образ squashfs находится в файловой системе /dev/mmcblk0p1, поэтому я монтирую его до монтирования образа.

К сожалению, я застрял при монтировании файла образа SquashFS.

пробовал монтировать через

mount -o loop

но я всегда получаю

mounting /dev/loop0 on /mnt/root failed: No such device

Поэтому я попытался смонтировать его через цикл вручную. Проблема в том, что при монтировании /dev/loop0 возникает та же ошибка, что и выше.

Это мой инициал до сих пор:

#!/bin/busybox sh
# Mount the /proc and /sys filesystems.
mount -t proc none /proc
mount -t sysfs none /sys
#create loop devices
mknod /dev/loop0 b 7 0
mkdir /mnt/root
# Mount the boot partition
mount -o ro /dev/mmcblk0p1 /mnt/boot
sleep 5
# Mount the root FS with losetup
echo "Mounting with losetup"
losetup /dev/loop0 /mnt/boot/SYSTEM
mount /dev/loop0 /mnt/root -t squashfs
echo "Done"
#mount -o ro,loop -t squashfs /mnt/boot/SYSTEM /mnt/root

# Use Fallback mounting failed
if [ ! -e /mnt/root/home ]
then
echo "MOUNTING SDA1"
mount /dev/sda1 /mnt/root -t ext4
fi

# Clean up.
umount /proc
umount /sys
umount /mnt/boot

# Boot the real thing.
exec switch_root /mnt/root /sbin/init

Проверка

losetup /dev/loop0

говорит мне, что изображение squashfs было прикреплено к loop0.

Кто-нибудь знает, с чего начать?


person bbsan2k    schedule 16.01.2015    source источник


Ответы (1)


Я столкнулся с вашим вопросом, потому что сегодня столкнулся с тем же, создавая свои собственные initramfs. Я еще немного покопался и нашел это:

http://www.silas.net.br/doc.notes/unix/linux/busybox-troubleshooting.html

Потом до меня дошло, что я не встроил squashfs в ядро ​​и не загрузил модуль. После того, как я это сделал, все заработало!

Если нет, убедитесь, что ваше ядро ​​поддерживает squashfs.

person Todd    schedule 18.01.2015
comment
Спасибо за ответ! На самом деле я использую стандартное ядро ​​Raspbian и могу без проблем монтировать squashfs из Raspbian. Можете ли вы сказать мне (или процитировать код ;)) как вы загрузили модуль в initramfs? - person bbsan2k; 18.01.2015
comment
Неважно, мой тупой вопрос ;) Попробую завтра ;) - person bbsan2k; 18.01.2015