138

Other posts seems to be addressing more complicated network connection issues from the command line.

The Unity panel Network indicator/button doesn't respond too well sometimes - it keeps trying to connect to a network even when i click on "disconnect", stuff like that.

So I want to go command line for the control. I don't like GUIs anyway.

Is there not some simple command line tool which can do something like the following?

wifi connect MyNetworkNameA
wifi disconnect
wifi connect MyNetworkNameB
187

I think you want to keep using managed interface (by NetworkManager). nmcli is a command‐line tool for controlling NetworkManager.

  • To see list of saved connections, use (<SavedWiFiConn>)

    nmcli c
    
  • To see list of available WiFi hotspots (<WiFiSSID>)

    nmcli d wifi list
    

    or:

    sudo iwlist wlan0 scanning
    
  • To see list of interfaces (<WifiInterface>)

    ifconfig -a
    

Just change <WifiInterface>, <WiFiSSID>, <WiFiPassword> in the following commands to reflect your setup. If WiFi info already saved, easier way using <SavedWiFiConn> name of connection as it was saved in NetworkManager.

Ubuntu 16.04

##disconnect
nmcli d disconnect <WifiInterface>

##connect
nmcli d connect <WifiInterface>

Another way:

##disconnect
nmcli c down <SavedWiFiConn>

##connect
nmcli c up <SavedWiFiConn>

Ubuntu 15.10 & previous

##disconnect
nmcli d disconnect iface <WifiInterface>

##connect
nmcli d wifi connect <WiFiSSID> password <WiFiPassword> iface <WifiInterface>

Another way:

##disconnect:
nmcli c down id <SavedWiFiConn>

##connect:
nmcli c up id <SavedWiFiConn>

If your password isn't automatically recognized type this:

nmcli -a c up <SavedWiFiConn>

Reference: man nmcli

  • 1
    Works like a charm! And, as suspected, the command line responds immediately, while the GUI can be sluggish, uncooperative, and unresponsive sometimes. – cmo May 6 '14 at 15:55
  • 1
    Saved my day when I lost my Unity dash and taskbar, and the Network Settings dialog kept on crashing upon any kind of network connection establishment. – Janaka Bandara Nov 27 '14 at 1:21
  • 1
    @kirill_igum , sorry to be late quiet busy, You may use cron for scheduling wifi scan using iwlist wlan0 scanning or nmcli d wifi list then nmcli to connect to the corresponding wifi network depending on your needs. – user.dz Jan 11 '16 at 21:59
  • 1
    The command that I was issuing was giving an error. I was issuing this command: nmcli c up id "Apollo III Connect" It gave an error. When I leave out the word id and typed this it connects without error: nmcli c "Apollo III Connect". I understand how to connect it now. You're saying id as the parameter and saying replace the word id with the name of the connection, which you are naming <WiFiConn>. Thanks! – L. D. James Jun 15 '16 at 22:48
  • 5
    To save a connection setup: sudo nmcli dev wifi con "SSID_NAME" password PASSWORD "CONFIG_NAME" To find auto your saved connection setups: nmcli c – Cirelli94 Apr 13 '17 at 13:05
69

nmtui ncurses solution

Great interactive ncurses network manager option:

nmtui

Comes in the same package as nm-applet (the default top bar icon thing) and nm-cli, and is therefore widely available.

Screenshot:

enter image description here

Tested in Ubuntu 17.10.

  • Thanks! For some reason, my Ubuntu refused to connect to Wifi, so I plugged in the Ethernet cable and clicked Activate on Wired Connection and BAM! – asgs Nov 2 '17 at 15:12
  • @Downvoters please explain, I never retaliate ;-) – Ciro Santilli 新疆改造中心996ICU六四事件 Nov 13 '17 at 10:24
  • 3
    works on Ubuntu 16.01 as well, cool solution! – Jan Sila Dec 1 '17 at 8:57
  • 2
    This is a much more intuitive solution than what is above IMO. Unless you're trying to learn how Linux/Unix connects to WiFi, this seems like the ideal select and press enter solution. Works well on Ubuntu 18 – jamzsabb Jun 18 '18 at 18:56
19

If your wi-fi access point is saved, it will auto-connect. Turn wireless on or off with a simpler command:

nmcli nm wifi on
nmcli nm wifi off

on newer version:

nmcli radio wifi on
nmcli radio wifi off

For reference, see man nmcli.

  • 1
    How do you make NM enable wifi automatically during boot? Every time I reboot, Network Manager starts with wifi disabled. – Cerin Jul 25 '15 at 21:46
  • @Cerin, you may try adding this command to startup applications, see askubuntu.com/questions/243139/… – user.dz Jan 11 '16 at 21:47
  • And how do in Ubuntu > 14.04. – monitor35 Apr 18 '16 at 8:35
1

If you want to connect to a network called PrettyFlyForAWiFi-5G

nmcli -a d wifi connect PrettyFlyForAWiFi-5G

-a (or --ask) means it will ask you for the password. The connection will be saved and should connect automatically if you restart your computer.


To see all the WiFi networks around you

nmcli d wifi list --rescan yes

the --rescan yes is optional, otherwise the list of networks might be up to 30 seconds old.

which will output something like

IN-USE  SSID                         MODE   CHAN  RATE        SIGNAL  BARS  SECURITY
        PrettyFlyForAWiFi-5G         Infra  44    405 Mbit/s  59      ▂▄▆_  WPA2
        PrettyFlyForAWiFi            Infra  6     195 Mbit/s  41      ▂▄__  WPA1 WPA2

To forget a connection (that was saved after you ran nmcli -a d wifi connect <name>)

nmcli c delete PrettyFlyForAWiFi-5G

To see a list of all saved connections

nmcli c

You can use nmcli connection instead of nmcli c <whatever> and nmcli device instead of nmcli d

nmcli is NetworkManager's built-in command-line interface added in 2010 and is already installed on Ubuntu.

protected by Community May 25 '17 at 2:43

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.