Isso é necessário apenas em alguns casos especiais, por exemplo, quando você faz o chroot em outro sistema e está tentando gerar ou atualizar uma imagem initramfs.
Para entender por que precisamos vincular esses caminhos, você precisa saber o que é initramfs
e por que precisamos dele:
Em conclusão: no meu ambiente ao gerar ou atualizar um initramfs, eu tenho que saber quais são meus dispositivos, por exemplo: que tipo de discos eu tenho e que tipo de ferramentas / módulos devo colocar no meu "initramfs" para lidar com sistemas de inicialização? De onde vêm esses dados?Many Linux distributions ship a single, generic Linux kernel image – one that the distribution's developers create specifically to boot on a wide variety of hardware. The device drivers for this generic kernel image are included as loadable kernel modules because statically compiling many drivers into one kernel causes the kernel image to be much larger, perhaps too large to boot on computers with limited memory. This then raises the problem of detecting and loading the modules necessary to mount the root file system at boot time, or for that matter, deducing where or what the root file system is. [1]
Caminhos como /dev
contêm muitas informações úteis sobre esse tipo de coisa, é por isso que replicamos um caminho como /dev
.
De man hier
:
/dev Special or device files, which refer to physical devices.
Sobre a sua outra pergunta, até onde eu sei quando você muda alguma coisa em qualquer um dos locais montados, ela refletirá o sistema de arquivos real, você pode facilmente testá-lo:
$ sudo mount --rbind ~/Documents /mnt
$ touch ~/mnt/foo
$ ls ~/Documents/foo
/home/ravexina/Documents/foo