(: Mettez un pingouin dans votre portable :)

Installation de Linux Debian Etch sur l'Asus A6J

Introduction

This page also exists in english.

Cette page a été créée en avril 2006. Dernière modif le 25 janvier 2007.

Merci de me faire part de vos remarques.

Le portable en question est un Asus A6Ja Q021-H, ce qui veut dire :

Pour ceux qui veulent encore plus de détails, voici le résultat d'un lspci -v.




Plan de la suite du document :


Avant de rentrer dans les détails, un ptit résumé des tests (qui ont consisté à mettre le CD d'install et à voir ce qui marche "out of the box"). Petit rappel, ça date d'avril 2006, donc que certains problèmes de drivers manquant seront spontanément résolus, quand toi, ami lecteur, liras ces lignes.

Bilan
Distribution Système Ecran Réseau Wifi
Knoppix 4.0.2 OOB OOB DRV NT
Mandriva 2006 OOB OOB DRV NT
Debian sarge OOB knoppix DRV NT
Debian etch OOB OOB DRV NT
Kubuntu 6.0 OOB OOB DRV NT
(OOB=fonctionne "out of the box", DRV="faut compiler un driver", NT="non testé").

Donc en gros, toutes les distributions en sont a peu près au même point en ce qui concerne l'A6J. Bémols pour kubuntu 5.10, qui s'installe mais plante au redémarrage (l'A6V a le même défaut : il parait que c'est la carte son... peut-être que la même bidouille fonctionne). Dans tous les cas, la carte graphique est gérée par le driver générique Vesa. Il faudra installer le driver ATI par la suite.




Préliminaires

Avant de commencer, il y a un *gros* problème commun à toutes les distributions : la carte réseau (trop récente) n'est pas reconnue à l'installation, donc pas question de faire une net-install. Pas d'affolement : Realtek en fournit un driver, donc le problème ne dure pas bin longtemps. Il va juste falloir récupérer et graver les (le premier ?) CD/DVD d'install de notre distrib favorite, ou au moins stocker les isos sur le disque dur.

En sortie d'usine, le DD a 3 partitions : hda1 (2Go cachée, restoration), hda2 (55Go windows) et hda5 (40Go, vide). La doc indique que le CD de restauration ne sais pas repartionner... Je ne suis pas allé essayer.

Win XP est pré-installé, et j'ai besoin de repartionner les disques pour mettre linux. Après 3 boulettes, et un massacre complet, je finis avec :

/dev/hda1 10Go	win_c (ntfs)
/dev/hda5 40Go	win_d (fat32)
/dev/hda6 1.2Go	(swap) 
/dev/hda7 10Go	debian
/dev/hda8 10Go	mandriva
/dev/hda9 24Go	home 
Pour réinstaller Win XP, il suffit alors de reprendre les CD de restauration, et de choisir l'option "réinstaller sur la première partition". Si à ce moment Win ne boote pas, c'est pas forcément une catastrophe : c'est parce qu'il n'a pas réécrit le MBR. On s'en occupera plus tard, avec grub.

Note : il aurait été mieux d'avoir une partition NTFS un peu plus grande, histoire de pouvoir y télécharger les DVD isos de la Debian (4.7Go chacun)... Il n'est pas possible d'avoir des fichiers de plus de 4Go sur une partition fat32.


Knoppix 4.0.2 (version d'octobre 2005)

J'ai le CD sous la main, et c'est toujours un bon premier test.

Pour booter sur le CD, taper 'escape'. Pour entrer dans le BIOS : 'F2'.

Pour booter : knoppix lang=fr. Knoppix démarre parfaitement, et détecte le dual core.

L'écran est configuré en 1024x768, driver générique Vésa, et a donc un aspect un peu flou.

La carte ethernet n'est pas détectée par défaut. Par contre, on peut compiler le driver qui se trouve sur le site de realtek, puis l'installer (de mémoire : configure ; make; make install). Ensuite, il faut taper modconf pour charger le module dans le noyau (rubrique drivers/net/r1000). Puis lancer netcardconfig qui se charge du reste (chouette utilitaire !)

Il paraît qu'il y a un utilitaire "qparted" qui permet de repartitionner les disques ... c'est peut-être le bon moment !


Debian Etch

Avant tout, il faut savoir que je suis beginner en Debian (j'ai plus l'habitude de Mandrake). Donc je vais peut-être dire des bétises !!

Installation

Je n'ai pas beaucoup de CDs sous la main, donc j'ai choisi de simplement télécharger le premier CD (via jigdo). Je récupèrerai la suite par le réseau. Tant qu'on y est, il faudrait aussi télécharger : Pour l'installation : taper "escape" pour booter sur le lecteur CD. Ensuite tout se passe plutôt bien. Le noyau par défaut est le 2.6 (i386 si je me souviens bien). (sauf un bug, avec l'image iso téléchargée le 15 avril : l'installeur veut absolument reformater tout le disque ; je n'ai pas eu de problème avec l'image du 6 avril ... mystère)

Point important : il faut choisir un grub ou lilo en mode *texte*. Ceux en mode graphique plantent.

Au reboot, en principe le serveur X démarre. Si ce n'est pas le cas, utilise le xorg.conf de knoppix, ou le mien ... à tes risques et périls comme on dit ;-).

Première chose à installer : synaptic (outils pour installer les packages) : aptitude install synaptic

Ensuite (via "search" dans synaptic) :

Rebooter pour utiliser le nouveau noyau smp (+rapide).

Carte réseau

Comme dit plus haut, il y a un driver à telecharger chez Realtek. Il faudra aussi les headers du noyau correspondant (le package s'appelle linux-headers, et plus kernel-headers) , qui ne sont pas sur le CD d'install.
  1. Installation des headers : dpkg --install linux-headers-2.6.15-1-686-smp_2.6.15-8_i386.deb
  2. cd rep_du_driver_reseau ; more README ; (faire ce qui y est expliqué)
  3. modprobe r1000 (en tant que root, pour insérer le module)
  4. dhclient (parce que j'ai une adresse DHCP)
En principe, le réseau fonctionne. A certains reboot, eth0 et eth1 sont apparemment inverses ... du coup plus rien ne marche. Il vaut mieux utiliser l'interface graphique (K -> system -> networking).

synaptic apt et autres

  1. Décommenter les lignes concernant les security updates (via synaptic, ou directement dans /etc/apt/sources.list) ; faire la mise à jour
  2. Ajouter les serveurs préférés pour les packages standards (cf. apt-howto pour la syntaxe du fichier sources.list, le choix du serveur, l'instalaltion via des .deb locaux).
  3. Installer tout ce qui manque : gnome, kde, ooffice, gdm, debhelper (nécessaire pour la carte graphique), firefox...

Firewall / shorewall 3.0.5

Faut suivre les indications de la doc (one-interface dans mon cas). En gros les fichiers de config par défaut sont quasiment bons.

BUG : En fait, une fois de temps à autres shorewall bloque tout... Bizarre ! C'est bien shorewall le problème, puisqu'un shorewall clear débloque la situation.... Mais bon, comme ça désactive tout, ce n'est pas la bonne solution ;-)

Solution : dans /etc/shorewall/shorewall.conf, mettre IP_FORWARDING=On (d'après /usr/share/doc/shorewall-doc/html/FAQ.htm, FAQ 15). Ca a toujours l'air de planter une fois de temps à autres ...
Solution 2 : ca pourrait être lié à un échange entre eth0 et eth1 (i.e. suivant l'humeur, ma carte réseau est sur eth0 ou sur eth1) ... à vérifier

Carte graphique / Xorg

[edit 20 novembre 2006] Je conseille maintenant une 2e méthode.

ATI fournit un driver (ati-driver-installer-8.24.8-x86.run). Le plus propre, c'est de : Voici le xorg.conf que j'utilise finalement.
Benchmark : glxgears donne ~4000 FPS sur la petite fenêtre... par contre, la machine chauffe !! J'ai aussi accès aux économiseurs d'écran de la mort :-) Ca valait le coup !

Je n'ai pas encore trouvé comment faire pour brancher 2 écrans simultanément, et avoir 2 résolutions différentes sur chacun (par ex 1280x800 sur le portable, et 1024x768 sur le projecteur). J'avais l'impression que le script aticonfig siat le faire (cf. aticonfig --resolution2), mais ca ne marche pas... Si quelqu'un a une idée...

Un truc aussi, qui change entre Debian et Mandriva (ou FC) : un telinit 3 (resp. 5) ne permet pas de passer en mode texte (resp. graphique). Une façon de faire : /etc/init.d/gdm stop.

Carte graphique / Xorg (2e méthode)

[edit 20 novembre 2006]

Après un update de septembre, l'accélération graphique avait cessé de marcher. En fait, Flavio Stanchina propose des packages Debian pour les drivers ATI. Il faut pour cela rajouter les repositories suivant dans /etc/apt/sources.list :

deb-src http://www.stanchina.net/~flavio/debian-official/ /
deb http://www.stanchina.net/~flavio/debian-official/ /

Dans synaptic, faire une recherche sur "fglrx" ; j'ai installé tous les packages.

Pour bénéficier de l'accélération 3D, il faut compiler le module pour le noyau. Tout est bien décrit dans le fichier /usr/share/doc/fglrx-kernel-src/README.Debian.gz (j'ai choisi la méthode "recommended" via module-assistant).

J'ai juste eu un souci avec module-assistant, qui utilise gcc pour compiler. Le problème, c'est que le noyau a été compilé avec gcc-4.0 (cf. dmesg | head -n 1), et que mon gcc par défaut est gcc-4.1 (cf. gcc --version). Et ça ne plait pas à fglrx (au redémarrage, fglrx dit quelque chose du genre "magic number =4.1, instead of 4.0" dans /var/log/Xorg.0.log) !
Pour contourner le problème (méthode brutale ... je n'en suis pas fier) :

cd /usr/bin
rm gcc
ln -s gcc-4.0 gcc
/ module-assistant ... comme dans la doc /
/ puis je remets comme avant : /
rm gcc
ln -s gcc-4.1 gcc
A posteriori, peut-être qu'il aurait suffit de faire un export CC=gcc-4.0 ?

Son

Il faut une version d'alsa-driver ≥ 1.0.11rc4, ce qui n'est pas encore le cas de ma distrib. Du coup, je suis allé récupérer et compiler la dernière version.
Suivre la méthode d'installation du fichier INSTALL. Le son fonctionne. Au reboot suivant, il ne fonctionne plus, je relance la procédure d'installation ... cette fois il survit au reboot (mystère).

Faudrait voir s'il est possible de créer un package debian, comme pour la carte graphique ... Un truc me surprend (agréablement) : synaptic est au courant de la version installée, et aujourd'hui (20 août 2006) ça correspond à la version courante de Debian. Faudra surveiller s'il me fera l'update comme un grand (ce serait sympa !).

ACPI, power management

N'a pas l'air de fonctionner, et la machine chauffe (ventile doucement, mais en permanence, beaucoup sur certaines applis) .... Je ne m'y suis pas encore penché sérieusement. Est-ce que la carte graphique fait chauffer la bête ?

[edit 20 juin 2006] la mise en veille ne marche pas, mais avec l'utilisation des trucs qui se trouvent dans kcontrol j'ai l'impression que ca a un peu amélioré la situation

Quelques notes au brouillon pour l'instant dans acpi.html.

Peaufinement

Packages utiles Outils : tkdiff, netselect,
TeX : a2ps, dvips, xdvi, auctex, openoffice
ZeBuLoN : refblas3, wxwindows, gtk-2, open-gl, open-motif
Loisirs : xmms, libdvdcss (ajouter la ligne "deb http://download.videolan.org/pub/videolan/debian/ sid main" dans /etc/apt/sources.list)
ooffice : msttcorefonts (pour les fontes Arial par ex.), oolatex (formules LaTeX dans ooffice, mais ce n'est pas un package debian ... un peu de travail requis)
Autres : moniwiki ?

bash : Changer le PS1='\u@\h:\w' en un PS1='[\u@\h \W]'

emacs : pour avoir un fond vert plutôt que blanc, comme sous mandriva, il faut rajouter ceci dans le fichier ~/.Xresources :

! this is for emacs, xemacs 
  emacs*Background: DarkSlateGray
  emacs*Foreground: Wheat
emacs*pointerColor: Orchid
 emacs*cursorColor: Orchid
  emacs*bitmapIcon: on
	emacs*font: fixed
    emacs.geometry: 120x40
puis soit relancer la session X, soit taper 'xrdb -merge .Xresources'. (bizarre, la machine a planté quand j'ai quitté ma session, au reboot tout marche ...)

Autres solutions possibles :

Ajouter (mwheel-install) dans le .emacs pour avoir la molette de la souris qui fonctionne. Voir aussi ma page sur emacs.

Touches d'accès rapide

Les 2 touches de réglage de luminosité fonctionnent spontanément.

Pour les autres, je me base sur l'excellente doc de lea-linux pour l'activation des touches d'un clavier multimédia. Problème : les 5 touches près de l'écran (mail, explorer, etc...) ne renvoient pas de keycode dans xev, ni n'annoncent leur scancode dans les logs système... du coup, je suis bloqué. Même souci avec les 5 touches multimédia (CD, play, pause, etc...) et les touches de réglage du son (Fn+F10 par ex.) C'est un échec complet... si quelqu'un a une idée, un ptit mail me ferait plaisir.
Je viens de voir passer une doc sur l'activation des touches sur l'A6V... peut-être une piste ?






Mandriva 2006

Fonctionne aussi bien (mal ?) que la Debian etch. Il suffit donc d'y reprendre les méthodes d'installation des drivers réseau, graphique, son.




Benchmarks

Compilation de Z8/calcul (time Zmake -j3) : 14m13s (sur proxima: 23m56s)
Compilation de Z8/calcul (time Zmake -j1) : 26m03s




Sources

Les sites qui m'ont servi sont dans mon bookmark, sections Laptops et Asus A6J. Un grand merci à Sener du forum linux-on-laptops pour ses conseils.


Linux On Laptops






Edits

Ci-dessous les ajouts successifs à cette page :

[20 janvier 2007]

À nouveau, un update pose problème au driver accéléré. Voici le message d'erreur de /var/log/Xorg.0.log :

(WW) fglrx(0): Kernel Module version does *not* match driver.
(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work
La version du driver est : fglrx-kernel-src 8.29.6-1. Je refais les manips décrites ci-dessus... et c'est pas ça le pb ! Solution le 25 janvier, en passant au moyau 2.6.18.

[25 janvier 2007] Installation du noyau 2.6.18 & correction des problèmes d'accélération graphique

Package installés :

La bonne nouvelle, c'est que je n'ai pas eu à recompiler de driver réseau. Il marche spontanément !

Quant à l'accélération graphique, la méthode module-assistant est toujours aussi agréable (surtout que le nouveau noyau a été compilé avec gcc-4.1, donc plus besoin de l'entourloupe). Et je retrouve l'accélération graphique !

2e super bonne nouvelle : la mise en veille (suspend to RAM) marche maintenant sans aucun effort. J'ai eu un petit souci avec suspend to disk (activé par défaut quand je claque le couvercle). Du coup, j'ai réglé dans kcontrol pour que ce soit suspend to RAM par défaut.

Le 28 février: à nouveau un changement de noyau nécessite un petit coup de module-assistant pour la carte graphique.

[26 janvier 2007] Installation des compilos intel

J'utilise les compilos/debugger intel en version non commerciale. Intel fournit les .rpm. L'utilitaire alien fonctionne parfaitement pour créer les .deb :

  alien -k intel_compilo.rpm
  make_deb_9 intel_compilo.deb
  mv intel_compilo.deb ~/debs_packages
  dpkg-scanpackages debs-packages /dev/null |gzip > debs-packages/Packages.gz
puis installer le package via synaptic. Cette manip installe le tout dans /opt/intel. Elle marche pour icc, ifort et idb. make_deb_9 est un script trouvé sur le net, qui patch le package. D'après ce que j'en ai vu, il remplace <INSTALLDIR> par le bon répertoire dans les scripts du répertoire bin. On pourrait le faire à la main, mais autant utiliser le script qui existe !

Subsiste un problème avec idb :
/opt/intel/idb/9.1.036/bin/iidb: error while loading shared libraries: libXft.so.1: cannot open shared object file: No such file or directory
Le problème, c'est que j'ai la libXft.so.2 d'installée. Une astuce, pas jolie-jolie, mais qui a le mérite de fonctionner : faire un lien libXft.so.1 vers libXft.so.2.