插件窝 干货文章 linux重启网卡的命令有哪些

linux重启网卡的命令有哪些

NetworkManager 网卡 sudo 使用 806    来源:    2025-04-12

在 Linux 系统中,重启网络接口(网卡)的命令取决于你使用的网络管理工具和发行版。以下是常见的几种方法:


1. 使用 systemctl(Systemd 系统)

适用于大多数现代 Linux 发行版(如 Ubuntu 18.04+、CentOS 7+、Debian 9+等):

# 重启整个网络服务(所有网卡)
sudo systemctl restart NetworkManager  # 如果使用 NetworkManager
sudo systemctl restart networking      # 部分 Debian/Ubuntu 系统
sudo systemctl restart network         # 部分 CentOS/RHEL 系统

2. 使用 ifdownifup(传统方式)

适用于支持 ifupdown 工具的系统(需 root 权限):

# 先关闭再启动指定网卡(如 eth0 或 ens33)
sudo ifdown eth0 && sudo ifup eth0

注意:部分新系统可能默认未安装 ifupdown,需手动安装:

sudo apt install ifupdown  # Debian/Ubuntu
sudo yum install ifupdown  # CentOS/RHEL

3. 使用 ip 命令(临时重启)

通过 ip 命令先禁用再启用网卡(需 root 权限):

sudo ip link set eth0 down  # 关闭网卡
sudo ip link set eth0 up    # 启动网卡

4. 使用 nmcli(NetworkManager 工具)

如果系统使用 NetworkManager(如桌面版 Ubuntu/CentOS):

# 重启指定连接(通过 `nmcli con show` 查看连接名)
sudo nmcli con down "Wired Connection 1" && sudo nmcli con up "Wired Connection 1"

5. 使用 service 命令(旧版系统)

适用于 SysVinit 系统(如 CentOS 6、旧版 Ubuntu):

sudo service network restart         # CentOS 6
sudo service networking restart     # Debian/Ubuntu 旧版

6. 重新加载网络配置(无需重启)

如果仅需重新加载配置(如修改了 /etc/network/interfaces):

sudo systemctl reload NetworkManager  # NetworkManager 系统
sudo /etc/init.d/networking reload   # Debian/Ubuntu 旧版

注意事项

  • 网卡名称:使用 ip aifconfig -a 确认当前网卡名称(如 eth0ens33enp0s3)。
  • 网络管理工具:确认系统使用的是 NetworkManager 还是 network-scripts(如 CentOS 8+ 默认无 network-scripts)。
  • 远程连接风险:重启网卡可能导致 SSH 连接中断,建议通过控制台操作。

常见问题排查

  • 命令不存在:安装对应工具(如 ifupdownNetworkManager)。
  • 配置错误:检查 /etc/network/interfaces/etc/sysconfig/network-scripts/ifcfg-eth0
  • 日志查看:使用 journalctl -u NetworkManagertail -f /var/log/syslog 查看错误。

根据你的系统选择合适的方法即可!