2015-01-16 7 views
0

저는 현재 raspbian 부트를 initramfs를 통해 squashFS 이미지로 만들려고합니다. 스쿼시 이미지는/dev/mmcblk0p1 파일 시스템에 있으므로 이미지를 마운트하기 전에 마운트합니다.initramfs Rootbans에서 루트로 Squashfs 마운트하기

불행히도 저는 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에 부착되어 있는지, 나에게 말한다.

누군가 어디서부터 시작해야하는지 알고 있습니까?

답변

1

나는 내 자신의 initramfs를 구축하는 동안 나는 오늘도 같은 일을했기 때문에 당신의 질문을 보았습니다. 좀 더 파고를했고,이 발견

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

는 그 다음 내가 커널에 SquashFS는 내장 또는 모듈을로드하지 않은 저 떠올랐다을. 내가 그 일을 한 후에 모든 일이 끝났다.

그렇지 않은 경우, 커널이 스쿼시를 지원하는지 확인하십시오.

+0

답장을 보내 주셔서 감사합니다. 사실 저는 표준 raspbian 커널을 사용하며 Raspbian에서 스쿼시를 문제없이 마운트 할 수 있습니다. initramfs에 모듈을 어떻게로드했는지 말해 줄 수 있습니까? – user2591347

+0

Nevermind, 내 바보 같은 질문;) 그것을 시도 내일;) – user2591347