恢复默认网络配置需按发行版和网络管理机制区分:ubuntu 18.04+用netplan,需复制/usr/share/doc/netplan.io/examples/模板并sudo netplan apply;rhel/centos重建/etc/sysconfig/network-scripts/ifcfg-*后systemctl restart network;debian恢复/etc/network/interfaces后ifup网卡,并同步修正dns与主机名。

Linux 中恢复默认网络配置文件,不是简单删掉或覆盖某个文件,而是要分清“系统初始配置”和“当前生效配置”的区别,并根据发行版和网络管理机制选择对应方式。
先确认你用的是哪种网络管理方式
不同系统默认的网络配置机制不同:
- Ubuntu 18.04+ 默认用 Netplan(YAML 配置 + systemd-networkd 或 NetworkManager)
- Debian 传统方式用
/etc/network/interfaces+ifupdown - RHEL/CentOS/AlmaLinux 用
/etc/sysconfig/network-scripts/ifcfg-*+network服务 - 大多数现代系统还同时运行
systemd-resolved、NetworkManager或cloud-init,它们会动态覆盖手动修改
恢复 Netplan 默认配置(Ubuntu 20.04/22.04/24.04)
Netplan 本身不自带“出厂默认”,但安装时通常生成一个基础模板。若你删了或改乱了 /etc/netplan/*.yaml:
-
查看是否残留原始模板:
ls /usr/share/doc/netplan.io/examples/
常见如
static.yaml、dhcp.yaml,可复制一份作参考:sudo cp /usr/share/doc/netplan.io/examples/static.yaml /etc/netplan/01-default.yaml sudo chmod 644 /etc/netplan/01-default.yaml
-
编辑内容,适配你的网卡名(用
ip -br a查,如ens33或eth0):network: version: 2 renderer: networkd ethernets: ens33: dhcp4: true然后应用:
sudo netplan apply
⚠️ 注意:如果系统启用了 cloud-init(云镜像常见),它可能在重启时强行覆盖 /etc/netplan/50-cloud-init.yaml。需禁用其网络管理:
echo "network: {config: disabled}" | sudo tee /etc/cloud/cloud.cfg.d/90-disable-net.cfg
sudo cloud-init clean
恢复 RHEL/CentOS 系统的 ifcfg 文件
这类系统默认不会自动生成 ifcfg-*,但安装时通常有基础模板。若文件丢失或损坏:
-
先查网卡名:
ip -br a | awk '$2 == "UP" {print $1}' -
手动创建
/etc/sysconfig/network-scripts/ifcfg-ens33(以ens33为例):
Zynq Linux Hardware Debug下载Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
DEVICE=ens33 BOOTPROTO=dhcp ONBOOT=yes TYPE=Ethernet
-
若需静态 IP,改为:
DEVICE=ens33 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8
-
启用并重启网络服务:
sudo systemctl restart network
✅ 提示:DNS 设置写在 ifcfg-* 里才真正持久;直接改 /etc/resolv.conf 会被 NetworkManager 或 network 服务重写。
恢复 Debian 的 interfaces 文件
Debian 默认使用 /etc/network/interfaces。若该文件被清空或误删:
-
还原基础内容(适配你的主网卡,如
eth0或ens33):sudo tee /etc/network/interfaces
-
应用变更:
sudo ifdown --force ens33 && sudo ifup ens33 # 或重启服务 sudo systemctl restart networking
补充:DNS 和主机名也要一起还原
-
/etc/resolv.conf不建议直接编辑(除非停用systemd-resolved和NetworkManager):- 若用
systemd-resolved,改/etc/systemd/resolved.conf,然后sudo systemctl restart systemd-resolved - 若用 NetworkManager,改连接配置或在
ifcfg-*中加DNS1=
- 若用
-
主机名还原:
echo "ubuntu-server" | sudo tee /etc/hostname sudo hostnamectl set-hostname ubuntu-server
-
/etc/hosts至少保留:127.0.0.1 localhost 127.0.1.1 ubuntu-server.local ubuntu-server
恢复不是一键操作,关键在匹配你的系统角色(物理机/云实例/虚拟机)、网络服务栈和是否受 cloud-init 干预。备份过原始配置的话,优先从备份还原;没备份就按发行版规范重建,再验证路由、DNS、连通性三步闭环。










