Reparar Erros em /etc/fstab usando o Modo de Emergência
Nesta etapa, você aprenderá como diagnosticar e reparar erros no arquivo /etc/fstab. Este arquivo é crítico para o processo de inicialização, pois informa ao sistema quais sistemas de arquivos montar e onde. Uma entrada incorreta em /etc/fstab pode impedir que o sistema inicialize, forçando-o a entrar no modo de emergência.
O modo de emergência fornece o ambiente mais mínimo possível para reparo do sistema. Ao contrário do modo de resgate, ele não tenta montar a maioria dos sistemas de arquivos ou iniciar muitos serviços. Crucialmente, o sistema de arquivos root (/) é montado em modo somente leitura (ro) para evitar mais danos.
Embora não possamos acionar uma falha real de inicialização neste laboratório, podemos simular o processo de encontrar e corrigir um erro em /etc/fstab.
Primeiro, vamos adicionar intencionalmente uma entrada defeituosa em /etc/fstab. Usaremos o comando echo com sudo para anexar uma linha que referencia um dispositivo inexistente.
echo '/dev/nonexistent /data xfs defaults 0 0' | sudo tee -a /etc/fstab
Agora, vamos visualizar o conteúdo de /etc/fstab para confirmar que nossa linha errada foi adicionada.
cat /etc/fstab
Você deve ver a linha incorreta no final do arquivo.
#
## /etc/fstab
## Created by anaconda on <date>
#
## Accessible filesystems, by reference, are maintained under '/dev/disk/'.
## See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
## After editing this file, run 'systemctl daemon-reload' to update systemd
## units generated from this file.
#
/dev/vda4 / xfs defaults 0 0
/dev/vda2 /boot xfs defaults 0 0
/dev/vda1 /boot/efi vfat umask=0077,shortname=winnt 0 0
/dev/vda3 swap swap defaults 0 0
/dev/nonexistent /data xfs defaults 0 0
Em seguida, simularemos a etapa de diagnóstico. O comando mount -a tenta montar todos os sistemas de arquivos listados em /etc/fstab que ainda não estão montados. Como nossa entrada é inválida, este comando falhará.
sudo mount -a
O comando produzirá um erro, indicando claramente que o ponto de montagem /data não existe. Isso é semelhante ao erro que você veria durante uma inicialização com falha.
mount: /data: mount point does not exist.
Agora, vamos simular o processo de reparo. Em um shell de emergência real, a primeira etapa é remontar o sistema de arquivos root em modo leitura-gravação para permitir alterações.
sudo mount -o remount,rw /
Com o sistema de arquivos agora gravável, você pode editar /etc/fstab para corrigir o erro. Use o editor nano para abrir o arquivo.
sudo nano /etc/fstab
Dentro do editor nano, use as setas para navegar até a linha defeituosa (/dev/nonexistent /data xfs defaults 0 0) e excluí-la. Você pode excluir a linha inteira pressionando Ctrl+k. Depois que a linha for removida, salve o arquivo pressionando Ctrl+x, depois y e, finalmente, Enter.
Para confirmar a correção, execute sudo mount -a novamente.
sudo mount -a
Desta vez, o comando deve ser executado silenciosamente, sem saída, o que indica que todas as entradas válidas em /etc/fstab estão corretamente montadas. Você reparou o arquivo com sucesso.