I used the following Steps to create a startup script that will automatically connect my WIFI after a reboot. Not sure if there are more efficient way but this works for me so far. I normally do minimum install so there's no GUI running on my Linux machine. Tested it on Ubuntu 16.10 Yakkety.
Pre requisite
a. Disable network-manager service.
b. You need root access.
1. Create wifi WPA supplicant config appropriate for your Wifi Connection. The example was based on using WPA-Personal (Security Mode).
vi /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="WIFI SSID (ex FreeWIFI)"
psk="wifipassword"
key_mgmt=WPA-PSK
proto=RSN WPA
pairwise=CCMP TKIP
group=CCMP TKIP
}
2. Create the script that will contains the CLI command that connects the wifi
vi /*path*/wifi.sh
#!/bin/bash
/sbin/wpa_supplicant -Dnl80211 -iwlp2s0 -c/etc/wpa_supplicant.conf &
------
*Change the *path* to a folder of your choice (do the same on Step 3)
wlp2s0 - is the name of your wifi interface name. Run "ip addr sh" if you're not sure.
3. Create the systemd init script file
vi /etc/systemd/system/wifi.service
[Unit]
Description=This will and connect the wifi @ startup
[Install]
WantedBy=multi-user.target
[Service]
Exec=/*path* /wifi.sh
Type=oneshot
RemainAfterExit=yes
4. ADD the systemd init script during Startup using systemctl:
systemctl daemon-reload
systemctl enable wifi.service
systemctl start wifi.service
1. Create wifi WPA supplicant config appropriate for your Wifi Connection. The example was based on using WPA-Personal (Security Mode).
vi /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="WIFI SSID (ex FreeWIFI)"
psk="wifipassword"
key_mgmt=WPA-PSK
proto=RSN WPA
pairwise=CCMP TKIP
group=CCMP TKIP
}
2. Create the script that will contains the CLI command that connects the wifi
vi /*path*/wifi.sh
#!/bin/bash
/sbin/wpa_supplicant -Dnl80211 -iwlp2s0 -c/etc/wpa_supplicant.conf &
------
*Change the *path*
wlp2s0 - is the name of your wifi interface name. Run "ip addr sh" if you're not sure.
3. Create the systemd init script file
vi /etc/systemd/system/wifi.service
[Unit]
Description=This will and connect the wifi @ startup
[Install]
WantedBy=multi-user.target
[Service]
Exec=/*path*
Type=oneshot
RemainAfterExit=yes
4. ADD the systemd init script during Startup using systemctl:
systemctl daemon-reload
systemctl enable wifi.service
systemctl start wifi.service
5. Reboot your system to test if script works
reboot
==================================================
On second note just run nmtui if your network manager is working fine will save you the trouble of manually creating the wpa_supplicant file. The tutorial above works best if you're only connecting to 1 wifi connection and you don't expect the linux box or server to be more elsewhere.
reboot
==================================================
On second note just run nmtui if your network manager is working fine will save you the trouble of manually creating the wpa_supplicant file. The tutorial above works best if you're only connecting to 1 wifi connection and you don't expect the linux box or server to be more elsewhere.