Eu tenho uma imagem de ROM do Linux feita por Buildroot com BusyBox init e eudev. A imagem tem um / etc / fstab, que monta / dev / mmcblk0p1 em / boot e / dev / mmcblk0p2 em /mnt/var.rw (o sistema de arquivos superior para / var), e / var como um unionfs gravável.
Eu personalizei a configuração do kernel para remover recursos que eu não preciso, incluindo mapeador de dispositivos, alguns drivers aleatórios, (sistemas de arquivos que não estou usando, rede, wireless, IOMMU ... muito poucos), e agora quando eu Inicialize o dispositivo, / boot e o outro sistema de arquivos não estão montados. Se eu executar mount -a
, eles serão montados corretamente.
Eu reconstruí o kernel com o defconfig da placa, com nada mais alterado, e as partições são montadas com sucesso na inicialização novamente.
Nada no dmesg parece indicar uma falha na montagem de sistemas de arquivos. Além disso, o overlayfs é montado na ausência do sistema de arquivos superior montado, portanto, sei que fstab está sendo lido.
Qual opção de configuração do kernel pode causar esse comportamento?
EDIT: Reduzindo mais o problema, descobri que isso foi causado pela construção do UnionFS no kernel. Construí-lo como um módulo elimina o comportamento. Alguém poderia explicar o que poderia causar esse comportamento?
Tags mount fstab busybox linux-kernel