Automatic WiFi Connection on Startup

I’m using Ubuntu Mate 15.10. On startup the system doesn’t connect to my wireless network until I login. I would like to run this system headless with X11 disabled. With X disabled the system does not automatically connect to my WiFi network on login, the connection is only established after logging in to X.

Can anyone tell me how to configure Ubuntu Mate to automatically connect to WiFi on startup?

Thanks,
Bob

I think this may be what you are looking for:

Steve,

Thanks for the reply. Unfortunately, this solution doesn’t seem to work for me. The “Available to all users” option was already selected. This might be the default in 15.1 since I don’t recall changing it.

I’ve added the auto entry to /etc/network/interfaces. The line I’ve added is:
auto wlx000f6007f9c3

I’ve determined the device name using ifconfig:
wlx000f6007f9c3 Link encap:Ethernet HWaddr 00:0f:60:07:f9:c3
inet addr:192.168.1.216 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20f:60ff:fe07:f9c3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:381 errors:0 dropped:0 overruns:0 frame:0
TX packets:174 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:49284 (49.2 KB) TX bytes:26199 (26.1 KB)

Unfortunately, it doesn’t appear there is much useful information provided by dmesg. The only entries relating to this device are:
[ 7.614834] rt2800usb 1-1.5:1.0 wlx000f6007f9c3: renamed from wlan0
[ 9.937312] IPv6: ADDRCONF(NETDEV_UP): wlx000f6007f9c3: link is not ready
[ 10.272986] IPv6: ADDRCONF(NETDEV_UP): wlx000f6007f9c3: link is not ready
[ 10.761356] IPv6: ADDRCONF(NETDEV_UP): wlx000f6007f9c3: link is not ready
[ 12.420862] IPv6: ADDRCONF(NETDEV_UP): wlx000f6007f9c3: link is not ready
[ 145.663310] wlx000f6007f9c3: authenticate with dc:fb:02:82:93:e1
[ 145.712775] wlx000f6007f9c3: send auth to dc:fb:02:82:93:e1 (try 1/3)
[ 145.715214] wlx000f6007f9c3: authenticated
[ 145.734659] wlx000f6007f9c3: associate with dc:fb:02:82:93:e1 (try 1/3)
[ 145.738315] wlx000f6007f9c3: RX AssocResp from dc:fb:02:82:93:e1 (capab=0x1411 status=0 aid=12)
[ 145.749752] wlx000f6007f9c3: associated
[ 145.750078] IPv6: ADDRCONF(NETDEV_CHANGE): wlx000f6007f9c3: link becomes ready

At 145 I logged into the system and we see a successful connection.

syslog seems to provide better info. The first entries I encounter for wifi after a boot are as follows:
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: starting connection ‘pinball’ (5aab8482-c358-4fb8-8c21-76e8bf6a4e51)
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: disconnected -> prepare (reason ‘none’) [30 40 0]
Jan 4 11:21:53 media-server NetworkManager[394]: NetworkManager state is now CONNECTING
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: prepare -> config (reason ‘none’) [40 50 0]
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: (wifi) access point ‘pinball’ has security, but secrets are required.
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: config -> need-auth (reason ‘none’) [50 60 0]
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): No agents were available for this request.
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: need-auth -> failed (reason ‘no-secrets’) [60 120 7]
Jan 4 11:21:53 media-server kernel: [ 11.647834] IPv6: ADDRCONF(NETDEV_UP): wlx000f6007f9c3: link is not ready
Jan 4 11:21:53 media-server NetworkManager[394]: NetworkManager state is now DISCONNECTED
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: failed for connection ‘pinball’
Jan 4 11:21:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: failed -> disconnected (reason ‘none’) [120 30 0]
Jan 4 11:21:53 media-server systemd[1]: Started Session c1 of user lightdm.
Jan 4 11:21:53 media-server NetworkManager[394]: Device ‘wlx000f6007f9c3’ has no connection; scheduling activate_check in 0 seconds.

Several seconds later additional entries are added, most likely after I login and a connection is established:
Jan 4 11:22:46 media-server NetworkManager[394]: Auto-activating connection ‘pinball’.
Jan 4 11:22:46 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: starting connection ‘pinball’ (5aab8482-c358-4fb8-8c21-76e8bf6a4e51)
Jan 4 11:22:46 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: disconnected -> prepare (reason ‘none’) [30 40 0]
Jan 4 11:22:46 media-server NetworkManager[394]: NetworkManager state is now CONNECTING
Jan 4 11:22:46 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: prepare -> config (reason ‘none’) [40 50 0]
Jan 4 11:22:46 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: (wifi) access point ‘pinball’ has security, but secrets are required.
Jan 4 11:22:46 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: config -> need-auth (reason ‘none’) [50 60 0]
Jan 4 11:22:50 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: need-auth -> prepare (reason ‘none’) [60 40 0]
Jan 4 11:22:50 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: prepare -> config (reason ‘none’) [40 50 0]
Jan 4 11:22:50 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: (wifi) connection ‘pinball’ has security, and secrets exist. No new secrets needed.
Jan 4 11:22:50 media-server NetworkManager[394]: Config: added ‘ssid’ value ‘pinball’
Jan 4 11:22:50 media-server NetworkManager[394]: Config: added ‘scan_ssid’ value ‘1’
Jan 4 11:22:50 media-server NetworkManager[394]: Config: added ‘key_mgmt’ value ‘WPA-PSK’
Jan 4 11:22:50 media-server NetworkManager[394]: Config: added ‘psk’ value ‘’
Jan 4 11:22:50 media-server NetworkManager[394]: Config: set interface ap_scan to 1
Jan 4 11:22:50 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: inactive -> scanning
Jan 4 11:22:52 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: scanning -> authenticating
Jan 4 11:22:52 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: authenticating -> associating
Jan 4 11:22:52 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: associating -> 4-way handshake
Jan 4 11:22:52 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: 4-way handshake -> group handshake
Jan 4 11:22:53 media-server NetworkManager[394]: (wlx000f6007f9c3): supplicant interface state: group handshake -> completed
Jan 4 11:22:53 media-server NetworkManager[394]: (wlx000f6007f9c3): Activation: (wifi) Stage 2 of 5 (Device Configure) successful. Connected to wireless network ‘pinball’.
Jan 4 11:22:53 media-server NetworkManager[394]: (wlx000f6007f9c3): device state change: config -> ip-config (reason ‘none’) [50 70 0]
Jan 4 11:22:53 media-server NetworkManager[394]: Activation (wlx000f6007f9c3) Beginning DHCPv4 transaction (timeout in 45 seconds)
Jan 4 11:22:53 media-server NetworkManager[394]: dhclient started with pid 947
Jan 4 11:22:53 media-server NetworkManager[394]: address 192.168.1.216
Jan 4 11:22:53 media-server NetworkManager[394]: plen 24 (255.255.255.0)
Jan 4 11:22:53 media-server NetworkManager[394]: gateway 192.168.1.1
Jan 4 11:22:53 media-server NetworkManager[394]: server identifier 192.168.1.1
Jan 4 11:22:53 media-server NetworkManager[394]: lease time 86400

It appears on boot it might not be accessing the WPA info. Perhaps a permission problem? I’m not sure where to look for this. Any suggestions?

Thanks,
Bob

I have found and corrected the problem. I can’t explain it, but I’ve fixed it :slightly_smiling:

I checked the file within /etc/NetworkManager/system-connections which contains the config for my network. It turns out it was incomplete. It was missing the psk and a few other items.

I entered this information when initially connecting to wifi via the GUI. I can see it stored within Applications->Accessories->Passwords and Keys under the category Passwords/Login. I have a feeling this is part of the problem since it seems to imply this is data stored for a specific user.

I’ve modified the file for my ssid within /etc/NetworkManager/system-connections to the following:
[connection]
id=pinball
uuid=5aab8482-c358-4fb8-8c21-76e8bf6a4e51
type=wifi
permissions=
secondaries=
timestamp=1451925118

[wifi]
hidden=true
mac-address=00:0F:60:07:F9:C3
mac-address-blacklist=
mode=infrastructure
seen-bssids=DC:FB:02:82:93:E1;
ssid=pinball
security=wifi-security

[wifi-security]
group=
key-mgmt=wpa-psk
pairwise=
proto=
psk-flags=1
psk=(psk removed before posting)

[ipv4]
dns-search=
method=auto

[ipv6]
dns-search=
ip6-privacy=0
method=ignore

After a reboot my system now automatically connects to wi-fi without logging in.

Thanks,
Bob

Well, you already know more than me when it comes to network settings Bob!

Well done for sorting it out mate…:slight_smile: