Eu estava inspecionando os arquivos do sistema de arquivos raiz gerados pelo PetaLinux e vi alguns scripts de inicialização na /etc/rc5.d
pasta. Um deles foi nomeado S15mountnfs.sh
e vinculado ao mountnfs.sh
script que é colocado sob/etc/init.d
Pelo que entendi por seu conteúdo e nome, acho que ele é responsável apenas por montar o sistema de arquivos raiz NFS. Como este é um script localizado em um sistema de arquivos já montado, por que precisamos chamá-lo?
Os discos são montados em uma ordem específica durante a inicialização do unix.
Normalmente, o linux carrega um sistema de arquivos raiz inicial como uma unidade ram, e isso tem scripts para encontrar o sistema de arquivos raiz real, montá-lo e alternar para ele e liberar a memória do initrd.
Em seguida, o sistema irá montar todos os discos físicos em fstab.
Em seguida, o sistema abre a rede e a configura.
Feito isso, ele montaria unidades nfs de outros servidores.
nfs raramente é usado como um sistema de arquivos raiz, mas é possível. No entanto, normalmente o script mountnfs estaria montando outras coisas além do root, como talvez /home se isso for nfs compartilhado.
Se o sistema de arquivos raiz for via NFS, os scripts initrd precisariam ativar a rede antecipadamente e montá-la separadamente de dentro do initrd.