Создайте сценарий, который подключается к Wi-Fi, и если он не работает с резервным доступом к сети ad-hoc

Я хотел бы создать скрипт, который пытается подключить меня к Wi-Fi, указанному моим wpa_supplicant conf, и если он не работает, создайте специальную сеть. Но я борюсь с этим.

Вот что я делаю сейчас:

#!/bin/bash # create adhoc network function createAdHocNetwork(){ echo "Creating ad-hoc network" ifconfig wlan0 down iwconfig wlan0 mode ad-hoc iwconfig wlan0 essid AccessPoint ifconfig wlan0 11.0.0.1 netmask 255.255.255.0 up echo "Ad-hoc network created" } # connect to wifi function connect(){ echo "Trying to connect to configured wifi" ifdown wlan0 wpa_supplicant -B -i wlan0 -c /home/pi/pics/wpa_supplicant.conf ifup wlan0 echo "Wifi configured" } echo "=================================" echo "Wifi setup" echo "=================================" connect echo "Checking connectivity..." sleep 5s ping -c 5 -I wlan0 google.com > /dev/null 2>&1 PINGSTATUS=$? echo "Status" echo $PINGSTATUS if [ $PINGSTATUS -eq 0 ]; then echo "Connected to WiFi" else echo "Wifi not connected, fallback to ad-hoc" createAdHocNetwork fi exit 0 

Кажется, он работает для подключения к настроенному Wi-Fi, но не для ad-hoc.

Вот мой /etc/network/interfaces :

 # start interfaces upon start of the system auto lo wlan0 # register loopback interface iface lo inet loopback # use dhcp and allow interface to be started when kernel detects a hotplug event allow-hotplug eth0 iface eth0 inet dhcp # use manual ip configuration for wlan0 interface and allow hotplug as well allow-hotplug wlan0 iface wlan0 inet dhcp 

И мой /etc/dhcp/dhcpd.conf :

 ddns-update-style interim; default-lease-time 600; max-lease-time 7200; authoritative; log-facility local7; subnet 11.0.0.0 netmask 255.255.255.0 { range 11.0.0.2 11.0.0.150; } 

Я вижу сеть ad-hoc с другого компьютера, но я не могу подключиться к ней, любая идея?

С уважением

Linux и Unix - лучшая ОС в мире.