Qual é o propósito de listar os rootfs em / etc / fstab?

5

No BuildRoot 2015.08.1 / etc / fstab contém a seguinte linha.

/dev/root / ext2 rw,noauto 0 1

No meu laptop Ubuntu criptografado / etc / fstab contém a seguinte linha.

/dev/mapper/ubuntu--vg-root / ext4 errors=remount-ro 0 1

Pergunta: Qual é o propósito de listar os rootfs em / etc / fstab?

Não é a resposta:

  • O kernel monta o rootfs somente leitura a partir do parâmetro root = ou no initramfs. Então o / etc / fstab não ajuda a montar o rootfs como somente leitura.

  • O processo init remonta o rootfs read-write. Isso é feito em / etc / inittab no BuildRoot e /etc/rcS.d/S06checkroot.sh no Ubuntu. Então / etc / fstab não ajuda a remontar o rootfs read-write.

Background: Estou construindo um sistema embarcado com um initramfs sofisticado. Ele procura por diferentes candidatos rootfs na rede e localmente até encontrar um adequado. Ele cuida de verificar o sistema de arquivos e remontá-lo de leitura-gravação antes de chamar switch_root.

Pergunta bônus: Qual seria o impacto de não listar os rootfs em / etc / fstab?

Seria fantástico se não houvesse nenhum. Eu não quero manter um / etc / fstab diferente para cada rootfs. Mas então por que BuildRoot e Ubuntu o manteriam?

Spoiler: Eu tentei e parece funcionar, mas tenho cuidado com as consequências ocultas.

    
por marcv81 13.11.2015 / 03:15

1 resposta

4

As opções no fstab devem ser usadas para remontá-lo, aplicando as opções especificadas (que NÃO podem incluir acesso rw). Um script de inicialização que é codificado para remontar o root fs com rw sem consultar o fstab está quebrado. Assim, o único resultado de deixá-lo fora do fstab é que ele não será remontado e permanecerá sem nenhuma outra opção aplicada.

    
por 14.11.2015 / 18:44