Red Hat 7, 8 e 9: como iniciar em modo single (rescue e emergency)
O antigo "single" no GRUB mudou a partir do Red Hat 7. Como entrar em modo de manutenção, em modo de emergência e como recuperar a senha de root no RHEL e derivados.
Olá pessoal, tudo bem?
Antigamente, para iniciar o Red Hat em modo single, bastava inserir a palavra single na linha do kernel, no menu do GRUB. A partir do Red Hat 7, com o GRUB 2 e o systemd, isso mudou. Vou mostrar como fazer.
Editando a entrada do GRUB
- Reinicie o servidor e, na tela do GRUB, selecione a entrada do kernel com as setas.
- Aperte a tecla e para editar.
- Vá até a linha que começa com
linux(no RHEL 7,linux16) e adicione, no final dela, uma das opções abaixo. - Aperte Ctrl + X para iniciar com a alteração. Ela vale só para esse boot.
Qual opção usar
# modo de manutenção (equivale ao antigo single): pede a senha de root
systemd.unit=rescue.target
# modo de emergência: o mínimo possível, raiz montada só para leitura
systemd.unit=emergency.target
# para recuperar a senha de root: para antes mesmo de montar o sistema
rd.break
- rescue.target: monta os sistemas de arquivos e sobe o mínimo de serviços. Use para manutenção quando você tem a senha de root;
- emergency.target: use quando o rescue não sobe, por exemplo por um erro no
/etc/fstab; - rd.break: o caminho para quando a senha de root foi perdida.
Na versão original deste post, eu usava init=/bin/sh. Ele continua funcionando e cai direto num shell, mas os modos acima são os documentados pela Red Hat e se comportam melhor com o systemd.
Recuperando a senha de root com rd.break
Depois de iniciar com rd.break, você cai num shell antes do sistema montar a raiz de verdade. A partir daí:
# a raiz real fica em /sysroot, montada só para leitura
mount -o remount,rw /sysroot
chroot /sysroot
# troca a senha
passwd root
# obrigatório com SELinux ativo: reetiqueta os arquivos no próximo boot
touch /.autorelabel
exit
exit
touch /.autorelabel. Sem ele, o arquivo de senhas fica com o contexto do SELinux errado e ninguém consegue logar. O primeiro boot depois disso demora um pouco mais, por causa do relabel, e é normal.
grub2-setpassword) em servidores onde o acesso físico ou ao console não é controlado.
Tudo isso vale também para os derivados do Red Hat, como Rocky Linux, AlmaLinux, Oracle Linux e CentOS Stream.
Considerações Finais
O velho single virou systemd.unit=rescue.target, e a recuperação de senha ganhou o rd.break. Vale guardar este passo a passo, porque normalmente a gente só precisa dele em dia de problema, com pressa e sem internet no console.
Até a próxima.
Abraço
:wq!
Post publicado originalmente em março de 2016 e atualizado em novembro de 2026.

Comentários
Postar um comentário