Modo à prova de falhas, redefinição de fábrica e modo de recuperação
O OpenWrt oferece várias maneiras de “recomeçar” com seu roteador.
- Modo à prova de falhas é útil se você perdeu o controle do seu dispositivo e se tornou inacessível, talvez por um erro de configuração. Ele permite que você reinicie o roteador em um estado operacional básico, mantendo todos os seus pacotes e (a maioria) das configurações. (consulte Modo à prova de falhas)
- Restauração de fábrica apaga todos os seus pacotes e configurações, retornando o roteador ao seu estado inicial após a instalação do OpenWrt. (consulte Restauração de fábrica)
- Modo de recuperação permite instalar um novo firmware em um roteador que foi corrompido.(consulte Modo de recuperação)
Restauração de fábrica depende da conclusão do processo de inicialização. Se Redefinição de fábrica não estiver funcionando, tente com Modo à prova de falhas.
Modo à prova de falhas
OpenWrt permite inicializar em um modo à prova de falhas que substitui sua configuração atual. Se o seu dispositivo ficar inacessível, por exemplo, após um erro de configuração, o modo à prova de falhas está disponível para ajudá-lo. Quando você reinicia no modo à prova de falhas, o dispositivo é iniciado em um estado operacional básico, com alguns padrões codificados permanentemente, e você pode começar a corrigir o problema manualmente.
O modo à prova de falhas não pode, no entanto, corrigir problemas mais profundamente enraizados, como hardware defeituoso ou um kernel quebrado. É semelhante a uma redefinição; no entanto, com segurança, você pode acessar o dispositivo e restaurar as configurações, se desejar, enquanto uma redefinição apenas limparia tudo.
Advertência: O modo à prova de falhas estará disponível apenas se você tiver instalado o firmware a partir de uma imagem do SquashFS, que inclui a partição raiz somente leitura necessária. Para verificar se o seu dispositivo possui a partição raiz do SquashFS, verifique “squashfs” no nome da imagem OpenWrt ou execute a seguinte verificação no seu dispositivo:
grep squash /proc/mounts
O terminal deve retornar algo semelhante a este:
/dev/root /rom squashfs ro,relatime 0 0
Entrando no modo à prova de falhas
Certifique-se de usar uma conexão com fio, pois o modo à prova de falhas desativará sua conectividade sem fio.
Na maioria dos roteadores, o OpenWrt pisca um LED (normalmente “Cadeado”, pode ser outro) durante o processo de inicialização, após o controle do gerenciador de inicialização inicial (como o u-boot). O OpenWrt verificará no início do ciclo de inicialização se o usuário deseja entrar no modo à prova de falhas em vez de uma inicialização normal. Ele percebe um pressionamento de botão dentro de um tempo de dois segundos, indicada com LEDs e transmitindo um pacote UDP.
Para entrar no modo à prova de falhas, siga um dos procedimentos listados abaixo:
Recomendado para a maioria dos usuários: Aguarde um LED piscando e pressione um botão. Geralmente, é o método mais fácil depois de descobrir o momento correto.
Para a maioria dos usuários e dispositivos, os LEDs agora (2018) fornecem pistas suficientes sobre o tempo para evitar recomendações mais antigas de “pressionar o botão XXX o mais rápido possível até ...” para entrar no modo à prova de falhas.
Existem três velocidades diferentes de piscamento do LED (cadeado) durante a inicialização da maioria dos roteadores:
- Uma sequência de luzes de inicialização específica para o carregador de inicialização do dispositivo
- Em seguida, um ritmo piscante rápido de 5 por segundo durante dois segundos, enquanto o roteador aguarda o usuário ativar o modo à prova de falhas, geralmente pressionando o botão
- Então qualquer um
- Uma piscada mais rápida de 10 por segundo se o usuário pressionar um botão e o modo à prova de falhas foi acionado
- Uma piscada mais lenta de 2,5 por segundo, continuando até o final da inicialização, se o modo à prova de falhas não tiver sido acionado e a inicialização normal continuar
Alternativo para usuários experientes: aguarde (com um analisador de pacotes) por um pacote de transmissão especial e pressione um botão. O pacote será enviado para o endereço de destino 192.168.1.255, porta UDP 4919. O pacote contém o texto “Please press button now to enter failsafe”. Por exemplo, em um terminal e usando tcpdump, com o roteador conectado à interface eth0, você digitaria o comando
tcpdump -Ani eth0 port 4919 and udp
Alternativo para usuários experientes com conexão serial: Procure uma mensagem de inicialização no console serial e pressione uma tecla (“f”) no teclado serial. Isso requer que você tenha conectado um cabo serial ao dispositivo. A mensagem mostrada no console é “Press the [f] key and hit [enter] to enter failsafe mode”
Geralmente, é mais fácil observar os LEDs. No entanto, consulte a documentação disponível para o seu dispositivo, pois não há botão padrão atribuído como botão de redefinição e nem todos os procedimentos funcionam em todos os dispositivos. Qualquer que seja o gatilho usado, o dispositivo entrará no modo à prova de falhas e você poderá acessar a linha de comando com SSH (sempre possível) ou um teclado serial.
Observe que o OpenWrt moderno usa sempre SSH, mas as primeiras versões do OpenWrt (15.05 e anteriores) ofereciam uma conexão telnet nesse estado, mas não SSH.
Nota: a antiga página wiki do OpenWrt oferece mais detalhes, a maioria deles ainda válida: https://wiki.openwrt.org/doc/howto/generic.failsafe
Corrigindo suas configurações
Depois que o modo à prova de falhas é acionado, o roteador inicializa com um endereço de rede 192.168.1.1/24, geralmente na interface de rede eth0, com apenas os serviços essenciais em execução. Usando SSH ou uma conexão serial, você pode montar a partição JFFS2 com o seguinte comando:
mount_root
Depois disso, você pode começar a checar e consertar o que está quebrado. A partição JFFS2 será montada em /overlay, como em operação normal.
Restauração de fábrica
Uma redefinição de fábrica retorna o roteador à configuração que tinha logo após gravar a ROM. Isso funciona em qualquer instalação com uma configuração squashfs / overlayfs (a norma para a maioria das instalações), pois se baseia em apagar e reformatar os overlayfs.
As compilações x86 (feitas para hardware de PC / Servidor) com um rootfs de leitura e gravação ext4 não podem ser redefinidas dessa maneira.
Com um chip NOR grande, pode levar de 3 a 5 minutos para que os overlayfs sejam formatados no flash. Durante esse período, as alterações não podem ser salvas.
Botão de reset
Em dispositivos com um botão de reset, o OpenWrt pode ser redefinido para as configurações padrão sem acesso serial ou SSH.
- Ligue o dispositivo e aguarde até que o status pare de piscar (ou entre no Modo à prova de falhas acima).
- Pressione e mantenha pressionado o botão Reset por 10 segundos.
- Solte o botão Redefinir
O dispositivo fará uma redefinição de fábrica (veja abaixo) e depois reiniciará. Em alguns dispositivos, essa operação pode ser lenta; portanto, aguarde alguns minutos antes de conectar novamente.
Redefinição de fábrica suave
Se você deseja uma configuração limpa, não há necessidade de instalar ROM novamente; basta digitar os seguintes comandos. As configurações do seu dispositivo serão redefinidas para os padrões, como quando o OpenWrt foi instalado pela primeira vez.
A emissão do comando “firstboot” ou “jffs2reset” tentará excluir todos os arquivos da partição de sobreposição jffs2. Observe que essa “reinicialização suave” é realizada com ações do sistema de arquivos, portanto, em alguns casos, não é suficiente.
firstboot && reboot
Nota: Se os comandos acima (todos em uma linha) não funcionarem, tente esses comandos em linhas separadas no terminal.
Nota: para a maioria dos roteadores, o “firstboot” na verdade apenas emite um comando “jffs2reset”, portanto não há muita diferença em comparação com os conselhos de “reinicialização completa” abaixo.
Nota: se você estiver emitindo este comando dentro de um script bash, lembre-se de adicionar a opção -y para forçar o firstboot:
firstboot -y && reboot
Reset de fábrica rígido
Este comando apagará e reformatará toda a partição jffs2 e a criará novamente. A chave para um “hard reset” real é desmontar a partição de sobreposição primeiro e só depois emitir o comando jffs2reset (ou firstboot):
umount /overlay && jffs2reset && reboot
Embora na maioria dos casos isso esteja produzindo um resultado final semelhante ao “soft reset”, isso marca toda a área do flash da partição de sobreposição JFFS2 (leitura e gravação) como uma partição vazia do jffs2 não inicializada. Assim, a partição será recriada na próxima montagem, geralmente na próxima inicialização. Portanto, essa reinicialização completa ignora o sistema de arquivos atual da sobreposição.
Explicação: com base no status de montagem da sobreposição, o jffs2reset seleciona uma operação de exclusão baseada em arquivo ou uma ação de marcar a partição vazia: https://git.openwrt.org/?p=project/fstools.git;a=blob;f=jffs2reset.c;h=dbe049881f5;hb=HEAD#l43
Acesso a arquivos através do scp
É possível editar e transferir arquivos do modo à prova de falhas, usando o comando/protocolo scp do Linux ou Mac ou usando WinSCP do Windows.
Se você transferir uma imagem de sysupgrade, também poderá executar um sysupgrade da linha de comando ( syupgrade -n /path/to/file ) como normal.
Modo de recuperação
Se nem o modo à prova de falhas nem a Redefinição de fábrica retornarem o controle do seu roteador, você poderá substituir o firmware do seu dispositivo usando um dos procedimentos descritos na Página do modo de recuperação.