Nmcli

From mxlinuxusers.de
Jump to navigation Jump to search

nmcli ist ein vielseitiges Werkzeug, um die Netzwerkschnittstellen auf der Kommandozeile zu verwalten. Es ist Bestandteil des Netzwerkmanagers, kann also überall verwendet werden, wo dieser schon installiert ist.

Optionen[edit | edit source]

  • -p # "aufgehübschte" Ausgabe mit Titeln u.ä.
nmcli dev
GERÄT  TYP       STATUS           VERBINDUNG 
eth0   ethernet  verbunden        Draht      
wlan0  wifi      nicht verfügbar  --         
lo     loopback  nicht verwaltet  --
nmcli -p dev
===============================================
              Status der Geräte
===============================================
GERÄT  TYP       STATUS           VERBINDUNG 
-----------------------------------------------
eth0   ethernet  verbunden        Draht      
wlan0  wifi      nicht verfügbar  --         
lo     loopback  nicht verwaltet  --
  • -m [tabular | multiline] # tabular = tabellarische Ausgabe, multiline = zeilenweise Ausgabe:
nmcli -m tabular dev
GERÄT  TYP       STATUS           VERBINDUNG 
eth0   ethernet  verbunden        Draht      
wlan0  wifi      nicht verfügbar  --         
lo     loopback  nicht verwaltet  --
nmcli -m multiline dev
GERÄT:                                  eth0
TYP:                                    ethernet
STATUS:                                 verbunden
VERBINDUNG:                             Draht
GERÄT:                                  wlan0
TYP:                                    wifi
STATUS:                                 nicht verfügbar
VERBINDUNG:                             --
GERÄT:                                  lo
TYP:                                    loopback
STATUS:                                 nicht verwaltet
VERBINDUNG:                             --
  • -c [yes | no | auto] # Steuerung der farbigen Ausgabe: yes = farbige Ausgabe, no = keine farbige Ausgabe, auto = farbige Ausgabe nur in dazu fähigen Terminals
  • -f [ feld1,feld2... | all | common] # welche Felder sollen ausgegeben werden. all = Ausgabe aller möglichen Felder, common = Ausgabe der Default-Felder. feld1,feld2... = Angabe der gewünschten Feldnamen, welche Namen möglich sind hängt vom Kommando ab, durch Angabe eines falschen Feldnamens werden aber die möglichen Feldnamen in der Fehlermeldung angezeigt:
nmcli -f abc dev
Fehler: »device status«: Ungültiges Feld »abc«; erlaubte Felder: DEVICE,TYPE,STATE,DBUS-PATH,CONNECTION,CON-UUID,CON-PATH
  • -s # zeigt bei der Abfrage von Verbindungen Passwörter an
  • -w [Sekunden] # Diese Option legt eine Timeout-Periode fest, für die nmcli auf die Beendigung von Operationen durch NetworkManager wartet. Sie ist besonders nützlich für Befehle, deren Ausführung längere Zeit in Anspruch nehmen kann, z.B. die Verbindungsaktivierung.
  • -h # Ausgabe von Hilfe-Infos zu den Optionen

nmcli besitzt außerdem eine automatische Vervollständigung mit der Tab-Taste

nmcli con sh<TAB>

ergibt

nmcli con show
nmcli con show <TAB>

zeigt die möglichen Optionen/Argumente an:

--active  apath  help  id  --order   path  uuid

Verwendung[edit | edit source]

wichtiger Hinweis: alle nmcli-Kommandos sollen nicht als root (also auch nicht mit sudo) sondern nur als normaler User ausgeführt werden.

Außerdem ist hier nur eine Auswahl der gebräuchlichsten Kommandos aufgeführt. Für weitere Anwendungsbeispiele empfiehlt sich wie immer der Aufruf der Manpage von nmcli. Wegen der Vielzahl der Möglichkeiten gibt es sogar zwei Manpages. Einmal

man nmcli

dort wird allgemein auf die vielen Optionen eingegangen, im Abschnitt EXAMPLES gibt es aber auch viele Beispiele für den praktischen Einsatz.

Zusätzlich noch die Manpage nmcli-examples

man nmcli-examples

die, wie der Name schon verrät, noch mehr und ausführlichere Beispiele für jeden Einsatzzweck bietet.

nmcli                                              # Übersicht über alle Geräte und Verbindungen
nmcli general                                      # generelle Übersicht über Status der aller Verbindungen des NetworkManagers
nmcli -p -m multi -f all con show                  # ausführliche Übersicht aller gespeicherten Verbindungen des NetworkManagers
nmcli dev                                          # Anzeige der Geräte und ihres Status
nmcli dev show                                     # ausführliche Anzeige über bekannte Geräte
nmcli dev wifi                                     # Anzeige aller WiFi in der Umgebung
nmcli con show                                     # Anzeige aller gespeicherter UUIDs
nmcli con show <NAME>                              # ausführliche Anzeige der Werte der Verbindung <NAME>
nmcli --show-secrets con show <NAME>               # ausführliche Anzeige der Werte der Verbindung <NAME> mit Passwort-Anzeige
nmcli con up uuid <UUID>                           # mit dem Gerät <UUID> verbinden
nmcli dev wifi connect <SSID>                      # mit dem WiFi <SSID> verbinden (interaktive Eingabe des WLAN-Key)
nmcli dev wifi connect <SSID> password <password>  # Verbinden des WiFi <SSID> (nicht interaktiv)
nmcli dev disconnect <Gerät>                       # Trennen des Gerätes [wlp3s0|enp2s0f0|eth0|wlan0]
nmcli r wifi off                                   # WiFi ausschalten
nmcli r wifi on                                    # WiFi einschalten
nmcli net off                                      # Netzwerk komplett abschalten
nmcli net on                                       # Netzwerk einschalten
nmcli radio wifi [on | off]                        # zeigt (ohne Option) oder setzt (on=an, off=aus) den Status von WiFi
nmcli radio wwan [on | off]                        # wie bei wifi, nur für  WWAN (mobile broadband)
nmcli radio all [on | off]                         # Anwendung für WiFi und WWAN gemeinsam (s.o.)
nmcli dev wifi hotspot password <Passwort>         # Einrichtung eines Hotspots mit dem Passwort <Passwort>
nmcli --show-secrets dev wifi hotspot              # Hotspot einrichten, das Passwort wird automatisch generiert u. angezeigt
nmcli gen perm                                     # listet die Zugriffsberechtigungen f. den NetworkManager auf
nmcli monitor                                      # beobachtet Veränderungen in den Verbindungen u. gibt diese aus

Weblinks[edit | edit source]

Netzwerkverbindungen per Kommando einrichten und verwalten