Translations: French, German, Spanish, Portuguese

Extending flash memory life

It is a commonly accepted view that SSD devices can only be written a limited number of times before they die, and while that may have been a concern for earlier generations of devices where that limit was relatively low, modern SSDs, such as the one in the Eee increase that number sufficiently so that they will last many years before they die, outlasting any HDD. Before you spend herculean efforts to extend your Eee's flash lifespan, consider this article: Nevertheless, many tips are easy to do and at the very least are harmless, or have other benefits (such as less time spent doing IO making your system more responsive,) so here are a few.

Text Mode

I’ve included some notes below (based on the instructions listed at this site.).

eee01:~# 915resolution -l | grep 800x480
Mode 3c : 800x480, 8 bits/pixel
Mode 4d : 800x480, 16 bits/pixel
Mode 5c : 800x480, 32 bits/pixel

915resolution 3c 800 480
#915resolution 4d 800 480
#915resolution 5c 800 480

### BEGIN /etc/grub.d/10_linux ###
menuentry "Debian GNU/Linux, linux 2.6.24-1-686" {
        linux   (hd0,1)/vmlinuz-2.6.24-1-686 root=/dev/sda3 ro vga=572
        initrd  (hd0,1)/initrd.img-2.6.24-1-686
menuentry "Debian GNU/Linux, linux 2.6.24-1-686 (single-user mode)" {
        linux   (hd0,1)/vmlinuz-2.6.24-1-686 root=/dev/sda3 ro vga=572 single
        initrd  (hd0,1)/initrd.img-2.6.24-1-686
### END /etc/grub.d/10_linux ###

Desktop environment

If you use a Gnome desktop on your Eee, here are some ways to make better use of the limited screen height:





Accessing the Asus Restore Image

Here is a way to access the files that were on the original Xandros system before you installed Debian on your Eee PC. You need the Asus Support DVD that came with the machine, and a Linux machine with a DVD reader and about 2.5G of free disk space (so you probably don't want to do this on your Eee).

Insert the Support DVD and extract the disk image of the Xandros system:

sudo mount /dev/dvd /media/dvd
zcat /media/dvd/P701L.gz > ~/restore.img
sudo eject /media/dvd

Now you can mount the Xandros image on your desktop whenever you want by doing:

sudo mount -t ext2 ~/restore.img /mnt/img -o ro,loop,offset=32256

(The offset of 63*512 = 32256 skips over the partition table in the disk image.) The original filesystem is now mounted, read-only, under /mnt/img/. When you're finished accessing it, don't forget to do

sudo umount /mnt/img

Make a complete disk image

The Debian Installer provided in the ../Howto/Install can be used to make a disk image and to send it over the network. This trick can sometimes provide a way to restore the (nearly) original Asus EeePC system before playing with new Debian installation as in some countries, you do not have the Asus Restore Image shipped with the laptop.


This method uses dd and nc provided by the Debian Installer and another computer located on your local network:

 nc -l -p 9000 | gzip -1 -c > ./eeepc.img.gz

 nc -l 9000 | gzip -1 -c > ./eeepc.img.gz

dd if=/dev/sda | nc -w 5 computer_ip_adress 9000

Extract some files from the image

The compressed image contains the entire disk image including the boot sector and partition table. However, these cannot be mounted directly. First, we need to decompress the image. Next, we need to use fdisk to determine the offset of the partition so we can mount it as a loopback device using that offset.

FixMe: The following assumes the user did not repartition the system when they installed Debian. This is not the recommended way to install Debian, as it wastes space by leaving the Xandros restore partition intact. Redo the backup using an all-in-one-partition Debian system and show the resulting fdisk output (plus now we can drop the Note at the end about extracting from the second partition).

Note: The first partition is the restoration partition and is ext2 filesystem, the second partition is your "active" partition and is ext3 filesystem. So if you want to find some of your files, try to search them under the second partition...


Here is a restoration procedure with the debian installer:

Freeing Disk Space

See FreeSpace

Software Control of the fan speed

EeePC’s hardware fan control is highly energy inefficient. Fan is turned on on need and usually never turned off (even if temperature reaches a normal value).

From 2.6.26 linux kernel includes eeepc_laptop module which provides a fan control interface in /sys/class/hwmon/.... It is not yet supported by eeepc-fancontrol (see below), but future versions of eeepc_laptop might be supported by lm-sensors if is fixed.

Manual fan control can be enabled using echo 1 > pwm1_enable and fan speed can be changed via echo n > fan1_pwm (n being a number between 0 and 255).

Kernel 2.6.26: You cannot switch back to automatic fan control without rebooting. After suspending your EeePC fan1_pwm will be reset to zero and your fan will not run until you manually activate it.

Kernel 2.6.28: You can switch to automatic fan control by echo 0 > pwm1_enable from manual mode. To check if automatic fan control is working just type in a terminal yes. This will put load full load on the CPU and start the fan. Press Ctrl-C to stop the program yes.

Kernel 2.6.30: fan1_pwm is 2.6.28 is just pwm1 in 2.6.30.

I added the following to my /etc/acpi/ to switch the fan to manual control (which will turn the fan off) and after a second change to automatic control (so that it will come back if necessary).

cd /sys/class/hwmon/....
echo 1 > pwm1_enable
sleep 2
echo 0 > pwm1_enable

Now basically I press the power button to reset the fan. There is basically no harm in this, as the fan would automatically start, when there is heavy load in the system. This assumes that you have KDE or GNOME to catch the press of power power button to launch the logout/Switch user/shutdown/restart dialog. If you are running an unsupported window manager then comment the shutdown command in the last line as shown below.

#/sbin/shutdown -h now "Power button pressed"

eeepc-fancontrol There is a highly experimental tool available that monitors temperature and adjusts fan speed according to it. It is written in Perl by ?RaimoRadczewski and called eeepc-fancontrol. You can get it at Additionally you must install the eee.ko module ( You can adjust values by editing the daemon with your favorite text editor. Attention. There is no warranty for this. It works quite good, but remember on REAL heavy load the daemon might not be executed.

Fan control without extra modules The lm-sensors package has a fan control script /usr/sbin/fancontrol that is started at boot by /etc/init.d/fancontrol and reads its settings from /etc/fancontrol. aptitude install lm-sensors to get this installed. The script pwmconfig should make /etc/fancontrol for you, but failed on my Eee PC 1000HE with 2.6.30. So I wrote this one:



Names should be different for 2.6.28 I think. I made these numbers up and the fan seems to be sensible. If anyone knows what they should be, do post the answer here. Anyway, try it out by running fancontrol as root. When you are ready, run invoke-rc.d fancontrol start to start fancontrol off in the background. It will automatically get started at boot.

It seems that a bug in the pwmconfig script when checking for gnuplot prevents the configuration file to be created properly. Installing gnuplot and telling the script to draw the results allows the creation of the configuration file with the obtained values. Here is an explanation of the different parameters in the fancontrol configuration file

Speed up boot process

Turn off the internal display when using VGA out

In the case statement on line 26:

Speed up X11

On the EeePC 2D-acceleration seems to be better with XAA instead of the new EXA. You can manually choose the old acceleration method by adding Option "AccelMethod" "XAA" to the Device section of your graphics card in xorg.conf. Some 2D operations measured with 'x11perf -all' will be several times faster than with EXA. But notice that those improvements are only theoretical ones and haven't been confirmed in real usage. While most operations have small speedups between factor 1.0 and 1.5, there are some others that are even 20 times faster with XAA. Though some operations are slower, the difference is there only a few percent.

Results of x11perf: EXA, XAA, x11perfcomp result

Fixing iPod file reading

Access to iPod files by any of the music managers (Rhythmbox, Amarok…) that make use of the iPod’s music data base will fail reading the file. You will receive some sort of message that indicates the file does not exist. If you look on your iPod you will convince yourself that it does exist, however, the case is different. The 7/31/08 version of the kernel uses a default for the vfat file system type (the file system on your iPod) which forces short file names to always be lower case. The iPod files and the iPod DB have short file names in upper case, thus the error.

To fix this you must override the default setting shortname=lower to shortname=mixed. If you are using the GNOME desktop you can do this by using gconf-editor to change /system/storage/default_options/vfat. You will see the shortname mount option.

Once you change this to mixed your iPod will work with your music manager.

Custom Compiled Linux

The attached file contains a configuration option basis for compiling Linux. Use it with make allnoconfig as described in the Linux documentation. all.config

Outstanding Issues and Questions

Visual state and switching of Cam, Wlan and Card reader on the tray

This is a simple way to have a visual feedback of the state of the webcam, wireless card and card reader on the eeepc. It uses zenity to show three state icons that change colour and tooltip message every time we click on them. By using gksu, the script can remember the password for the root privileges needed to perform the various:

echo "1" > /sys/devices/platform/eeepc/wlan

You can put the contents of the following archive in any directory you want, but please update the paths...


Please note that if you change the state of the peripherals by pressing some hotkeys, the state will not be automatically updated...

This script was tested on Debian Lenny with kernel 2.6.26 and on Fluxbox, but given its extreme simplicity it can be adapted to any system.

Thanks to <SynrG> for the tip about using zenity!

Models with a slow SSD

The following tips are for EEE models with two SSDs (such as the 1000).

On these, you probably end up having /home on the secondary bigger but much slower disk.

Speed up sluggish Iceweasel/Firefox 3

This setup in combination with Iceweasel/Firefox 3 will most likely give you a sluggish web browsing experience.

Firefox 3 saves a lot of internal state information during surfing, which results in frequent disk writes and thus delays from the slow disk. An efficient workaround is to move your .mozilla directory to the smaller but faster disk as suggested on:


This was tested to improve the browsing experience a lot on the EEE 901.

Alternately, a small quantity of ram can be used as a ramdisk using the tmpfs system. This results in significant improvements in performance, as firefox utilises disk access very heavily

Adding a cron job to synchronise the ramdisk with the cache may prevent bad shutdown errors from erasing firefox history or addons. Furthermore, it may be advisable to reduce the firefox "offline storage" (advanced->network) cache in the preference dialog from the default (50M) to something smaller.

Additionally, and entirely non-scientifically, it is reported that enabling HTTP pipelining can speed up firefox rendering performance, even on fast connections. This can be achieved by navigating to about:config in the URL bar and adjusting "network.http.pipelining" to "true"

Slow Vim writes

By default, Vim will sync files to disk on write using fsync(). This can take a couple of seconds, which makes the edit-compile cycle much more painful.

It is possible to turn this off by putting the following into your .vimrc :

set nofsync
set swapsync=

Writes may still get bogged down under heavy I/O, but much less often.

WARNING: since the file is not immediately synced to disk, this may increase the chances of data loss.

Slow intel rendering

Running the newer intel drivers (2:2.3.2-2+lenny6) on a 901, I (eeeuser) experience reduced performance and X stability compared to earlier versions. By modifying my /etc/X11/xorg.conf file, video perfomance seems to improve and so far, no ring buffer crashes. This improved behaviour has not been confirmed.

Section "Device"
        Option          "tiling"        "false"
        Option          "AccelMethod"   "UXA"

This might improve perfomance, most notably during compositing. Some discussion is available at


Workaround RT2860sta crash on suspend

If you have a RT2860sta based wireless laptop that fails to resume if suspended with wireless enabled, one can work around the wireless crash by disabling wireless before suspend. Simply add the following to your ACPI function scripts. Specifically, modify the file /etc/acpi/actions/ by adding a command to disable the wireless.

---       2010-01-02 12:56:38.000000000 +1100
+++    2009-12-26 15:48:45.000000000 +1100
@@ -4,6 +4,7 @@

 . /usr/share/acpi-support/policy-funcs

+/etc/acpi/actions/ off

 # If powersaved is running, let it process the acpi event
 if pidof powersaved; then

RT2680STA authentication timeout (WPA2)

If connecting to a WPA2 network does not function, or only functions intermittently, and wpa_supplicant running in debug mode gives the error

Authentication with 12:34:56:78:9a:bc timed out.

then updating to the 2.6.37-rc5- (at time of writing, this requires enabling the experimental repository) kernel. Less than or equal to Kernel 2.6.32 does not work. Intermediate kernels were not tested.