Fstab no Linux: adicionando uma montagem automática sem bloquear a inicialização
Débutant6 min de lecture
À retenirLinux n'est pas réservé aux experts. Le bon point de départ : une distribution accessible, une sauvegarde propre et quelques commandes comprises.
Para modificar /etc/fstab Pode tornar um servidor muito mais conveniente. Um disco de dados, uma partição dedicada, um compartilhamento de rede ou um volume adicionado ao VPS pode ser montado automaticamente na inicialização, sem comandos manuais após cada reinicialização.
Mas também é o tipo de arquivo que eu nunca edito levianamente. Uma linha incorreta no fstab pode tornar a inicialização muito lenta, iniciar um modo de recuperação ou deixar você diante de um console que não pretendia abrir. Nada insuperável, mas você precisa realizar as verificações na ordem correta.
Neste artigo, veremos como adicionar uma montagem automática no Linux com um UUIDSalve o arquivo, use sem falha Quando relevante, teste com montar -a antes de reiniciar.
A montagem do arquivo fstab deve ser testada com o comando `mount -a` antes de reiniciar, especialmente em um servidor remoto.
Antes de modificar o fstab, identifique o disco correto.
O primeiro erro é escrever uma linha do fstab com um nome como /dev/sdb1Pode funcionar, mas o nome pode mudar dependendo da ordem em que os discos são detectados. Para uma configuração permanente, prefiro usar o UUID.
Comece por exibir os discos e os sistemas de arquivos:
lsblk -f
Você também pode recuperar os UUIDs com:
sudo blkid
Identifique três informações: o UUID, o tipo de sistema de arquivos e o ponto de montagem desejado. Por exemplo, um disco em ext4 que você quer andar em /mnt/dados.
Se você precisa apenas conectar um pen drive ocasionalmente, o artigo sobre Comandos para montar uma unidade USB no Linux Será mais adequado. Aqui, estamos falando de montagem automática na inicialização.
Faça backup do arquivo /etc/fstab antes de adicionar uma linha.
Antes de abrir o editor, faça uma cópia do arquivo atual. É rápido e evita ter que fazer alterações de última hora caso alguma opção esteja escrita incorretamente.
Em seguida, crie o ponto de montagem, se necessário:
sudo mkdir -p /mnt/data
Abra o arquivo com seu editor de texto habitual:
sudo nano /etc/fstab
Recomendo adicionar a nova linha no final do arquivo, com um comentário logo acima. Não precisa escrever um romance, mas daqui a seis meses você ficará feliz por entender o motivo dessa configuração.
Adicionar montagem automática com UUID
Uma linha do fstab segue esta lógica:
Para um volume ext4 Localmente, você pode começar com uma frase como esta:
#Disco de dados
UUID=11111111-2222-3333-4444-555555555555 /mnt/data ext4 defaults,nofail,x-systemd.device-timeout=10 0 2
Obviamente, substitua o UUID pelo obtido com lsblk -f Ou blkidNão copie este exemplo tal como está.
Os dois últimos campos são frequentemente mal compreendidos. zero desativa o mecanismo antigo jogar fora, muito raramente usado hoje em dia. O dois indica que o sistema de arquivos pode ser verificado após a partição raiz. Para uma partição primária do sistema, normalmente se encontraria umPara determinadas configurações de rede ou volumes especiais, costumamos colocar zero.
A página de manual fstab(5) Ele detalha a estrutura exata do arquivo. É austero, mas útil quando você tem dúvidas sobre um campo.
Opções que impedem o bloqueio da inicialização
A opção padrões Isso é suficiente para muitos casos simples. Inclui opções clássicas como leitura/gravação, execução permitida, dispositivo interpretado e montagem automática.
Costumo adicionar sem falha Para um disco de dados não críticos, uma unidade USB conectada apenas ocasionalmente ou um volume que pode estar ausente na inicialização. Com sem falhaA máquina não deve permanecer bloqueada simplesmente porque este conjunto secundário não está disponível.
Em distribuições com systemd, a seguinte opção também limita o tempo de espera:
x-systemd.device-timeout=10
Isso é conveniente para um disco rígido externo ou um volume que possa responder lentamente. Para armazenamento realmente essencial, eu seria mais rigoroso: não. sem falha Configuração automática, monitoramento claro e reinício dos testes durante um período agendado.
Para configurações de rede, especialmente NFS ou SMB, não copie cegamente uma linha encontrada em outro lugar. As opções variam dependendo do protocolo, método de autenticação, rede e de quando a conexão se torna disponível na inicialização.
Testar fstab sem reiniciar
Após salvar o arquivo, não reinicie imediatamente. Primeiro, teste a sintaxe e a configuração com:
sudo mount -a
Se o comando não retornar nada, não é garantia de nada, mas ainda é um bom sinal. Se exibir um erro, corrija a linha agora, enquanto o sistema ainda está em execução.
Se o systemd informar que ainda possui uma visão antiga das unidades de montagem, recarregue sua configuração:
sudo systemctl daemon-reload
Você pode então reiniciar sudo mount -a. A página montar(8) continua sendo a referência para opções de montagem clássicas, e a documentação systemd.mount Explica as opções específicas do systemd.
Se a edição falhar, leia o erro antes de corrigi-lo.
Um erro no fstab costuma ser bastante revelador: UUID inválido, tipo de sistema de arquivos incorreto, ponto de montagem ausente, opção desconhecida, permissões insuficientes ou pacote ausente para um protocolo de rede.
Se você interrompeu o processo de inicialização, use o console de recuperação do provedor de hospedagem, um modo de recuperação ou um USB inicializável. Monte a partição raiz e abra o arquivo. /etc/fstabComente a linha adicionada com #ou restaure o backup criado no início.
sudo cp /etc/fstab.bak-AAAA-MM-DD-HHMM /etc/fstab
Em um servidor remoto, não execute o teste de reinicialização inicial imediatamente antes de sair. Mantenha o acesso ao console ou, no mínimo, verifique se seu provedor de hospedagem oferece um modo de recuperação de fácil acesso.
Minha verificação antes de validar a montagem automática.
Para um disco de dados simples, minha sequência é a seguinte:
identificar o disco com lsblk -f e confirme o UUID com blkid ;
salvaguardar /etc/fstab antes de qualquer modificação;
Crie o ponto de montagem com um nome claro;
Adicione uma linha com base no UUID, não no /dev/sdX ;
lançar sudo mount -a Corrija todos os erros antes de reiniciar;
verifique com descobri, df-h e os troncos;
Reinicie somente quando a montagem estiver limpa.
O Fstab não é complicado, mas nem sempre tolera aproximações. Uma linha curta, um UUID confiável, sem falha Quando o volume é secundário, então um teste real com montar -a Geralmente, é isso que evita surpresas desagradáveis na próxima inicialização.