You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu服务器休眠期间及休眠后以太网故障求助

Ubuntu服务器休眠期间及休眠后以太网故障求助

各位大佬好,我最近碰到一个Ubuntu服务器休眠后的以太网故障问题,折腾了半天没搞定,来求助大家!

先给大家说下我的设备和环境情况:

  • 设备是一台旧iMac,装的是Ubuntu Server 24.04 LTS(内核版本是GNU/Linux 6.8.0-35-generic x86_64)
  • 之前它是通过以太网连路由器上网的,现在改成直接用以太网电缆连另一台同款的macOS系统iMac
  • 另一台macOS在系统偏好设置里设的IP是192.168.0.33,子网掩码255.255.255.0
  • 我的Ubuntu服务器在/etc/network/interfaces里手动配置的IP是192.168.0.48,现在只要手动执行命令:
    sudo ifdown enp2s0 && sudo ifup -v enp2s0
    
    以太网就能正常工作,此时用ifconfig查看网卡状态是这样的:

    enp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
    inet 192.168.0.48 netmask 255.255.255.0 broadcast 192.168.0.255
    ether 3c:07:54:59:5c:b4 txqueuelen 1000 (Ethernet)
    RX packets 726 bytes 91026 (91.0 KB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 549 bytes 98547 (98.5 KB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
    device interrupt 16

但是问题来了:当服务器进入休眠状态后,再唤醒时以太网就彻底罢工了——要么和另一台macOS iMac完全连不上,要么网卡状态异常,必须重新执行上面的ifdown/ifup命令才能恢复正常。

我自己梳理了几个排查方向,也想请教大家有没有其他思路:

1. 网卡电源管理会不会是元凶?

我怀疑Ubuntu休眠时自动给网卡断了电,唤醒后没正常恢复。打算试试禁用网卡的电源管理:

  • 编辑/etc/network/interfaces,在enp2s0的配置段里加一行post-up ethtool -s enp2s0 wol g,启用Wake-on-LAN的同时阻止休眠断电
  • 先手动执行sudo ethtool -s enp2s0 wol g,测试下休眠唤醒后的状态

2. 能不能让系统唤醒后自动重启网卡?

如果电源管理的方法没用,我想能不能整个自动脚本,让系统一唤醒就重新加载网卡。比如整个systemd服务:

  • 创建服务文件:sudo nano /etc/systemd/system/network-restart.service
  • 写入以下内容:
    [Unit]
    Description=Restart network interface on resume
    After=suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
    
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/sudo /sbin/ifdown enp2s0
    ExecStart=/usr/bin/sudo /sbin/ifup -v enp2s0
    
    [Install]
    WantedBy=suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
    
  • 然后执行sudo systemctl daemon-reload和sudo systemctl enable network-restart.service,应该就能自动触发了

3. NetworkManager会不会在搞事情?

虽然我是用/etc/network/interfaces手动配置的,但听说Ubuntu Server 24.04默认开了NetworkManager,会不会它在休眠后覆盖了我的配置?打算:

  • 先查下NetworkManager状态:sudo systemctl status NetworkManager
  • 如果它在跑,要么直接禁用:sudo systemctl disable --now NetworkManager,要么在NetworkManager里设置忽略enp2s0网卡,不让它干预手动配置

4. 会不会是内核驱动的兼容性问题?

毕竟是旧iMac的网卡,会不会休眠唤醒后内核驱动抽风了?打算:

  • 先查下网卡对应的内核模块:lspci -k | grep -A 2 Ethernet
  • 要么试试在唤醒时重新加载模块,要么直接升级内核到最新稳定版:sudo apt update && sudo apt upgrade linux-generic

有没有大佬碰到过类似的问题?或者还有其他我没考虑到的排查方向?麻烦指点一下!

备注:内容来源于stack exchange,提问作者Langdon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 11:49:41