From ArchWiki
Revision as of 07:30, 5 November 2011 by Jstjohn (Talk | contribs) (Battery State Monitoring Utilities: grammar fixes; update templates to comply with latest style guide)

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.

Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어

External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Setting Up For Laptops

This page should contain links to pages needed for configuring a laptop for the best experience. Setting up a laptop is in many ways the same as setting up a desktop. However, there are a few key differences. When setting up a laptop with Arch Linux, the following points should be taken into consideration:

  • Power consumption (how do I make the battery last the longest per charge?). Which leads to power management:
  • Hard drive spindown. After how many minutes of inactivity should the hard drive be spun down?
  • Screen shut off. After how many minutes of inactivity should the screen be shut off? (Not just blanked with a screensaver but completely shut off).
  • CPU frequency scaling. How should the CPU's frequency change depending on load to minimize power usage?
  • Suspend and hibernate. How do I get suspend and hibernate to work with my laptop?
  • Screen brightness. How do I manage screen brightness?
  • Network and wireless. How do I get my wireless working?
  • Media buttons. How do I configure the function of those buttons on my laptop?
  • Touchpad. How do I configure the sensitivity, acceleration, button function and scroll borders for my Synaptics or Alps touchpad?

All of these points are important to take into consideration when getting a laptop set up the way you like. Fortunately, Arch Linux provides all the tools and programs necessary to take complete control of your laptop. These programs and utilities are highlighted below, with appropriate tips tutorials.

Note: the following links may be useful:

Power Management

Power management is very important for anyone who wishes to make good use of their battery capacity. The following tools and programs help to increase battery life and keep your laptop cool and quiet.

Battery State Monitoring Utilities

Battery state can be read using ACPI from the terminal. ACPI functionality is provided via the acpi package.

Tip: More information can be found in the ACPI modules article.

A simple battery monitor that sits in the system tray is batterymonAUR which can be found in the AUR.

Battery Tweaks on Thinkpad

Please read the tp_smapi article.

TLP for Thinkpads

TLP is a set of scripts, which set many powersaving options according to the current Powersource. TLP is intended to be used on Thinkpads, but most settings should work on other laptops too.


Cpufrequtils provides CPU Frequency Scaling, a technology used primarily by notebooks which enables the OS to scale the CPU speed up or down, depending on the current system load and/or power scheme. For quick and easy installation and setup, please view the CPU Frequency Scaling article.


Pm-utils provides a suspend and powerstate setting framework. Pm-utils should be used with cpufrequtils to provide a complete power management solution.


Lapsus is a set of programs providing easy access to many features of various laptops. It currently supports most features provided by asus-laptop kernel module from ACPI4Asus project, such as additional LEDs, hotkeys, backlight control etc. It also has support for some IBM laptops features provided by IBM ThinkPad ACPI Extras Driver and NVRAM device.

Install PowerTOP

PowerTOP is a handy utility from Intel that displays which hardware/processes are using the most power on your system, and provides instructions on how to stop or remove power-wasting services. Works great for mobile Intel CPUs; provides the current CPU state and suggestions for power saving. Also works on AMD systems, but does not provide as much information about the CPU state.

See the Powertop article for informations.

Laptop mode tools

Install Laptop Mode Tools with:


Tip: Be sure to go through these config files, as many power-saving features are not enabled by default.

Start the laptop-mode daemon and add laptop-mode to your DAEMONS array so it starts automatically on boot.

See this thread for more information.


Powernowd is a program for powering down CPUs dynamically, which can be run either on an AMD-based system or an Intel-based system. However, cpufrequtils detailed above provides a more modern alternative, as seen by the fact that powernowd was created before the ondemand governor existed.

You can install powernowd from the AUR.

To configure it, just edit your Template:Filename:

OPTIONS="-q -u 15 -l 5"


On some laptops, powertop suggests enabling the CONFIG_PCIEASPM kernel option. It can be found under "Bus options (PCI etc.)"->"PCI Express ASPM support". This option is marked as experimental in the current kernel (2.6.35) and allows the PCI-e links to enter a power saving state.

According to [1], this option might degrade performance a bit, but on an Acer 3820TG laptop, it can reduce power consumption by about one third or even more.

More experience with this setting would be appreciated, so please share them here!

It seems like the option is going to be enabled by default in kernel 2.6.36; if so, the information here will be obsolete soon. However, if your system should be able to make use of this power management feature but you are receiving messages like like the following (check Template:Filename):

disabling ASPM on pre-1.1 PCI-e device.  You can enable it with 'pcie_aspm=force'

then add pcie_aspm=force to your kernel command line.


Granola is a daemon that monitors the cpu usage and uses the cpufreq-userspace module to lessen power usage without any noticeable difference in performance. To use it, first install from the AUR:[2], the default settings will work for most setups. You will need to load the cpufreq_userspace module, as well as the cpufreq scaling governor for your CPU at startup. Edit Template:Filename: For most generic cpus:

 MODULES=( ... cpufreq_userspace acpi-cpufreq ... )

For Intel Atom or Pentium 4 cpus:

 MODULES=( ... cpufreq_userspace p4_clockmod ... )

Then add Granola to the DAEMONS array:

 DAEMONS=( ... granola ... )

and reboot.

To test if it worked, run:

 cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
 cpufreq-info #if you have cpufreq-utils installed

and check that the cpu frequency is below maximum.

Suggestions for saving power


When often en route working with your Notebook without WLAN-Access around, it might be expedient to add a little script to your system startup that automatically turns off your WLAN-Hardware to keep it from searching for Access Points and wasting power on this, when not connected:


essid="`iwconfig wlan0 | grep ESSID | awk {'print $4'}`"
	if [ "$essid" == "ESSID:off/any" ] ; then
		sudo iwconfig wlan0 txpower off

[edit, if wlan0 ain't your WLAN-device]

Start the script according to your DE/WM options by '(sleep xx && /path/to/script)' depending on how long it usually takes to connect to your Access Point, 60 seconds are a good default value. It will check if you're connected, turning off the device if not.

sudo iwconfig wlan0 txpower on

will bring it back up, as, of course, a reboot will.


Note: Not only are the following tweaks not needed if using laptop-mode-tools, but using laptopmode also gives you the benefit of applying them only when desired (ie, while the AC cable is unplugged).
Disk-related tweaks

Disable file access time: every time you access (read) a file the filesystem writes an access time to the file metadata. You can disable this on individual files by using the chattr command, or you can enable it on an entire disk by setting the noatime option in your fstab, as follows:

/dev/sda1          /          ext3          defaults,noatime          1  2


Note: disabling atime causes troubles with mutt and other applications that make use of file timestamps. Consider compromising between performance and compatibility by using mount option relatime instead, or look into mutt work-around for noatime.

To allow the CD/DVD rom to spin down after a while, run the following:

/usr/bin/hal-disable-polling --device /dev/scd0

Note, however, that HAL has long been deprecated.

Similar functionality is available in the newer udisks:

/usr/bin/udisks --inhibit-polling /dev/sr0
More tweaks

These are some generic suggestions that will work with most laptops.

Add the following to Template:Filename:

options usbcore autosuspend=1

Add the following to Template:Filename

Note: laptop-mode-tools automatically rewrites these values based on the values Template:Codeline, Template:Codeline (both multiplied by 100) resp. Template:Codeline, which are set in Template:Filename. However, that only happens if the three "Enable laptop mode" variables in the same file are set accordingly — left to 0, it resets the values to kernel defaults (500 / 0) for the corresponding scenario regardless of Template:Filename.

Add the following to Template:Filename (and make sure it gets executed at boot time)

/usr/sbin/iwpriv your_wireless_interface set_power 5

Source: here

Hard drive spin down problem

Documented here

To prevent your laptop hard drive from spinning down too often (result of too aggressive APM defaults) do the following:

Add the following to Template:Filename

hdparm -B 254 /dev/sdX where X is your hard drive device

You can also set it to 255 to completely disable spinning down. You may wish to set a lower value if you move your laptop around as lower values park the heads more often and reduce the chance of damage to your hard disk while it is being moved. If you do not move your laptop at all when you are using it, then 255 or 254 is probably best. If you do, then you might want to try a lower value. A value like 128 might be a good middle-ground.

Add the following to Template:Filename

if [ -n "$1" ] && ([ "$1" = "resume" ] || [ "$1" = "thaw" ]); then
	hdparm -B 254 /dev/your-hard-drive > /dev/null

and run chmod +x /etc/pm/sleep.d/50-hdparm_pm to make sure it resets after suspend. Again, you can change the value 254 as you see fit.

Now the APM level should be set for your hard drive.

For some laptops, the option -S to hdparm can also be relevant (sets the spindown time for the drive). Note that all these options can also be configured using the laptop-mode tools. This will allow you to set a high value when on AC and a lower value when you are running on battery power.

Tweaking the scheduler

For multicore and hyperthreading-enabled processors you may use sched_mc_power_savings and sched_smt_power_savings options respectively to make the scheduler keep idle as many cores as possible. To enable these options you can do

echo 1 > /sys/devices/system/cpu/sched_mc_power_savings


echo 1 > /sys/devices/system/cpu/sched_smt_power_savings

Echoing 0 will disable them. Also laptop-mode can be used to control shed_mc_power_savings (see the appropriate config file in Template:Filename).


To get your touchpad working properly, see the Touchpad Synaptics page. Note that your laptop may have an ALPS touchpad (such as the DELL Inspiron 6000), and not a Synaptics touchpad. In either case, see the link above.

Special Buttons

To configure any special keys or buttons on your laptop, please refer to the Extra Keyboard Keys page.

Hard disk shock protection

There are several laptops from different vendors featuring shock protection capabilities. As manufacturers have refused to support open source development of the required software components so far, Linux support for shock protection varies considerably between different hardware implementations.

Currently, two projects, named HDAPS and hpfall, support this kind of protection. HDAPS is for IBM/Lenovo Thinkpads and hpfall for HP/Compaq laptops

Just Check Hard Disk Active Protection System. Hpfall canbe installed from AUR