stratux/image/stratux-wifi.sh

41 wiersze
1.1 KiB
Bash
Executable File

#!/bin/bash
# Preliminaries. Kill off old services.
/usr/bin/killall -9 hostapd hostapd-edimax
/usr/sbin/service isc-dhcp-server stop
# Detect RPi version.
# Per http://elinux.org/RPi_HardwareHistory
#Assume PI3 settings
DAEMON_CONF=/etc/hostapd/hostapd.conf
DAEMON_SBIN=/usr/sbin/hostapd
#User settings for hostapd.conf and hostapd-edimax.conf
DAEMON_USER_PREF=/etc/hostapd/hostapd.user
DAEMON_TMP=/tmp/hostapd.conf
EW7811Un=$(lsusb | grep EW-7811Un)
RPI_REV=`cat /proc/cpuinfo | grep 'Revision' | awk '{print $3}' | sed 's/^1000//'`
if [ "$RPI_REV" = "a01041" ] || [ "$RPI_REV" = "a21041" ] || [ "$RPI_REV" = "900092" ] || [ "$RPI_REV" = "900093" ] && [ "$EW7811Un" != '' ]; then
# This is a RPi2B or RPi0 with Edimax USB Wifi dongle.
DAEMON_CONF=/etc/hostapd/hostapd-edimax.conf
DAEMON_SBIN=/etc/hostapd/hostapd-edimax
# else
# DAEMON_CONF=/etc/hostapd/hostapd.conf
fi
#Make a new hostapd or hostapd-edimax conf file based on logic above
cp -f ${DAEMON_CONF} ${DAEMON_TMP}
#inject user settings from file to tmp conf
cat ${DAEMON_USER_PREF} >> ${DAEMON_TMP}
${DAEMON_SBIN} -B ${DAEMON_TMP}
sleep 5
/usr/sbin/service isc-dhcp-server start