Problem z rozłączaniem się Wi-Fi przez raspberry

Aktualizacja:

Nowy sposób jaki znalazłem z połączeniem do sieci Wi-Fi:

Uruchamiamy polecenie raspi-config

Wybieramy opcję „Network Options”

Następnie wybieramy opcję „Wi-Fi”

Za 1 razem musimy podać lokalizację – W naszym wypadku wybieramy PL Poland Wi-Fi, następnie SSID i wpisujemy hasło do naszej sieci Wi-Fi i już jesteśmy połączeni z naszą siecią Wi-Fi.


Ostatnimi czasy zauważyłem, że raspberry po określonym (nie znanym przez ze mnie) czasie, rozłączył się z sieci Wi-Fi. Co w mojej infrastrukturze sieciowej uniemożliwiało mi do niego dostęp i musiałem zrobić twardy reset sprzętu…

Ostatnio znalazłem coś takiego:

Zainstalować paczkę wicd-curses:

$ sudo apt-get install wicd-curses

Uruchomić wicd-curses poleceniem:

$ wicd-curses

wybrać własną sieć Wi-Fi strzałkami góra/dół. Następnie, po wyborze sieci nacisnąć strzałkę w prawo i wybrać:

Automatically connect to this network

I teraz automatycznie raspberry, po odłączeniu się z jakiegoś powodu z sieci Wi-Fi powinien podłączyć się ponownie.


Jednak u mnie on z jakiegoś powodu nie zadziałał… Dlatego, dodałem do katalogu /root plik network-reconnect.sh z taką zawartością:

!/bin/bash
 /bin/ping -q -c1 1.1.1.1 > /dev/null
 if [ $? -eq  0 ]
 then
         true
         # echo "Network OK"
 else
         echo "Network down, fixing…"
         ifdown --force wlan0
         sleep 2
         /bin/kill -9 `pidof wpa_supplicant`
         sleep 2
         /sbin/ifup --force wlan0
         /sbin/ip route add default via TUTAJ_WPISZ_IP_BRAMY dev wlan0
         echo "wlan0 reconnected at date"
 fi

Skrypt ten sprawdza, czy jest dostęp do IP 1.1.1.1. Jeżeli go nie ma, wyłącza interfejs WLAN0 i uruchamia go ponownie. Następnie do crona – poprzez stworzenie pliku /etc/cron.d/wifi-reconnect o zawartości:

*/10 * * * * root /root/network-reconnect.sh

Uruchamiam ten skrypt co 10 minut.