Os tmpfs devem ser desmontados no desligamento do sistema?

0

Suponha que eu tenha um sistema Linux com as seguintes partições montadas (ao lado da raiz):

  • proc em / proc  
  • devtmpfs em / dev  
  • solicita em / dev / pts  
  • tmpfs em / dev / shm  
  • sysfs em / sys  
  • tmpfs em / var / run  
  • tmpfs em / tmp

O que devo fazer antes de interromper (último script executado, antes de emitir o comando halt)? Devo desmontar todos esses sistemas de arquivos, deixando apenas / dev e / proc montado? Pode deixar esses sistemas de arquivos montados causar algum problema? Existe uma prática recomendada sobre isso?

ATUALIZAÇÃO: Atualmente estou usando o sysvinit (mais recente) com scripts próprios escritos.

    
por AlQafir 23.02.2014 / 11:19

1 resposta

2

No Debian, e provavelmente seus derivados, o script que manipula as desmontagens antes de interromper / reinicializar é /etc/init.d/umountfs .

Para mim, o script não possui umount dos sistemas de arquivos listados além de tmpfs . A razão é dada no seguinte comentário:

# Make sure tmpfs file systems are umounted before turning off
# swap, to avoid running out of memory if the tmpfs filesystems
# use a lot of space.

Devido à maturidade desses scripts, acho que essa é a melhor prática, embora possa ser uma boa ideia investigar o que outras distros fazem.

Também é possível que os comandos halt / reboot realmente precisem que algumas das montagens acima funcionem (provavelmente /proc , mas também /sys e /dev ) e o comando pode falhar sem eles .

Atualizar

Para adicionar um pouco mais sobre isso, o próximo script chamado depois de umountfs , antes do próprio script halt real é umountroot . Ao contrário do que o nome sugere, o script realmente remonta a raiz somente leitura. Observe a sintaxe real para isso:

mount    $MOUNT_FORCE_OPT -n -o remount,ro -t dummytype dummydev / 2>/dev/null \
  || mount $MOUNT_FORCE_OPT -n -o remount,ro              dummydev / 2>/dev/null \
  || mount $MOUNT_FORCE_OPT -n -o remount,ro                       /

Aparentemente, apenas um mount -no remount,ro / direto pode falhar se houver outros pontos de montagem vinculados à raiz. Veja este bug para uma discussão completa sobre isso. O MOUNT_FORCE_OPT é apenas definido para o FreeBSD, então isso não é necessário para o Linux.

    
por 23.02.2014 / 13:08