OpenWrt - Failsafe
Tryb awaryjny dla ruterów z OpenWrtOstatnia zmiana: 2013-02-13 15:23
1. Tryb failsafe
Tryb failsafe
Oprogramowanie OpenWrt wykonane jest w pewien modułowy sposób, pozwalający na uruchomienie samego systemu w trybie failsafe. Jest to specjalny tryb "awaryjny", w którym nie są uruchomione prawie żadne usługi poza serwerem telnetu (można dostać się bez hasła do rutera), a interfejs sieciowy ma zawsze ustawiony adres 192.168.1.1. Wszystkie zmiany które zostały wykonane w systemie są ignorowane, dzięki czemu nawet po błędnej konfiguracji interfejsów sieciowych można ruter doprowadzić do stanu używalności.Ruter uruchomiony jest z partycji squashfs, część z jffs, a więc ta z wykonanymi przez nas zmianami nie jest domyślnie zamontowana. Po wejściu w ten tryb można przywrócić ruter do stanu jak po pierwszym uruchomieniu lub podmontować partycję i poprawić zmiany które wcześniej zostały wykonane.
Większość ruterów wyposażona jest w jakiś przycisk. Wprowadzenie rutera w tryb failsafe oznacza uruchomienie go z wciśniętym dowolnym przyciskiem. Cała procedura wygląda następująco:
- wyłączyć ruter z zasilania
- połączyć go kablem z jednego portu LAN do komputera
- ustawić na stałe w komputerze adres IP karty sieciowej na 192.168.1.2 z maską 255.255.255.0. Brama może zostać pusta
- podłączyć zasilanie do rutera
- przez kilka sekund naciskać cyklicznie dowolny przycisk na ruterze.
- zalogować się przez telnet do rutera (telnet 192.168.1.1)
- polecenie mount_root które zamontuje system plików i można poprawić to co zepsuliśmy w konfiguracji
- polecenie firstboot które usunie wszystkie zmiany i doprowadzi ruter to stanu świeżo jak po wgraniu firmware. Po tym poleceniu należy bezwzględnie zresetować router - można tak po prostu przez odłączenie zasilania.
# mtd -r erase rootfs_data
Można też wgrać nowe oprogramowanie - potrzebujemy serwera http lub ftp na komputerze i połączamy pod niego router. Na serwerze ftp/http umieszczamy plik z firmware pod nazwą np. a.bin. Następnie logujemy się do routera przez telnet i wydajemy polecenia:
# cd /tmp
# wget ftp://ip-komputera/a.bin
# sysupgrade -n a.bin
Jeżeli z jakiegoś powodu powyższe polecenia nie działają można to wykonać "ręcznie" wydając polecenie:
# mount -t jffs2 /dev/mtdblock3 /overlay
Jeżeli chcemy przywrócić ruter do stanu jak po flashowaniu należy usunąć wszystkie pliki:
# rm -rf /overlay/*
Urządzenie /dev/mtdblock3 może być różne w zależności o typu routera (jak powinna być oznaczona partycja można zobaczyć po wydaniu polecenia cat /proc/mtd).