Eu criei um sistema gentoo-live que deve ser inicializado a partir de um cartão CF. Todo o sistema de arquivos está em um squashfs. Eu criei um initrd personalizado que primeiro monta o cartão CF e a partir daí o sistema de arquivos esmagado para o que se tornará /
.
Eu gostaria que /etc
fosse gravável, então copiei para o cartão CF e adicionei uma ligação. No entanto, isso não parece funcionar. O sistema inicializa, mas o / etc não está montado.
Gostaria de saber se minha abordagem está correta e o que posso fazer para solucioná-la ou, se não, qual seria o caminho certo para isso.
Este é o init-script
do meu initrd
:
#!/bin/busybox sh
mount -t proc none /proc
mount -t sysfs none /sys
mount /dev/sda1 /mnt/flash
mount -o loop /mnt/flash/filesystem.squashfs /mnt/root
mount -B /mnt/flash/etc /mnt/root/etc
mount -o remount,rw /mnt/root/etc
umount /proc
umount /sys
exec switch_root /mnt/root /sbin/init
Esta é a saída abreviada de cat /proc/mounts
:
rootfs / rootfs rw 0 0
/dev/sda1 /mnt/flash ext2 rw,relatime,errors=continue,user_xattr,acl 0 0
/dev/loop0 / squashfs ro,relatime 0 0
...