Команда Linux nmcli

Linux 命令大全Энциклопедия команд Linux


Что такое nmcli

nmcli — это инструмент командной строки для NetworkManager, используемый для настройки и управления сетевыми подключениями в системах Linux. Это официальный клиент NetworkManager, предоставляющий более мощные и гибкие возможности управления сетью по сравнению с графическим интерфейсом.

Основные возможности nmcli

  • Полнофункциональная поддержка: охватывает почти все функции NetworkManager
  • Удобство для скриптов: подходит для сценариев автоматизации и удалённого управления
  • Без зависимостей: не требует графического интерфейса, работа исключительно в командной строке
  • Обратная связь в реальном времени: немедленно отображает результаты выполнения команд

Базовый синтаксис nmcli

Базовый формат команд nmcli выглядит следующим образом:

nmcli [OPTIONS] OBJECT { COMMAND | help }

Общие типы OBJECT

  • general: общее состояние и операции NetworkManager
  • networking: общее управление сетью
  • radio: переключатель беспроводной сети
  • connection: конфигурация сетевых подключений
  • device: управление сетевыми устройствами

Общие параметры OPTIONS

Опция Описание
-t Краткий вывод (подходит для обработки скриптами)
-p Удобочитаемый вывод (более читаемый)
-h Показать справочную информацию
-v Показать информацию о версии

Подробное объяснение распространённых команд nmcli

1. Просмотр состояния сети

Просмотр общего состояния NetworkManager:

Пример

nmcli general status

Пример вывода:

STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled

2. Управление сетевыми подключениями

Список всех сетевых подключений:

Пример

nmcli connection show

Активировать/деактивировать подключение:

Пример

nmcli connection up "имя подключения"
nmcli connection down "имя подключения"

3. Управление сетевыми устройствами

Вывести список всех сетевых устройств:

Пример

nmcli device status

Пример вывода:

DEVICE  TYPE      STATE      CONNECTION 
eth0    ethernet  已连接    有线连接 1 
wlan0   wifi      已断开    --         
lo      loopback  未托管    --

Просмотр подробной информации об устройстве:

Пример

nmcli device show eth0

Управление беспроводной сетью

Сканирование доступных сетей WiFi

Пример

nmcli device wifi list

Подключение к сети WiFi

Пример

nmcli device wifi connect "имя SSID" password "пароль"

Создать новый профиль подключения WiFi

Пример

nmcli connection add type wifi ifname wlan0 con-name "MyWiFi" ssid "SSID name"
nmcli connection modify "MyWiFi" wifi-sec.key-mgmt wpa-psk
nmcli connection modify "MyWiFi" wifi-sec.psk "password"

Настройка проводной сети

Создание подключения со статическим IP

Пример

nmcli connection add type ethernet ifname eth0 con-name "static connection" \
ip4 192.168.1.100/24 gw4 192.168.1.1
nmcli connection modify "static connection" ipv4.dns "8.8.8.8,8.8.4.4"

Изменение существующего подключения на DHCP

Пример

nmcli connection modify "connection name" ipv4.method auto

Продвинутое использование

Создание VPN-подключения

Пример

nmcli connection add type vpn vpn-type openvpn \
con-name "MyVPN" ifname tun0 \
vpn.data "remote=vpn.example.com, username=user, password=pass"

Создание моста

Пример

nmcli connection add type bridge ifname br0 con-name "MyBridge"
nmcli connection add type bridge-slave ifname eth0 master br0

Создание VLAN

Пример

nmcli connection add type vlan ifname eth0.100 con-name "VLAN100" \
dev eth0 id 100 ip4 192.168.100.100/24

Решение распространённых проблем

1. Сетевое устройство отображается как "unmanaged"

Пример

# Проверьте NetworkManager.conf
cat /etc/NetworkManager/NetworkManager.conf

# Если вы видите конфигурацию unmanaged-devices, вы можете закомментировать соответствующие строки
# Затем перезапустите NetworkManager
systemctl restart NetworkManager

2. Забыли пароль подключения

Пример

nmcli connection show "connection name" | grep psk

3. Сброс конфигурации сети

Пример

nmcli connection reload

Практические упражнения

  1. Используйте nmcli для подключения к вашей сети WiFi
  2. Создайте проводное соединение со статическим IP
  3. Просканируйте и выведите список всех доступных сетей WiFi
  4. Просмотрите подробную информацию о текущем активном соединении

Итог

nmcli — мощный инструмент для управления сетью в системе Linux. Прочитав эту статью, вы сможете:

  • Понимать основные концепции и структуру синтаксиса nmcli
  • Используйте nmcli для управления проводными и беспроводными сетевыми подключениями
  • Настройте статические IP- и DHCP-подключения
  • Обрабатывайте распространённые проблемы с сетевыми подключениями

Освоение nmcli позволяет эффективно управлять сетями в серверных средах без графического интерфейса, а также является одним из важных навыков для системных администраторов Linux.

Linux 命令大全Энциклопедия команд Linux

Другие расширения