Mise à jour janvier 2002 : noyau 2.4.17 + ACPI
Mise à jour octobre 2001 : noyau 2.4 (USB, son, etc) Liste des fichiers annexes :
|
Antiopikon III a été atteint par une paralysie du clavier aussi horrible qu'irréversible le vendredi 6 juillet 2001, après plus de six mois d'un travail d'esclave à mon service. Ne pouvant plus servir en mode "ordinateur de bureau", et la maison Fujitsu refusant de me vendre un clavier en pièce détachéee, il poursuivra sa carrière comme serveur.
En attendant, j'ai besoin d'un nouvel esclave pour pouvoir accomplir mon propre travail d'esclave... Vu l'amabilité des commerciaux tenant lieu de service après vente de chez Fujitsu, qui préfère investir dans des photos de Kimura (le bellâtre de SMAP, par ailleurs en contrat avec une chaîne de salons de beauté) pour faire la pub de ses machines, plutôt que de contenter ses clients, je m'en vais de ce pas changer de crémerie.
Ca tombe bien, la maison Tosh' vient de se décider à se retirer les doigts du cul et à sortir un ordinateur portatif à base de processeur Crusoe comme tous ses concurrents qui font fortune. Un Libretto, ça m'a laissé de bons souvenirs, alors... je cours à Akihabara... Vive Antiopikon IV !
Antiopikon IV est un Toshiba Libretto L1/060TNMM, commercialisé il y a environ deux mois, et dont voici les caractéristiques techniques :
De surcroît, vu qu'on est en plein dans le Festival Electrique de Akihabara, j'ai eu droit en prime à une paire de cartes réseau 10/100 baseT PCMCIA compatibles NE2000, deux càbles 10/100/1000 baseT de 3m, un de 10m, un croisé de 3m, une nouvelle sacoche de luxe et quelques babioles publicitaires. Le tout pour un prix ridicule qui me laisse encore rêveur.
Bon, après la quicaillerie, on va passer au logiciel. La bestiole est livréee avec son disque dur de 10 Go déjà en partie occupé par cette puante merde infâme qu'est ZindoZ. Comme je remplace ce disque par un autre, de 30 Go, vierge, je n'aurai pas à m'embarrasser de booter et de planter à la mode de Redmond.
On ne va pas mégoter : le lecteur de disquettes externe est un USB non supporté par les noyaux des disquettes d'installation des distributions actuelles. Bon sang de bonsoir, ça devrait maintenant faire des mois que ce problème devrait être oublié ! Du coup, une seule option pour installer, en dehors de transplanter le disque sur un ordinateur de bureau pour ce faire : l'installation par le réseau en utilisant la PCMCIA.
M'sieur Debian ne sachant toujours pas ce qu'est une carte PCMCIA dans un disque de boot, on va faire comme il y a 6 mois avec le Loox et préinstaller une RedHat avec sa disquette "pcmcia.img" pour finir en debian... Mais...
Comme M'sieur RedHat a pris la grosse tête sous son châpeau rouge, son "pcmcia.img" pour la 7.1 (actuelle) est accompagné d'une seconde disquette contenant les drivers PCMCIA ! Mais quelle bande de grosses tâches, chez RedHat ! Après avoir booté, leur noyau ne sait même pas reconnaître le lecteur de disquettes externe ! Du coup, râpé pour la préinstall' en se servant d'une redhat 7.1 ...
Mais dis-moi mon ami... La 7.0, elle, est bourrée de bugs et de défauts, mais elle a l'immense avantage d'avoir une disquette unique "pcmcia.img"... aaaaaah, ouf.
Ah, oui, un petit détail qui ne manque pas de piquant : il semblerait que l'installation par défaut du Libretto L1 ne permette que de booter depuis le disque dur, si celui-ci est bootable... Les finauds, c'est à croire que Micro$oft les a payés pour faire en sorte que le client soit obligé de booter sur Windoze pour pouvoir changer ce réglage et installer GNU/Linux, rendant ainsi impossible son remboursement. C'est le genre de petit détail qui permet d'apprécier la liberté de ne pas avoir à utiliser les produits de la firme de Redmond.
Bref. Pour préinstaller avec la debian pcmcia.img (et ensuite par le réseau, à travers la carte PCMCIA, je partitionne mon disque de la façon suivante:
Disk /dev/hda: 255 heads, 63 sectors, 3648 cylinders Units = cylinders of 16065 * 512 bytes Device Boot Start End Blocks Id System /dev/hda1 1 66 530113+ 83 Linux swap /dev/hda2 67 197 1052257+ 82 Linux /dev/hda3 198 3648 27720157+ 83 LinuxJ'ai installé ce début de système sur /dev/hda2, /dev/hda1 étant pour le moment un swap, que la RedHat exige pour pouvoir s'installer. L'installation est minimale, avec juste ce qu'il faut (ftp, telnet) pour se connecter à un serveur sur mon réseau local afin de passer à la suite.
J'établis une liaison ftp et une session telnet avec antiopikon III, qui est toujours vivant malgré son clavier mort. Je compile à distance un noyau 2.2.19 avec le support reiserfs (il faut aller chercher le patch reiserfs dans la section "download" du site de Reiser) et le package PCMCIA là où il est développé.
Je supprime le swap du /etc/fstab de mon installation provisoire, de façon à pouvoir convertir la partition /dev/hda1 en type 83 (Linux) puis à la formater en extfs2. Cette partition deviendra par la suite ma partition de boot. Il se trouve que lilo n'aime pas chercher le noyau sur un reiserfs, d'où une partition de boot en extfs, de taille réduite.
Je compile donc ce 2.2.19, ainsi que les modules et le package pcmcia-cs sur Antiopikon III, técharge le tout et installe dans /dev/hda1. J'ajoute dans le lilo de mon installation provisoire un nouveau kernel de boot sur /dev/hda1 dont le root est toujours sur /dev/hda2, de façon à garder la libc et les utilitaires de base que je viens d'installer, jusqu'à ce que j'aie fini.
Je compile mkreiserfs dans le kernel source tree du 2.2.19 et le transporte sur Antiopikon IV pour formater /dev/hda3 ...
Ensuite, je formate /dev/hda3 avec la commande :mkreiserfs -h r5 /dev/hda3Après cela, je me prépare un dossier vide /space3 comme point de montage et ajoute la ligne
/dev/hda3 /space3 reiserfs defaults,noatime,nodiratime 0 0dans /etc/fstab.
Il ne me reste plus qu'à rebooter sur le 2.2.19, de façon à pouvoir accéder à l'espace reiserfs, afin d'y fourguer le contenu d'Antiopikon III.
drwxr-xr-x 14 root root 4096 Jul 8 16:47 . drwxr-xr-x 14 root root 4096 Jul 8 16:47 .. drwxr-xr-x 2 root root 4096 Dec 31 2000 bin drwxr-xr-x 2 root root 4096 Jul 11 10:51 boot drwxr-xr-x 11 root root 98304 Jul 11 13:00 dev drwxr-xr-x 55 root root 4096 Jul 11 13:01 etc lrwxrwxrwx 1 root root 12 Jul 8 07:24 home -> /space3/home drwxr-xr-x 5 root root 4096 Apr 17 07:26 lib drwxr-xr-x 2 root root 16384 Jul 8 07:14 lost+found drwxr-xr-x 7 root root 4096 Dec 28 2000 mnt dr-xr-xr-x 85 root root 0 Jul 11 13:00 proc drwx------ 10 root root 4096 Jul 10 18:25 root drwxr-x--- 2 root root 4096 Jul 9 20:31 sbin drwxr-xr-x 10 root root 171 Jul 8 19:09 space3 lrwxrwxrwx 1 root root 11 Jul 8 07:24 tmp -> /space3/tmp lrwxrwxrwx 1 root root 11 Jul 8 07:24 usr -> /space3/usr lrwxrwxrwx 1 root root 11 Jul 8 07:24 var -> /space3/varComme vous le voyez, la plupart des gros dossiers sont réunis sur /dev/hda3, un immense espace en reiserfs, très rapide, sûr et économe en espace disque. Ce qui donne la répartition des données suivante :
Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda1 521748 43272 451972 9% / /dev/hda3 27719276 4427716 23291560 16% /space3Oeuf corse, je me suis débarrassé de la redhat 7.0 et ai converti /dev/hda2 en zone de swap. Techniquement, le système est une debian avec quelques petites choses à moi.
L'USB fonctionne au poil. Pour brancher une souris USB j'ai créé un fichier spécial avec la commande
mknod /dev/usb/mouse c 13 63et j'ai eu la surprise de ne pas avoir à ajouter une section dans le XF86Config pour la gérer.
processor : 0 vendor_id : GenuineTMx86 cpu family : 5 model : 4 model name : Transmeta(tm) Crusoe(tm) Processor TM5600 stepping : 3 cpu MHz : 597.646 cache size : 512 KB fdiv_bug : no hlt_bug : no sep_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr cx8 sep cmov mmx bogomips : 1189.47
L'écran est suuuuper bon, le clavier vraiment excellent. Un point négatif : le BIOS semble être inaccessible et la configuration de la machine semble devoir reposer sur l'OS qui devrait pourtant reposer au dessus et ne pas s'en occuper. Du coup, vu que certains composants sont trop récents, ils ne semblent pas être supportés pour le moment par le noyau Linux. Mais bon, ça viendra.
Suite: Comment changer le disque dur de cette machine...
Derrière, j'ai recompilé le package PCMCIA normal (pas le PCMCIA du noyau), vu que le matériel n'est toujours pas géré par la yenta socket, apparemment. Pour ce qui est de la gestion d'une souris USB, il faut modifier un peu le XF86Config. Voici le mien, qui au passage permet aussi de reconnaître la roulette des souris à roulette (le dernier gadget à la mode).
Après ça, c'est Roulez jeunesse, comme dans du beurre. Le son fonctionne immédiatement sans aucun problème, la souris USB à roulette aussi, la mémoire et le processeur sont bien mieux gérés par la VM du 2.4. C'est presque Byzance. Au prochain coup, je vais m'occuper de l'ACPI.
J'en ai profité aussi pour mettre à jour les modules PCMCIA (version du jour: 3.1.31), qui intègrent désormais en standard (entre autres) mon petit ajout concernant ma carte Réseau.
L'embryon de gestion ACPI, fort prometteur, permet de régler la luminosité de l'écran, et donc sa consommation, depuis la ligne de commande. Par exemple :
echo "brightness:0" > /proc/acpi/toshiba/lcdVa rendre l'écran très sombre, tandis que
echo "brightness:7" > /proc/acpi/toshiba/lcdVa pousser sa luminosité au maximum. Il y a bien entendu toutes les valeurs intermédiaires.
Ah, oui : pendant tout ce temps, j'avais oublié de compiler l'utilitaire LongRun, de chez Transmeta. Il nécessite d'activer les options relatives au CPUID dans le noyau (dont la configuration plus haut tient compte), et de créer les deux fichiers spéciaux suivants :
# longrun -s 0 33va permettre d'économiser l'énergie sans trop sacrifier les performances... Le ventilateur n'aura même plus besoin de refroidir le processeur, quand il travaille beaucoup, comme dans le cas d'une compilation de noyau. Une option de longrun donne les valeurs possibles et leur effet :
# longrun -l # % MHz Volts usage 0 300 1.200 0.281 33 400 1.225 0.391 66 500 1.400 0.638 100 600 1.600 1.000Bilan : encore quelques petits progrès qui augmentent l'utilisabilité de la bestiole. On approche de l'objectif.