This page is part of the debugging series — pages with debugging details for a variety of Ubuntu packages.
When working with X bugs it is sometimes not possible to log in to the desktop environment - GNOME or KDE. By default wireless networking setup is a part of the desktop environment. Debugging X often requires network access, so this means that normally a wired network connection is required when X isn't starting.
This page describes how to set up your system so that a wireless connection is available without needing to log in to the desktop.
Right click on the network applet in your panel, and select Edit Connections…
Go to the Wireless tab, select the wireless connection you want to make available, and press Edit.
Check the Available to all users box, and press Apply…. Network Manager will ask for your password. Your network connection can now be used without logging in graphically.
NetworkManager now comes with a command-line utility to do some amounts of configuration.
You can list the connections you have previously created:
$ nmcli con NAME UUID TYPE SCOPE TIMESTAMP-REAL Auto eth0 af1d8c7f-be09-478c-baf7-8fc894aa4cff 802-3-ethernet system never NAME UUID TYPE SCOPE TIMESTAMP-REAL Auto Ubuntu 0e539a80-5b84-4b2b-9bdb-add530e32cd5 802-11-wireless user Mon Oct 4 12:18:47 2010
To connect, you can then use a connection's ID/UUID:
$ nmcli con up uuid 0e539a80-5b84-4b2b-9bdb-add530e32cd5
There is help available by way of the nmcli help command.
For Maverick, the Ubuntu Netbook Edition images plan to use network-indicator and ConnMan. Currently there is no GUI support for setting up system-wide network connections.
Connman (with the 'indicator-network' package) includes a basic command-line application called cmcc.
An alternative to using network-manager is to use wicd. It has applet and curses-based clients. To use this, you should first install wicd, then remove network-manager:
apt-get install wicd wicd-curses wicd-cli wicd-gtd apt-get remove network-manager
ifupdown and iwconfig
If you mainly use your home wireless, you can simply set up your wireless interface through /etc/network/interfaces. (See 'man 5 interfaces'). A working example is:
auto lo iface lo inet loopback auto wlan0 iface wlan0 inet static wireless-essid MyEssid wireless-key XXXXXXXXXXXXXXXXXXXXXXXXXX address 192.168.254.3 netmask 255.255.255.0 gateway 192.168.254.254
You can get a list of access points using
iwlist wlan0 scan
and connect using
iwconfig wlan0 essid MyEssid iwconfig wlan0 enc XXXXXXXXXXXXXXXXXXXXXXXXXX dhclient wlan0
Note that you can't really use iwconfig when using network-manager (or wicd), because the daemon will keep over-writing your changes.