Linux Power Management - ryzendew/Linux-Tips-and-Tricks GitHub Wiki
Linux Power Management Guide
Complete beginner-friendly guide to power management on Linux, covering Arch Linux, CachyOS, and other distributions including laptop battery optimization, CPU frequency scaling, power saving, and TLP configuration.
Table of Contents
- Understanding Power Management
- CPU Frequency Scaling
- Laptop Battery Optimization
- TLP Configuration
- Power Profiles
- Suspend and Hibernate
- Power Monitoring
- Troubleshooting
Understanding Power Management
What is Power Management?
Power management controls how system uses power.
What it does:
- Battery life: Extends laptop battery life
- Performance: Balances performance and power
- Heat management: Reduces heat generation
- Efficiency: Improves power efficiency
Why it matters:
- Laptops: Extends battery life
- Desktops: Reduces power consumption
- Heat: Reduces system heat
- Cost: Saves electricity
CPU Frequency Scaling
Install cpupower
Install tools:
# Arch/CachyOS
sudo pacman -S cpupower
# Debian/Ubuntu
sudo apt install linux-cpupower
# Fedora
sudo dnf install kernel-tools
CPU Governors
Available governors:
- performance: Maximum performance
- powersave: Maximum power saving
- ondemand: Dynamic scaling
- conservative: Gradual scaling
- schedutil: Scheduler-based (default on modern kernels)
Set Governor
Change governor:
# Set performance
sudo cpupower frequency-set -g performance
# Set powersave
sudo cpupower frequency-set -g powersave
# Set ondemand
sudo cpupower frequency-set -g ondemand
Enable at Boot
Persist settings:
# Create service
sudo systemctl enable cpupower.service
# Or use systemd
sudo systemctl enable cpupower
Laptop Battery Optimization
Check Battery Status
Check battery:
# Using upower
upower -i /org/freedesktop/UPower/devices/battery_BAT0
# Or simple check
cat /sys/class/power_supply/BAT0/capacity
Install TLP
Install TLP:
# Arch/CachyOS
sudo pacman -S tlp tlp-rdw
# Debian/Ubuntu
sudo apt install tlp tlp-rdw
# Fedora
sudo dnf install tlp tlp-rdw
Enable service:
sudo systemctl enable --now tlp.service
What TLP does:
- Automatically optimizes power settings
- CPU frequency scaling
- GPU power management
- Wi-Fi/Bluetooth power
- USB autosuspend
TLP Configuration
Configure TLP:
# Edit config
sudo vim /etc/tlp.conf
Common settings:
# CPU scaling
CPU_SCALING_GOVERNOR_ON_AC=performance
CPU_SCALING_GOVERNOR_ON_BAT=powersave
# GPU power
RADEON_POWER_PROFILE_ON_AC=high
RADEON_POWER_PROFILE_ON_BAT=low
# Wi-Fi power
WIFI_PWR_ON_AC=off
WIFI_PWR_ON_BAT=on
Power Profiles
power-profiles-daemon
Install power profiles:
# Arch/CachyOS
sudo pacman -S power-profiles-daemon
# Debian/Ubuntu
sudo apt install power-profiles-daemon
# Fedora
sudo dnf install power-profiles-daemon
Use profiles:
# Set profile
powerprofilesctl set balanced
powerprofilesctl set performance
powerprofilesctl set power-saver
# Check current
powerprofilesctl get
Suspend and Hibernate
Suspend
Suspend system:
# Suspend
systemctl suspend
# Or from desktop
# Usually in power menu
Hibernate
Hibernate system:
# Hibernate
systemctl hibernate
# Or from desktop
Configure hibernate:
# Edit config
sudo vim /etc/systemd/sleep.conf
Power Monitoring
Monitor Power
Check power usage:
# Install tools
sudo pacman -S powertop
# Run powertop
sudo powertop
Battery Health
Check battery health:
# Check battery info
upower -i /org/freedesktop/UPower/devices/battery_BAT0
# Check cycles
cat /sys/class/power_supply/BAT0/cycle_count
Troubleshooting
Battery Not Detected
Check battery:
# Check if detected
ls /sys/class/power_supply/
# Check kernel messages
dmesg | grep -i battery
Power Settings Not Working
Check services:
# Check TLP
systemctl status tlp
# Check cpupower
systemctl status cpupower
Summary
This guide covered power management for Arch Linux, CachyOS, and other distributions, including CPU scaling, battery optimization, TLP, and power monitoring.
Next Steps
- Laptop Configuration - Laptop setup
- Performance Tuning - Performance
- CachyOS Performance Guide - CachyOS optimizations
- ArchWiki Power Management: https://wiki.archlinux.org/title/Power_management
This guide covers Arch Linux, CachyOS, and other Linux distributions. For distribution-specific details, refer to your distribution's documentation.