How to Completely Disable the ‘upowerd’ (Power Management) Daemon in Ubuntu Server

The upowerd (UPower Daemon) is a system service in Ubuntu that provides an interface to enumerate power sources, monitor battery levels, and manage suspend/resume states. It is an essential component for Ubuntu Desktop installations running on laptops. However, if you are deploying Ubuntu Server on a dedicated, rack-mounted enterprise server or a cloud-based virtual machine, the server has no battery to monitor and its power state is managed externally by the hypervisor or BMC (Baseboard Management Controller). Leaving upowerd running on a headless server is a waste of memory and CPU cycles.

This guide explains how to completely disable the upowerd service in Ubuntu Server.

Stop and Disable the UPower Daemon

To permanently remove the power management daemon from the operating system’s execution path, we must halt it and explicitly mask it via systemctl.

  1. Log into your Ubuntu Server via SSH or local console using an account with sudo privileges.
  2. First, stop the active service to kill the currently running daemon:
    sudo systemctl stop upower.service
  3. Next, disable the service so it is not initialized during the next boot sequence:
    sudo systemctl disable upower.service
  4. To guarantee that no desktop environment packages or arbitrary D-Bus calls can accidentally wake the daemon, mask the service unit:
    sudo systemctl mask upower.service

Verify the Deactivation

By masking the service, you have effectively neutered the UPower daemon without needing to uninstall the package, which is beneficial as upower is often deeply intertwined as a dependency for other base system utilities.

To verify the lockdown is successful, run the following command to check the status of the unit:

systemctl status upower.service

The output will clearly indicate that the service is masked (symlinked to /dev/null) and the Active state will read inactive (dead). Furthermore, if you attempt to run the command-line utility upower --dump, it will fail to connect to the D-Bus daemon. Your server is now optimized for a static, AC-powered environment.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.