-
-
Notifications
You must be signed in to change notification settings - Fork 2
Linux Power Management
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.
- Understanding Power Management
- CPU Frequency Scaling
- Laptop Battery Optimization
- TLP Configuration
- Power Profiles
- Suspend and Hibernate
- Power Monitoring
- Troubleshooting
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
Install tools:
# Arch/CachyOS
sudo pacman -S cpupower
# Debian/Ubuntu
sudo apt install linux-cpupower
# Fedora
sudo dnf install kernel-toolsAvailable governors:
- performance: Maximum performance
- powersave: Maximum power saving
- ondemand: Dynamic scaling
- conservative: Gradual scaling
- schedutil: Scheduler-based (default on modern kernels)
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 ondemandPersist settings:
# Create service
sudo systemctl enable cpupower.service
# Or use systemd
sudo systemctl enable cpupowerCheck battery:
# Using upower
upower -i /org/freedesktop/UPower/devices/battery_BAT0
# Or simple check
cat /sys/class/power_supply/BAT0/capacityInstall TLP:
# Arch/CachyOS
sudo pacman -S tlp tlp-rdw
# Debian/Ubuntu
sudo apt install tlp tlp-rdw
# Fedora
sudo dnf install tlp tlp-rdwEnable service:
sudo systemctl enable --now tlp.serviceWhat TLP does:
- Automatically optimizes power settings
- CPU frequency scaling
- GPU power management
- Wi-Fi/Bluetooth power
- USB autosuspend
Configure TLP:
# Edit config
sudo vim /etc/tlp.confCommon 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
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-daemonUse profiles:
# Set profile
powerprofilesctl set balanced
powerprofilesctl set performance
powerprofilesctl set power-saver
# Check current
powerprofilesctl getSuspend system:
# Suspend
systemctl suspend
# Or from desktop
# Usually in power menuHibernate system:
# Hibernate
systemctl hibernate
# Or from desktopConfigure hibernate:
# Edit config
sudo vim /etc/systemd/sleep.confCheck power usage:
# Install tools
sudo pacman -S powertop
# Run powertop
sudo powertopCheck battery health:
# Check battery info
upower -i /org/freedesktop/UPower/devices/battery_BAT0
# Check cycles
cat /sys/class/power_supply/BAT0/cycle_countCheck battery:
# Check if detected
ls /sys/class/power_supply/
# Check kernel messages
dmesg | grep -i batteryCheck services:
# Check TLP
systemctl status tlp
# Check cpupower
systemctl status cpupowerThis guide covered power management for Arch Linux, CachyOS, and other distributions, including CPU scaling, battery optimization, TLP, and power monitoring.
- 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.