# 零、NetworkManager和nmcli

# 1. 基本的连接管理
# 查看所有网络连接 
nmcli connection show 
# 查看活动连接 
nmcli connection show --active 
# 查看设备状态 
nmcli device status 
# 查看具体设备信息 
nmcli device show eth0
# 2.创建静态IP连接:
# 创建静态IP连接 
nmcli connection add type ethernet con-name static-eth0 ifname eth0 \ ip4 192.168.1.100/24 gw4 192.168.1.1 
# 设置DNS nmcli connection modify static-eth0 ipv4.dns "8.8.8.8 8.8.4.4" 
# 启用连接 nmcli connection up static-eth0
# 3.创建DHCP连接
nmcli connection add type ethernet con-name dhcp-eth0 ifname eth0 
nmcli connection up dhcp-eth0

4.修改现有连接

# 修改IP地址 
nmcli connection modify eth0 ipv4.addresses 192.168.1.200/24
# 修改网关 
nmcli connection modify eth0 ipv4.gateway 192.168.1.1 
# 重新激活连接使配置生效 
nmcli connection up eth0

# 一、检查信息

# 1.检查网卡是否安装成功
ifconfig | grep wlan

如果没有出现信息,表示无线网卡的安装有问题,需要检查网卡本身是否为Jetson Nano(含2GB)所支持。

# 2.检查网络服务状态(NetworkManager服务)
sudo systemctl status NetworkManager

如果看到状态为 inactive (dead) 或 failed,则重启它:

sudo systemctl restart NetworkManager

然后再运行:

nmcli device

看看是否能列出网卡(如 eth0, wlan0)。

# 3.检查网络图标进程

检查:

ps aux | grep nm-applet

如果只看到一行类似:
user 12345 0.0 0.1 123456 1234 pts/0 S+ 13:25 0:00 grep nm-applet,而没有真正的 nm-applet 进程,说明图标进程没启动。
可以手动启动它:

nm-applet &
# 4.检查网卡驱动是否正常
ip link

如果没有显示你的网卡(如 wlan0eth0),可能是驱动未加载:

sudo modprobe <驱动名>
# 5.查看网络接口
# 查看网络接口 
ip addr show 
# 或者老式的 
ifconfig -a 
# 添加IP地址(注意这个添加是临时的,重启后会失效) 
ip addr add 192.168.1.100/24 dev eth0 
# 删除IP地址 
ip addr del 192.168.1.100/24 dev eth0
# 6.检查驱动
sudo lshw -C network
# 2.netplan(jetson没有)
# 2.1netplan基础信息

Netplan 是 Ubuntu 从 17.10 版本开始引入 的一种统一网络配置工具,
它通过 YAML 文件(例如 /etc/netplan/01-netcfg.yaml)定义网络接口、DHCP、静态 IP、Wi-Fi 配置等。
Netplan 本身不直接管理网络,而是:

  • 在启动时读取 /etc/netplan/*.yaml
  • 然后调用底层的后端:
    • NetworkManager(桌面系统)
    • systemd-networkd(服务器系统)
# 2.2jetson为什么没有

因为 Jetson 使用的是 NVIDIA 修改过的 Ubuntu 系统(来自 L4T = Linux for Tegra),
虽然是基于 Ubuntu 22.04,但网络部分默认使用:NetworkManager直接管理网络接口,而不是通过 Netplan 配置。
这和标准 Ubuntu 桌面略有不同,是 NVIDIA 官方设计的。
所以:

  • /etc/netplan/ 目录可能不存在或为空
  • 网络连接由 NetworkManager 管理(GUI 或 nmcli 命令);
  • 启动脚本会自动启动 NetworkManager.service

# 二、网络配置

# 1.无线网络配置
# 扫描无线网络 
nmcli device wifi list 
# 连接无线网络 
nmcli device wifi connect "SSID" password "password" 
# 连接隐藏网络 
nmcli device wifi connect "SSID" password "password" hidden yes
# 2.网络配置文件管理
# 重新加载配置 
nmcli connection reload 
# 重启NetworkManager服务 
systemctl restart NetworkManager