linux如何禁用网卡

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

linux如何禁用网卡

使用ifconfig命令禁用网卡

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

临时禁用

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

  • 查看当前网卡名称:执行ifconfig -aip a,获取目标网卡名(如eth0ens33等)。
  • 执行禁用命令:
    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命令禁用网卡

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

相关问答FAQs

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

  • 临时禁用(ifconfig/ip):执行sudo ifconfig <网卡名> upsudo ip link set <网卡名> up
  • nmcli临时断开:执行sudo nmcli connection up "<连接名>"
  • 永久禁用(配置文件):恢复配置文件设置(如ONBOOT=yesautoconnect: yes、删除disabled: true),然后重启网络服务(sudo systemctl restart networksudo 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

相关推荐

  • WinPE环境下如何安装Linux?详细步骤与方法指南

    在Windows PE(WinPE)环境下安装Linux系统,通常用于系统崩溃无法进入Windows、需要全新安装双系统,或在无操作系统的裸机上部署Linux,整个过程涉及启动盘准备、磁盘分区、系统安装及引导配置等关键步骤,需谨慎操作以避免数据丢失,以下是详细流程及注意事项,准备工作在开始安装前,需准备好以下工……

    2025年10月8日
    15600
  • Linux使用命令后如何返回到上一级或初始界面?

    在Linux系统中,使用命令后的“返回”包含多个层面的含义,既包括命令执行后的状态反馈(如成功或失败),也涉及目录切换、输出结果获取、历史命令调用等场景,理解这些“返回”机制,能更高效地使用Linux命令行,命令执行后的状态返回:退出状态码(Exit Status)Linux命令执行完成后,会返回一个整数状态码……

    2025年10月4日
    14500
  • Linux如何查询硬件序列号?

    在Linux系统中,序列号查询通常涉及硬件设备(如主板、CPU、硬盘、内存等)或操作系统本身的标识信息,不同硬件或系统组件的序列号存储位置和查询方式各异,需通过特定命令或工具获取,以下从硬件序列号、操作系统序列号两大类展开详细说明,涵盖常用命令、操作步骤及输出解读,硬件序列号查询方法硬件序列号是设备的唯一标识……

    2025年10月5日
    17700
  • linux上如何运行小游戏

    Linux 上运行小游戏,可通过安装相关游戏软件包,或使用支持小游戏的模拟器等

    2025年8月17日
    13500
  • Linux中安装软件有哪些常用方法?具体步骤是怎样的?

    在Linux系统中,安装软件的方式多样,不同方法适用于不同场景,主要取决于发行版、软件需求及个人偏好,以下是几种常见安装方式的详细说明:通过包管理器安装(主流方式)包管理器是Linux发行版自带的核心工具,用于自动下载、安装、更新和卸载软件,并处理依赖关系,是最安全、便捷的方式,不同发行版的包管理器不同,需根据……

    2025年9月22日
    13300

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信