Differences between revisions 72 and 73
Revision 72 as of 2008-10-19 12:05:57
Size: 17017
Editor: ?PaulMenzel
Comment: formatting
Revision 73 as of 2008-10-19 13:18:02
Size: 17068
Editor: ?PaulMenzel
Comment: typography, formatting (iPod problem seems not specific to an Eee, mb move it.)
Deletions are marked like this. Additions are marked like this.
Line 226: Line 226:
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.
Access to iPod files by any of the music managers (Rhythmbox, Amarok) that make use of the iPods 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.
Line 233: Line 233:
The attached file contains a configuration option basis for compiling Linux. Use it with
make allnoconfig
as described in the Linux documentation.
The attached file contains a configuration option basis for compiling Linux. Use it with make allnoconfig as described in the Linux documentation.
Line 237: Line 235:
Sound did not function in 1 test.
Chose options:
n = MMC/SD card support (MMC)
The MMC/SD drive on Eee PC works by USB.
It does not rely upon an Init Random access memory Disk (InitRD). If you do not use ext3 as your root FS, you may need to compile in another FS.
All things almost certainly to be needed in a user session (between when you switch the computer on and off) are compiled in: not modules.
 * Sound did not function in 1 test.
 * Chosen options: {{{n = MMC/SD card support (MMC)}}}
 * The MMC/SD drive on Eee PC works by USB.
 * It does not rely upon an Init Random access memory Disk (InitRD). If you do not use ext3 as your root filesystem, you may need to compile in another filesystem.
 * All things almost certainly to be needed in a user session (between when you switch the computer on and off) are compiled in, not modules.

Translations: [:DebianEeePCFrench/TipsAndTricks:French], [:DebianEeePCGerman/TipsAndTricks:German], [:DebianEeePCSpanish/TipsAndTricks:Spanish], [:DebianEeePCPortuguese/TipsAndTricks:Portuguese]

?TableOfContents

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: http://wiki.eeeuser.com/ssd_write_limit. 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.

  • Open /etc/sysctl.conf and set vm.dirty_writeback_centisecs = 1500. This will prolong the life of your SSD by writing to the disk every 15 seconds instead of 5.
  • Probably many of the tips useful for [http://www.cyrius.com/debian/nslu2/linux-on-flash.html Linksys on NSLU2] can be applied to the EeePC.

  • Use tmpfs for directories whose content doesn't need to be preserved over shutdown/reboot:
    • /tmp: echo "tmpfs /tmp tmpfs defaults 0 0" >>/etc/fstab;

    • /var/run & /var/lock: set RAMRUN=yes and RAMLOCK=yes in /etc/default/rcS.

  • Mount your disk-backed filesystems with the '[http://lwn.net/Articles/244829/ relatime]' option.

Text Mode

Follow the instructions listed at [http://nathancoulson.com/proj_eee.shtml this site.] I've included some notes below. Ideally, eeepc archive would contain these mods for grub2 and maybe have a grub2-eeepc package so that the mods listed below don't get wiped out everytime grub-install is called.

  • Probably not necessary, but I upgraded to grub-pc first.

  • Download grub-1.96 source and the 915resolution patch linked at the site.
  • Patch the grub sources with the 915resolution patch.
  • Build and install grub.
  • Run 915resolution -l

eee01:~# 915resolution -l | grep 800x480
Mode 3c : 800x480, 8 bits/pixel
Mode 4d : 800x480, 16 bits/pixel
Mode 5c : 800x480, 32 bits/pixel
  • Add the following lines to /boot/grub/grub.cfg. I put it at the end of the 00_header section:

insmod 915resolution
915resolution 3c 800 480
#915resolution 4d 800 480
#915resolution 5c 800 480
  • To figure out your vga number, add 0x200 to the mode. i.e. for 8 bit mode: 0x200 + 0x3c = 0x23c = 57210

  • Add vga=572 to the kernel line in the /boot/grub/grub.cfg file.

### 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:

  • Enable the autohide property on the Gnome panels at the top and bottom of the desktop, so they get out of the way unless you mouse over them. To do this, right click on a blank part of the panel, then choose Properties, and go to the General tab. Unfortunately, Gnome's idea of "hidden" may not match yours (or the dictionary's); it still leaves a bar several pixels wide. You can reduce that to 1 pixel (but not to zero) by using gconf-editor to change /apps/panel/toplevels/panel0/auto_hide_size (you have to do this for panel0, panel1,...).
  • In many applications, like gnome-terminal and firefox (iceweasel), you can use the F11 key to toggle a fullscreen mode that provides even more area than simply maximizing the window.
  • In metacity you can set up the F11 key to toggle fullscreen mode for all applications by selecting System > Preferences > Keyboard Shortcuts. Find the "Window Management" section, select the "Toggle fullscreen mode" item (which is disabled by default), and type F11 to set it.

  • You can change workspaces without exiting fullscreen mode by using Control-Alt-Left_arrow and Control-Alt-Right_arrow.
  • You can move your application under Xfce, KDE and Gnome with alt+left_mouse ( press alt before left_mouse ) and move your mouse. Very useful for applications bigger than the screen, like Gnome Evolution (Mail).
  • With Alt+F7 you switch to "move screen" after pressing those two keys you can use the keyboard arrows to move the window around.

Firefox:

Opera:

  • Use F11 to get into full-screen (this is the presentation mode, you'll not have any bars unlike as in FF).
  • Use the "Fit to width" feature on huge pages.

KDE/Kwin:

  • Each window can be made fullscreen with a right click on the window decoration. You can also use keyboard shortcuts to make a window fullscreen in the control center > “Regional & Accessibility” > “Keyboard Shortcuts” > “Make Window Fullscreen” or “Hide Window Border”.

  • Put the panel on the left or right side instead of bottom/top, as you have more room in width than in height. Also choose “Tiny” for the panel size, and take a look at the auto/manual Hiding functionalities.

[http://packages.debian.org/openbox ?OpenBox]:

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 DebianEeePC/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.

Backup

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

  • First, boot the debian installer on your USB disk
  • Then be sure to activate network and configure it, same thing for the disk (Do not partition it)
  • Open a console shell (Alt+F2 or from the Debian Installer menu)
  • On the backup computer:
    • get its IP adress (ifconfig)
    • start a listening nc session on port 9000:

 nc -l -p 9000 | gzip -1 -c > ./eeepc.img.gz
  • With netcat-openbsd installed this line should read

 nc -l 9000 | gzip -1 -c > ./eeepc.img.gz
  • On the EeePC shell:

dd if=/dev/sda | nc -w 5 computer_ip_adress 9000
  • Wait some minutes (about 35)... and you get a eeepc.img.gz with about 900Mb

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).

  • extract the compressed disk image:
    gunzip eeepc.img.gz => got & 4Gb eeepc.img
  • As root (or sudo), setup a loopback device:
    losetup -f eeepc.img 
  • view of the partitions:
     fdisk -ul /dev/loop0 
  • Disque /dev/loop0: 4001 Mo, 4001292288 octets
    255 heads, 63 sectors/track, 486 cylinders, total 7815024 secteurs
    Units = secteurs of 1 * 512 = 512 bytes
    Disk identifier: 0x3c173c16
    Périphérique Amorce    Début         Fin      Blocs    Id  Système
    /dev/loop0p1              63     4819499     2409718+  83  Linux
    /dev/loop0p2         4819500     7775459     1477980   83  Linux
    /dev/loop0p3         7775460     7791524        8032+   c  W95 FAT32 (LBA)
    /dev/loop0p4         7791525     7807589        8032+  ef  EFI (FAT-12/16/32)
  • 1 sector = 512 bytes, you want to mount partition 1 which starts at sector 63 => 63 sectors * 512 bytes = 32,256 bytes

  • Partition 1 starts at 32256 bytes.
  • Use the same command from the last tips:
    sudo mount eeepc.img /mnt/img -o ro,loop,offset=32256
  • if you want partition 2 use 4819500*512 = 2467584000 bytes offset:
    sudo mount eeepc.img /mnt/img -o ro,loop,offset=2467584000

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...

Restoration

Here is a restoration procedure with the debian installer:

  • On the Asus EeePC, launch the debian installer, config network (get the IP adress) and detect disks then get a shell.
  • launch the restoration command:
    nc -l -p 9000 | dd of=/dev/sda
  • Then on the computer with the image file:
    zcat ./eeepc.img.gz | nc <eeepc_ip_adress> 9000
  • Wait some minutes...
  • Reboot your computer !

Remove unused locales

This would save several tenths of megabytes. Install the package localepurge and select the locales you use (?LocalePurge). Then run localepurge as root. localepurge will also run automatically after each APT run, cleaning unused localization data.

Clean up obsolete downloaded package file

When installing packages the package files are first stored locally and then installed. After that the package files are not needed any more. You can delete them using the tools of the package manager in question. Use the menu item in Aptitude or Synaptic or enter one of the following on the [:CommandLine:command line].

sudo aptitude clean

sudo apt-get clean

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).

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 http://code.google.com/p/eeepc-fancontrol/

Additionally you must install the eee.ko module (http://code.google.com/p/eeepc-linux/).

You can adjust values by editing the daemon with your fav. 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.

Kernel 2.6.26 includes the eeepc_laptop module which provides a fan control interface in /sys/class/hwmon/.... It is not yet supported by eeepc-fancontrol, but future versions of eeepc_laptop might be supported by lm-sensors if http://bugzilla.kernel.org/show_bug.cgi?id=11520 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).

WARNING: With Kernel 2.6.26 you can not 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.

Speed up boot process

  • Install dash and make /bin/sh point to dash by dpkg-reconfigure dash

  • Remove nfs-common, because it starts portmap daemon. (as root: aptitude remove nfs-common)

  • Workaround hwclock timing out by setting HWCLOCKPARS="--directisa" in /etc/default/rcS

  • Disabling eth0 and ath0 in /etc/network/interfaces can save about 4secs.
  • ["DebianEeePC/Boot"] is a more thorough approach for speeding up the boot process, provided you’re willing to do without certain standard Debian packages such as cron, sysklogd, etc.

Turn off the internal display when using VGA out

  • Open "/etc/acpi/actions/vga-toggle.sh" in your favorite editor

In the case statement on line 26:

  • Insert "xrandr --output LVDS --auto" after the first "xrandr --output VGA --off", line 29
  • Insert "xrandr --output LVDS --off" after the second "xrandr --output VGA --off", line 33

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: [http://www.reiner-h.de/~reiner/EeePC/x11perf-all-results-exa.log EXA], [http://www.reiner-h.de/~reiner/EeePC/x11perf-all-results-xaa.log XAA], [http://www.reiner-h.de/~reiner/EeePC/x11perfcomp-result.log 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.

Outstanding Issues and Questions

  • Sound did not function in 1 test.
  • Chosen options: n = MMC/SD card support (MMC)

  • The MMC/SD drive on Eee PC works by USB.
  • It does not rely upon an Init Random access memory Disk (InitRD). If you do not use ext3 as your root filesystem, you may need to compile in another filesystem.
  • All things almost certainly to be needed in a user session (between when you switch the computer on and off) are compiled in, not modules.

attachment:all.config