Linux networkctl reload 命令详解

networkctl reload 命令会重新加载 systemd-networkd 的所有配置文件,具体路径和加载逻辑如下: 1. 配置文件的默认路径 systemd-networkd 从以下目录按优先级加载配置: (1)主配置文件目录 /etc/systemd/network/ 用户自定义配置(优先级最高,覆盖其他目录)。 /run/systemd/network/ 临时运行时配置(重启后丢失)。 /usr/lib/systemd/network/ 系统默认配置(优先级最低)。 (2)配置文件类型 .network:定义接口的网络参数(IP、路由、DNS 等)。 示例:/etc/systemd/network/10-static-eth0.network .link:物理/虚拟设备属性(MAC 地址、MTU 等)。 示例:/usr/lib/systemd/network/99-default.link .netdev:创建虚拟设备(如 VLAN、VPN)。 示例:/etc/systemd/network/20-vlan.netdev 2. reload 的具体行为 当执行 networkctl reload 时: 重新加载所有 .network、.link、.netdev 文件(包括上述三个目录中的配置)。 动态应用新配置(无需重启服务或接口): 如果接口的配置文件被修改,会根据新配置重新生效。 如果删除了某个配置文件,相关接口会恢复为 unmanaged 状态。 日志记录: 通过 journalctl -u systemd-networkd 可查看重载过程中的错误或警告。 3. 验证配置文件的路径 方法 1:通过 networkctl status 查看 sudo networkctl status eth0 | grep "Network File" 输出示例: Network File: /etc/systemd/network/10-static-eth0.network 方法 2:列出所有活动配置 sudo networkctl list | grep -i configured 输出中会显示哪些接口已被配置,并说明它们由哪个文件管理。 ...

July 12, 2023 · 1 min · 133 words

Linux 中的 networkctl 命令

networkctl 是一个用于管理和监控网络接口和连接状态的命令行工具,它是 systemd-networkd 服务的一部分。systemd-networkd 是一个网络管理工具,用于配置和管理网络接口,而 networkctl 提供了查看和管理这些接口的命令行接口。 1. 安装 networkctl 是 systemd-networkd 提供的命令行工具,用于管理和监控由 systemd-networkd 管理的网络接口和连接状态。它提供了接口状态查看、配置重载、连接控制等功能,适合在基于 systemd 的 Linux 发行版(如 Ubuntu Server、Debian、Fedora 等)中使用。 1. 基本命令 (1)列出所有网络接口 networkctl list 输出示例: IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 2 eth0 ether routable configured 3 wlan0 wlan no-carrier configuring IDX:接口索引号。 LINK:接口名称(如 eth0、wlan0)。 TYPE:接口类型(ethernet、wlan、loopback 等)。 OPERATIONAL:当前操作状态: routable:已配置并可路由(正常工作)。 no-carrier:无物理连接。 degraded:部分功能不可用(如 DHCP 失败)。 off/unmanaged:未管理。 SETUP:配置状态: configured:已通过 networkd 配置。 unmanaged:不由 networkd 管理。 configuring:正在配置(如 DHCP 获取中)。 (2)查看单个接口的详细信息 networkctl status eth0 输出示例: ...

July 10, 2023 · 2 min · 272 words