Periodic network and graphics drivers fail on boot
https://askubuntu.com/questions/1565440/periodic-network-and-graphics-drivers-fail-on-boot
I'm still relatively new to Ubuntu, having installed it a few months ago, and I'm not a power user by any stretch. Every month or so, when I boot up, I find that I have no network (Ethernet cable) and the screen resolution is way less than it should be, like the graphics drivers are suddenly not there. These two features always break together: that is, I've never booted up to find no graphics drivers but have had internet, or vice versa.
This persists for several boot attempts, but then, somehow, it goes away. The last time it happened I was (I think) able to fix it by loading an older version of Ubuntu from the "Ubuntu Advanced.." boot menu option and updating from there. I could then boot as normal, but it's basically magic at this point.
I don't think it's a hardware problem like a loose motherboard connection, because Windows (dual boot) boots up just fine.
Nothing I've been able to find online addresses this issue in any direct way I can follow. There are so many potential rabbit holes I could go down looking for an answer, but I have no idea how to narrow down the search.
What could be causing this to happen? (Something I'm doing/not doing?) Where would be a sensible place to start looking for a solution?
Here's my Ubuntu version details:
$lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.4 LTS
Release: 24.04
Codename: noble
and the output from lshw when things are working:
$ sudo lshw -C network,display
*-display
description: VGA compatible controller
product: GM204 [GeForce GTX 970]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: /dev/fb0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=nvidia latency=0 mode=1920x1080 resolution=1920,1080 visual=truecolor xres=1920 yres=1080
resources: irq:167 memory:52000000-52ffffff memory:40000000-4fffffff memory:50000000-51ffffff ioport:4000(size=128) memory:c0000-dffff
*-network
description: Ethernet interface
product: RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:05:00.0
logical name: enp5s0
version: 16
serial: 18:c0:4d:4e:5a:84
size: 1Gbit/s
capacity: 1Gbit/se
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=6.17.0-20-generic duplex=full firmware=rtl8168h-2_0.0.2 02/26/15 ip=10.1.1.76 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:19 ioport:3000(size=256) memory:53304000-53304fff memory:53300000-53303fff
When things are broken, the only difference seems to be that the *-network entry is followed by UNCLAIMED (or something like that, I think... I didn't make a note of it).
Running dkms status gives no output.
Running dmesg gives more output than I can post here. The main differences I noticed were
[ 0.000000] x86/CPU: Running old microcode
...appearing near the start, and
[ 138.145962] FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
...at the end, when things were broken. There were a lot of other differences, but these were the most salient. (And I didn't read the whole thing because it was largely meaningless to me). Would it be worth figuring out a way to post the entire output?