This mostly for any Linux system using systemd, albeit the make_ssid.sh script will need adjusted for where you want to get the ID from. In the example, it uses the Raspberry Pi’s serial number. Mac address could be another good source to use.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
make_ssid.sh goes in /etc/hostapd/ | |
The service file goes in /etc/systemd/system/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Unit] | |
Description=Setup ssid to use for hostapd | |
Before=hostapd.service | |
[Service] | |
Type=oneshot | |
ExecStart=/bin/bash /etc/hostapd/make_ssid.sh | |
StandardOutput=journal+console | |
[Install] | |
WantedBy=multi-user.target |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
set -e | |
egrep -v "^ssid" /etc/hostapd/hostapd.conf > /tmp/hostapd.new | |
grep Serial /proc/cpuinfo | awk '{ print "ssid=example_ssid_" $3 }' >> /tmp/hostapd.new | |
mv /tmp/hostapd.new /etc/hostapd/hostapd.conf |