Ubuntu sur IBM Thinkpad T41

Il y a quelques jours, j’ai installé une Ubuntu Linux sur mon IBM T41 récemment acheté. Tout fonctionnait pas trop mal, mais je n’avais pas fait trop de tests en ce qui concerne l’économie d’énergie. Après quelques recherches, je suis tombé sur plusieurs docs expliquant comment régler les problèmes de suspend to disk et to ram j’ai réussi à avoir à peu près ce que je voulais.

Première étape, installation de la Ubuntu 5.0 Hoary.

Ensuite, le noyau installé par défaut étant un noyau sans optimisations (noyau 386), j’ai installé le noyau pour les 686:

apt-get install linux-image-686

Maintenant commence les petits réglages… Tout d’abord, on édite le fichier /etc/default/acpi-support pour activer ce que l’on souhaite, et notamment décommenter la ligne

ACPI_SLEEP=true

.

Ensuite, on va ajouter quelques paramètres au noyau pour qu’il gère correctement notre acpi ainsi qu’ajouter le support du suspend-to-disk. On édite donc le fichier /boot/grub/menu.lst et on cherche la ligne #kopt=.... Ma ligne devient (attention c’est une seule ligne présentée ici en plusieurs lignes pour des raisons cosmétiques…):

# kopt=root=/dev/hda5 resume=/dev/hda3 ro pci=noacpi acpi_sleep=s3_bios

edit: Il s’agit là de la ligne utilisée par debconf pour générer les lignes des noyaux installés sur ubuntu. Si vous ne relancez pas l’installation d’un nouveau noyau, tout ce qui suit le « kopt= » est à ajouter en ligne de paramètre à votre noyau…

La partition /dev/hda3 étant la partition de swap, donc à adapter en fonction de votre installation. Pour que le suspend-to-disk ou que le suspend-to-ram fonctionne correctement, il est important de ne PAS utiliser les drivers binaires accélérés de ATI. En effet, ceux plantent la machine au sortir de la veille. Peut-être qu’un jour….
De plus, j’ai eu une surprise désagréable avec cette configuration. Je commençait à avoir des erreurs ext3 après être sorti de la veille. La raison est que le disque dur a son cache en écriture d’activé, et quand on met la machine en arrêt, dans le cas d’un suspend to disk, il ne vide pas ses buffers… J’ai donc dû désactiver le cache en écriture. Pour ça il faut avoir le paquet hdparm d’installé:

apt-get install hdparm

Ensuite je suis allé éditer le fichier /etc/hdparm.confpour y ajouter la chose suivante

/dev/hda {
mult_sect_io = 16
write_cache = off
dma = on
}

Et maintenant tout fonctionne très bien…

Principalement réalisé d’après http://aaltonen.us/archive/2005/03/02/ubuntu-linux-on-the-ibm-thinkpad-t42/