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)
酷番叔酷番叔
上一篇 5小时前
下一篇 4小时前

相关推荐

  • linux如何把一个文件

    Linux 中,可使用 mv 命令将一个文件移动到指定目录,如

    2025年8月18日
    1500
  • linux下如何启动war包

    Linux下,可先确保已安装Java环境,然后使用命令`java -jar your_war_file.

    2025年8月17日
    1400
  • 如何导出单个系统日志?

    在Linux系统中,日志文件记录了系统运行的关键信息,导出日志是故障排查、安全审计或数据备份的常见需求,以下是几种专业且高效的日志导出方法,操作前请确保您拥有sudo权限或相关文件的读取权限,基础文件复制命令使用 cp 直接复制# 导出整个日志目录sudo cp -r /var/log /home/user/l……

    2025年7月15日
    3600
  • iPad如何安全SSH管理Linux服务器?

    核心准备工作Linux设备配置确保Linux已安装SSH服务: sudo apt update && sudo apt install openssh-server # Debian/Ubuntusudo dnf install openssh-server # Fedora/CentOS启动服……

    2025年6月28日
    2700
  • Linux下Tomcat安全配置全指南?

    环境准备安装JDKsudo apt updatesudo apt install openjdk-11-jdk # 推荐JDK 11java -version # 验证安装下载Tomcat官网获取最新稳定版(推荐Tomcat 9/10):wget https://downloads.apache.org/tom……

    2025年7月6日
    3700

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信