我现在是 Linux 的全职用户。一开始 Ubuntu 可以胜任,但在使用了几个月的 Unity 后,我想到了切换到 KDE。在厌倦了 KDE 之后,我切换到了 XFCE,然后问题就来了。如果我启动 PC 并登录,则无法使用互联网。lspci/ifconfig 中缺少 eth0,只显示 l0。重启后,一切正常。经过反复搜索,我找不到任何线索,并认为 Ubuntu 可能是问题所在,所以我切换到了 Manjaro XFCE。这里也发生了同样的事情,但系统速度更快,而且在登录之前重新启动它并不麻烦。
我不知道这是硬件问题还是 Manjaro 中的网络管理器的软件错误,但如果我从 Live USB 启动,一切都正常。
我该如何解决这个问题,以便我的互联网无需重启就能正常工作?
答案1
我怀疑有三种可能性:
- 硬件故障(部件损坏或连接不可靠)
- 驱动程序故障(无法正确处理某些状态)
- 软件故障(由于某些功能/错误而无法调出界面)
要尝试的事情(您可能需要调整/更改使用的命令):
ifconfig -a
ifconfig eth0 up
dhclient eth0
您也可以尝试使用rmmod
/重新加载驱动程序模块modprobe
。
编辑:
由于之前的尝试没有帮助,我怀疑是硬件问题(连接不可靠、组件烧坏等)。如果重启有帮助,问题可能与电源有关 - 您可以尝试:
- 不要重新启动,而是完全关闭电脑(甚至可以拔掉公用电源),等待几分钟后再打开;
- 尝试在操作系统开始启动之前重置机器(打开,等到显示引导加载程序并重置);
- 尝试取出并插入 LAN 卡(如果它不是集成的)。
编辑2:
从评论中可以清楚地看出,问题与“TCS快速校准失败”启动时出现错误信息。可以尝试以下操作:
- 检查
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
- 互联网正常工作和不正常工作时的内容是否不同? - 尝试添加内核启动参数
clocksource=acpi_pm
或clocksource=hpet
(有想法这页) - 检查 PSU电容器瘟疫(MB 已经根据评论进行了检查)
- 尝试移除 LAN 卡 - 您仍然看到 TSC 错误吗?
- 如果可以的话 - 尝试安装一些较旧的 Linux 发行版到硬盘(不是 CD/USB 启动)并查看它是否与 LAN 卡配合得更好。
- 尝试更换 PSU 或 LAN 卡,因为这些组件最有可能发生故障。
根据我的经验,我敢肯定问题的根源是 PSU(在类似硬件上已经看到足够多的奇怪问题)。
编辑4:
似乎不是 PSU...如果上述其他选项失败,请尝试捕获:
dmesg > boot.log
并检查 LAN 工作时和不工作时的差异。您至少应该看到您之前描述的 TSC 错误,但也可能存在其他差异:
diff bott_ok.log boot_fail.log
编辑5:
从评论来看,问题似乎与冷复位和热复位期间的 PCI 枚举有关,lspci
在 GRUB 加载程序中(在 Linux 内核加载之前)使用时识别。要尝试的事情:
- 使用诸如
reset_devices
、、、nobios
等选项启动内核(仅举几个引起我注意的conf1
选项conf2
,您可以在中找到更多Documentation/kernel-parameters.txt
,请先查找 BIOS 或 PCI 相关选项); - sice 机器已成功从 USB 加载,从 HDD 启动时插入 USB 设备可能会触发正确的行为。
编辑6:
清除 BIOS 设置(重置、使用 MB 上的跳线清除、升级/重写)。尝试使用“重置配置数据”、“安装 PnP OS”、PCI 时序或类似的 BIOS 设置。