Jak korzystać z NMCLI, aby utworzyć połączenie Wi-Fi i połączyć się z SSID przez WPA?


12

Środowisko

  • BeagleBone Black z systemem Debian 7.7
  • narzędzie nmcli, wersja 0.9.4.0

Próbowałem kilka przykładów poleceń, aby rozpocząć, ale żaden nie pomaga mi dodać połączenia i połączyć.

Urządzenia

# nmcli dev
DEVICE     TYPE              STATE        
wlan0      802-11-wireless   disconnected     <====
usb0       802-3-ethernet    unmanaged    
eth0       802-3-ethernet    connected 

Znajomości

Mam kilka

nmcli con    
NAME                      UUID                                   TYPE              TIMESTAMP-REAL                    
Wired connection 1        00000000-4a11-43d1-9252-4b92de0e75c3   802-3-ethernet    Thu Oct 23 05:46:02 2014          
WLAN-A69E22               29eeb2f6-cf80-0000-0000-d23733e97eb4   802-11-wireless   Thu Oct 30 16:06:14 2014          
Wireless connection 1     bfaa9524-a1d9-0000-8279-71a56720c06c   802-11-wireless   Wed Feb 24 02:33:55 2015          
Wireless connection 2     00000000-d5cc-411b-a62e-000000000000   802-11-wireless   Wed Oct 22 23:31:24 2014   

Sieci

nmcli dev wifi list
SSID                              BSSID               MODE             FREQ       RATE       SIGNAL   SECURITY   ACTIVE  
'MAR'                       00:00:00:86:D0:22   Infrastructure   2462 MHz   54 MB/s    80       WEP        no      
'MYHOME'                    00:00:00:00:2D:16   Infrastructure   5180 MHz   44 MB/s    80       WPA WPA2   no

Chciałbym dodać nowe połączenie do sieci bezprzewodowej SSID MYHOMEz wykorzystaniem nmclii chcę się z nią połączyć.

Dokumenty, które znalazłem, nie pasują do mojej wersji nmcli

W przypadku Fedory dowiedziałem się, że następujące działałyby, patrz tutaj

nmcli con add con-name MyCafe ifname wlan0 type wifi ssid MyCafe ip4 192.168.100.101/24 gw4 192.168.100.1

WSPARCIE

Znajomości

# nmcli con help
Usage: nmcli con { COMMAND | help }
  COMMAND := { list | status | up | down | delete }

  list [id <id> | uuid <id>]
  status [id <id> | uuid <id> | path <path>]
  up id <id> | uuid <id> [iface <iface>] [ap <BSSID>] [--nowait] [--timeout <timeout>]
  down id <id> | uuid <id>
  delete id <id> | uuid <id>

Urządzenia

# nmcli dev help
Usage: nmcli dev { COMMAND | help }

  COMMAND := { status | list | disconnect | wifi }

  status
  list [iface <iface>]
  disconnect iface <iface> [--nowait] [--timeout <timeout>]
  wifi [list [iface <iface>] [bssid <BSSID>]]

wydaje się, że żaden nie pozwala na tworzenie połączeń

Kilka wyników

nmcli -f GENERAL,WIFI-PROPERTIES dev list iface wlan0

GENERAL.DEVICE:                         wlan0
GENERAL.TYPE:                           802-11-wireless
GENERAL.VENDOR:                         Realtek
GENERAL.PRODUCT:                        802.11n NIC
GENERAL.DRIVER:                         rtl8812au
GENERAL.HWADDR:                         04:8D:38:0F:D9:32
GENERAL.STATE:                          30 (disconnected)
GENERAL.REASON:                         42 (The supplicant is now available)
GENERAL.UDI:                            /sys/devices/ocp.3/47400000.usb/musb-hdrc.1.auto/usb1/1-1/1-1.3/1-1.3:1.0/net/wlan0
GENERAL.IP-IFACE:                       
GENERAL.NM-MANAGED:                     yes
GENERAL.FIRMWARE-MISSING:               no
GENERAL.CONNECTION:                     not connected
WIFI-PROPERTIES.WEP:                    yes
WIFI-PROPERTIES.WPA:                    yes
WIFI-PROPERTIES.WPA2:                   yes
WIFI-PROPERTIES.TKIP:                   yes
WIFI-PROPERTIES.CCMP:                   yes

1
Zakładając, że Ubuntu szanuje numerację pakietów Debiana, dziennik zmian wydaje się wskazywać, że funkcja została dodana w wersji 0.9.6.0 ( „Dodaj możliwość łączenia się z nowymi sieciami Wi-Fi z nmcli” ). FWIW jest dostępny poprzez devobiekt, a nie przez conobiekt, więc nmcli dev wifi connect <SSID> password <PASS> iface <IFACE>.
steeldriver

Ok, pozwól mi zobaczyć, czy mogę zaktualizować pakiet.
zabumba

@joelmaranhao: Udało ci się? Jak poszedłeś na temat aktualizacji do następnej wersji? Masz inny problem, który wymaga również nowszej wersji, ale apt-get upgradeutrzyma ją na poziomie 0.9.4.
nhee

uaktualnij do wersji 0.9.10 , to duża aktualizacja.
iman

Odpowiedzi:


12

nmtui to alternatywne polecenie dla nmcli oparte na tekstowym interfejsie użytkownika

jako root po prostu wpisz

nmtui

wprowadź opis zdjęcia tutaj


jest to jedyne rozwiązanie, które zadziałało dla mnie (fedora 23) po niezliczonych nocach hakowania cli bez żadnych rozsądnych rezultatów. dlaczego to kurwa jest takie głupie proste i nikt nie pisze tego na żadnej istniejącej wiki ?! wielkie dzięki GAD3R!
bitbitdecker,

1
nmtui i nmcli nie są dostępnymi poleceniami w mojej instalacji Debian 8. Co daje?
Arya

1
@Arya nmtuijest częścią network-managerpakietu packages.debian.org/…
GAD3R

7
nmcli device wifi con "ssid" password "p455w04d"

1
Dzięki za to. Naprawdę nie rozumiem, dlaczego hasło wymaga słowa / argumentu / polecenia, a identyfikator SSID nie.
pdoherty926,

@ pdoherty926 Słabym obejściem jest uruchomienie polecenia tak, jak w odpowiedzi z hasłem wyczyszczonym, ale niepoprawnym. Następnie możesz użyćnmcli connection up "ssid" passwd-file <path to file>
MrMas
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.