每日一个Linux命令解析——nmcli

nmcli:nmcli 是 NetworkManager 提供的一个命令行工具,用于管理网络连接和设备。它支持显示、创建、修改、激活和删除网络连接。

一、语法

nmcli [选项] [对象] [命令] [参数]
  • 选项:设置命令的行为,例如输出格式。
  • 对象:指定操作的目标,例如:
  • 命令:具体操作,例如显示、修改或删除。
  • 参数:对象和命令的附加信息。

二、选项

  • -a, –ask:提示缺失的参数。
  • -c, –colors auto|yes|no:是否在输出中使用颜色:auto 表明自动,yes 表明使用,no 表明不使用。
  • -e, –escape yes|no:是否在值中转义列分隔符:yes 表明转义,no 表明不转义。
  • -f, –fields <field,…>|all|common:指定要输出的字段,可以是特定字段列表、all(所有字段)或 common(常见字段)。
  • -g, –get-values <field,…>|all|common:-m tabular -t -f 的快捷方式,用于快速获取字段值。
  • -h, –help:显示协助信息。
  • -m, –mode tabular|multiline:设置输出模式:tabular 表格格式或 multiline 多行格式。
  • -o, –overview:以概览模式输出。
  • -p, –pretty:美化输出,使其更易于阅读。
  • -s, –show-secrets:允许显示密码等敏感信息。
  • -t, –terse:简洁模式输出。
  • -v, –version:
    显示程序版本信息。
  • -w, –wait <seconds>:设置等待操作完成的超时时间(秒)。

三、对象

  • agent:用于管理密码代理服务,即在需要用户输入密码时由代理处理。
  • connection:用于管理网络连接。这是 nmcli 最常用的子选项之一,支持显示、创建、修改、激活或删除网络连接。
  • device:用于管理网络设备,例如查看设备状态或将设备连接到网络。
  • general:用于显示 NetworkManager 的总体信息和管理其状态
  • help:用于显示 nmcli 的协助信息
  • monitor:实时监控 NetworkManager 的状态变化
  • networking:用于管理整个网络栈的状态
  • radio:用于管理无线电开关(Wi-Fi 和蓝牙等)。

四、示例

  1. 显示网络状态
nmcli g status #g是general的简介
  1. 列出设备
nmcli device #也可以使用nmcli d
  1. 列出连接
nmcli connection show  #简写nmcli con show
  1. 激活连接
nmcli connection up <连接名>
 #激活指定的连接。nmcli connection up "Wired connection 1"
  1. 断开连接
nmcli connection down <连接名>
  1. 修改连接
nmcli connection modify <连接名> <属性> <值>
-----------修改现有连接的配置。例如,设置静态 IP:---------------
nmcli connection modify "Wired connection 1" ipv4.addresses 192.168.1.100/24
nmcli connection modify "Wired connection 1" ipv4.gateway 192.168.1.1
nmcli connection modify "Wired connection 1" ipv4.dns "8.8.8.8,8.8.4.4"
nmcli connection modify "Wired connection 1" ipv4.method manual
  1. 添加新连接
nmcli connection add type <类型> con-name <连接名> ifname <接口名> <参数>
--------添加一个有线连接:------------------
nmcli connection add type ethernet con-name "My Ethernet" ifname eth0 ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8,8.8.4.4" ipv4.method manual
  1. 列出WiFi网络
nmcli device wifi list
  1. 修改完成后,需要重新激活连接以使更改生效:
nmcli connection up "Wired connection 1"
  1. nmcli 提供脚本友善模式,可以使用 -t 和 –fields 简化输出。例如:
nmcli -t --fields NAME connection show #输出只包含连接名,用于脚本处理。

五、总结

nmcli功能强劲,nmcli 所做的修改会自动保存到
/etc/NetworkManager/system-connections/ 的配置文件中,因此是永久生效的。无需额外保存操作。

每日一个Linux命令解析——nmcli

#Linux命令#

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容