linux如何禁用网卡

在Linux系统中,禁用网卡是常见的网络管理操作,通常用于故障排查、安全隔离、节能降耗等场景,不同Linux发行版和网卡管理工具下,禁用网卡的方法略有差异,本文将详细介绍多种常用方法,涵盖临时禁用和永久禁用的操作步骤,并分析各方法的适用场景及注意事项。

linux如何禁用网卡

使用ifconfig命令禁用网卡

ifconfig是传统的Linux网络配置工具,虽在新版系统中逐渐被ip命令替代,但在部分传统发行版(如CentOS 6、Debian 7等)中仍广泛使用。

临时禁用

通过ifconfig命令将网卡状态设置为down,即可立即禁用网卡,效果即时生效,重启网络服务或系统后失效。
操作步骤:

  • 查看当前网卡名称:执行ifconfig -a或ip a,获取目标网卡名(如eth0、ens33等)。
  • 执行禁用命令:
    sudo ifconfig <网卡名> down

    示例:禁用eth0网卡

    sudo ifconfig eth0 down

永久禁用

需修改网卡的配置文件,使禁用设置在系统重启后依然生效。

  • Debian/Ubuntu系统:编辑/etc/network/interfaces文件,在目标网卡配置段添加up ifconfig <网卡名> down或直接注释掉原配置,设置iface <网卡名> inet manual(手动模式,不自动启用)。
    示例(禁用eth0):

    sudo nano /etc/network/interfaces

    在文件中修改或添加:

    auto eth0
    iface eth0 inet manual
    up ifconfig eth0 down

    保存后执行sudo /etc/init.d/networking restart重启网络服务。

  • CentOS/RHEL 6系统:编辑/etc/sysconfig/network-scripts/ifcfg-<网卡名>文件,设置ONBOOT=no(开机不启用该网卡)。
    示例:

    sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
    ONBOOT=no

    保存后执行sudo service network restart重启网络服务。

使用ip命令禁用网卡

ip是iproute2工具包中的命令,是现代Linux系统(如Ubuntu 18+、CentOS 7+)推荐的网络管理工具,功能比ifconfig更强大。

临时禁用

通过ip link set命令修改网卡状态,操作简单且即时生效。
操作步骤:

linux如何禁用网卡

  • 查看网卡名:ip a
  • 执行禁用命令:
    sudo ip link set <网卡名> down

    示例:禁用ens33

    sudo ip link set ens33 down

永久禁用

需结合systemd网络配置或发行版特定的网络配置文件。

  • systemd-networkd管理网络(如Arch Linux、CoreOS):
    禁用对应网卡的.network配置文件(如/etc/systemd/network/ens33.network),或修改文件内容设置[Link]段的RequiredForOnline=no(非必需在线),然后重启systemd-networkd服务。
    示例(禁用配置文件):

    sudo mv /etc/systemd/network/ens33.network /etc/systemd/network/ens33.network.bak
    sudo systemctl restart systemd-networkd
  • CentOS/RHEL 7+系统:若使用NetworkManager,可通过nmcli修改(见下文);若使用传统网络服务,修改/etc/sysconfig/network-scripts/ifcfg-<网卡名>,设置ONBOOT=no,然后执行sudo systemctl restart network。

使用nmcli命令禁用网卡

nmcli是NetworkManager的命令行工具,适用于采用NetworkManager管理网络的发行版(如Ubuntu、Fedora、RHEL 7+等),支持动态管理网卡连接。

临时禁用

通过断开连接或设置网卡为“未管理”状态实现禁用。
操作步骤:

  • 查看网卡及连接名:nmcli connection show

  • 方法1:断开连接(推荐)

    sudo nmcli connection down "<连接名>"

    示例:断开eth0连接

    sudo nmcli connection down "eth0"
  • 方法2:设置网卡为未管理(需重启NetworkManager)

    sudo nmcli device set <网卡名> managed no
    sudo systemctl restart NetworkManager

永久禁用

通过修改连接配置,禁用自动连接或删除连接。

linux如何禁用网卡

  • 禁用自动连接:保留连接配置但阻止开机自动启用。

    sudo nmcli connection modify "<连接名>" connection.autoconnect no

    示例:禁用eth0的自动连接

    sudo nmcli connection modify "eth0" connection.autoconnect no
  • 删除连接:彻底移除连接配置(需重新添加才能使用)。

    sudo nmcli connection delete "<连接名>"

    示例:删除eth0连接

    sudo nmcli connection delete "eth0"

修改网络配置文件永久禁用(发行版特定)

不同发行版的网络配置文件结构不同,直接修改文件可实现永久禁用。

Ubuntu/Debian(Netplan)

Ubuntu 18+及后续版本使用Netplan配置网络,配置文件位于/etc/netplan/目录下(如01-network-manager-all.yaml)。
操作步骤:

  • 编辑配置文件:
    sudo nano /etc/netplan/01-network-manager-all.yaml
  • 在目标网卡配置中添加disabled: true或删除该网卡配置。
    示例:

    network:
      version: 2
      ethernets:
        eth0:
          dhcp4: no
          disabled: true  # 禁用网卡
  • 应用配置:
    sudo netplan apply

CentOS/RHEL 8+(NetworkManager)

若使用NetworkManager,可通过修改ifcfg文件并设置NM_CONTROLLED=no(禁止NetworkManager管理),再重启服务。
示例:

sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
ONBOOT=no
NM_CONTROLLED=no

保存后执行sudo systemctl restart NetworkManager。

不同方法对比及注意事项

方法对比

方法 临时禁用 永久禁用 适用场景 优点 缺点
ifconfig 支持 支持 传统系统,简单操作 命令简单,直观 新系统默认未安装,功能有限
ip 支持 支持 现代Linux,推荐 功能强大,官方推荐 需熟悉ip命令语法
nmcli 支持 支持 NetworkManager管理系统 图形化工具支持,管理灵活 依赖NetworkManager,学习成本
配置文件 不支持 支持 需长期禁用,无服务干预 开机即生效,稳定 需熟悉配置文件结构,易出错

注意事项

  1. 确认网卡名:操作前务必通过ip a或ifconfig -a确认网卡名称,避免误禁用其他网卡(如管理网卡的SSH连接)。
  2. 权限问题:所有命令均需root权限或sudo执行,普通用户无法直接修改网络配置。
  3. 发行版差异:不同发行版的网络管理工具(如NetworkManager、systemd-networkd、传统网络服务)不同,需选择对应方法。
  4. 测试环境:生产环境操作前建议在测试机验证,避免因误操作导致网络中断。

相关问答FAQs

问题1:Linux禁用网卡后如何重新启用?
解答:根据禁用方法选择对应启用命令:

  • 临时禁用(ifconfig/ip):执行sudo ifconfig <网卡名> up或sudo ip link set <网卡名> up。
  • nmcli临时断开:执行sudo nmcli connection up "<连接名>"。
  • 永久禁用(配置文件):恢复配置文件设置(如ONBOOT=yes、autoconnect: yes、删除disabled: true),然后重启网络服务(sudo systemctl restart network或sudo netplan apply)。
    示例:CentOS中恢复ONBOOT=yes后,执行sudo systemctl restart network;Ubuntu中Netplan配置删除disabled: true后,执行sudo netplan apply。

问题2:为什么使用nmcli禁用网卡后重启系统,网卡又自动启用了?
解答:可能是未正确设置NetworkManager的连接属性。nmcli connection down是临时断开连接,但连接配置中的autoconnect默认为yes,系统重启后NetworkManager会自动尝试连接,需执行sudo nmcli connection modify "<连接名>" connection.autoconnect no,禁用自动连接,然后重启系统即可,验证命令:nmcli connection show "<连接名>" | grep autoconnect,应显示autoconnect: no。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/21406.html

赞 (0)
酷番叔酷番叔
上一篇 2025年9月8日 10:33
下一篇 2025年9月8日 10:52

相关推荐

  • 如何查看linux的配置文件

    使用文本编辑器如 vi、nano 等打开查看,或用 `cat

    2025年8月16日
    25800
  • Linux复制粘贴,图形与终端有何不同?

    图形界面下的复制粘贴(与Windows/macOS类似)鼠标操作复制:选中文本/文件 → 右键菜单选择“复制”,或快捷键 Ctrl + C,粘贴:光标定位目标位置 → 右键菜单选择“粘贴”,或快捷键 Ctrl + V,适用场景:文件管理器(如Nautilus)、文本编辑器(如Gedit)、浏览器等,文件操作复制……

    2025年8月5日
    30700
  • 如何在Ubuntu/Debian安装WoeUSB?

    在Linux环境下安装Windows 7(双系统方案)需谨慎操作,以下是详细步骤及注意事项,操作前请务必备份所有重要数据,分区调整可能导致数据丢失,准备工作硬件要求空闲磁盘空间:≥30GB(建议50GB+)4GB以上U盘(用于制作Win7安装盘)稳定的网络连接(用于下载工具)所需工具Windows 7 ISO镜……

    2025年7月6日
    25600
  • Linux系统对拷如何快速完成?

    前言对拷(克隆)Linux系统是将现有操作系统完整复制到新存储设备的专业操作,适用于硬盘升级、系统迁移或批量部署,操作前务必备份所有关键数据,错误执行可能导致数据永久丢失,本指南涵盖三种权威方法,请根据技术能力选择,准备工作硬件要求目标磁盘容量 ≥ 源磁盘已用空间(建议大20%)SATA-USB转接器(笔记本适……

    2025年7月21日
    39900
  • 如何查看SELinux状态?

    查看 SELinux 运行状态使用 sestatus 命令 sestatus输出关键信息解读:SELinux status:enabled 表示已启用,disabled 表示已禁用,Current mode:enforcing:强制模式(拒绝违规操作并记录日志),permissive:宽容模式(仅记录日志,不拒……

    2025年6月18日
    29600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信