extend wifi restore to work with mem copy

This commit is contained in:
rootzoll
2021-05-03 23:36:35 +02:00
parent 42054846de
commit 5f711cd01d

View File

@@ -81,25 +81,45 @@ update_config=1"
# or when WIFI is inactive but a wpa_supplicant.conf exists restore this
elif [ "$1" == "backup-restore" ]; then
# check if HDD already exists
# check if HDD backup location is available (for backup or restore)
hddBackupLocationAvailable=0
if [ -d /mnt/hdd/app-data ]; then
echo "# running backup/restore wifi settings"
else
echo "error='no hdd'"
exit 1
hddBackupLocationAvailable=1
fi
echo "hddBackupLocationAvailable=${hddBackupLocationAvailable}"
hddRestoreConfigAvailable=$(sudo ls /mnt/hdd/app-data/wpa_supplicant.conf 2>/dev/null | grep -c "wpa_supplicant.conf")
echo "hddRestoreConfigAvailable=${hddRestoreConfigAvailable}"
# check if mem copy of wifi config is available (for restore only)
# this should be available if a backup on HDD exists and HDD is not mounted yet but was inspected by datadrive script
memRestoreConfigAvailable=$(sudo ls /var/cache/raspiblitz/wpa_supplicant.conf 2>/dev/null | grep -c "wpa_supplicant.conf")
echo "memRestoreConfigAvailable=${memRestoreConfigAvailable}"
wifiBackUpExists=$()
if [ ${wifiIsSet} -eq 1 ]; then
# BACKUP latest wifi settings to HDD
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /mnt/hdd/app-data/wpa_supplicant.conf
echo "wifiRestore=0"
echo "wifiBackup=1"
# BACKUP latest wifi settings to HDD if available
if [ ${hddBackupLocationAvailable} -eq 1 ]; then
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /mnt/hdd/app-data/wpa_supplicant.conf
echo "wifiRestore=0"
echo "wifiBackup=1"
else
echo "wifiRestore=0"
echo "wifiBackup=0"
fi
exit 0
elif [ -f /mnt/hdd/app-data/wpa_supplicant.conf ]; then
elif [ ${hddRestoreConfigAvailable} -eq 1 ]; then
# RESTORE backuped wifi settings from HDD to RaspiBlitz
sudo cp /mnt/hdd/app-data/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf
echo "# restoring old wifi settings ... wait 4 secounds to connect"
echo "# restoring old wifi settings from HDD ... wait 4 secounds to connect"
sudo wpa_cli -i wlan0 reconfigure 1>/dev/null
sleep 4
echo "wifiRestore=1"
echo "wifiBackup=0"
exit 0
elif [ ${hddRestoreConfigAvailable} -eq 1 ]; then
# RESTORE backuped wifi settings from MEMCOPY to RaspiBlitz
sudo cp /var/cache/raspiblitz/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf
echo "# restoring old wifi settings from MEMCOPY ... wait 4 secounds to connect"
sudo wpa_cli -i wlan0 reconfigure 1>/dev/null
sleep 4
echo "wifiRestore=1"