L’objectif de ce document est de détailler les grandes lignes de l’installation de Debian GNU/Linux [1] sur un PC portable. Tous les portables étant très différents, j’ai réalisé des pages spécifiques pour les quelques modèles qui me passent entre les mains mais cette page regroupe les manipulations à faire dans la plupart des cas. Notons que la procédure expliquée ci-dessous est basée sur une Debian Sid afin que le support matériel soit le meilleur possible mais il est souvent possible de tout faire fonctionner sur une Debian stable avec un noyau récent.
Ce document a été rédigé en LaTeX en utilisant l’excellent Vim sous Debian GNU/Linux. Il est disponible aux formats XHTML et PDF. Les sources LaTeX sont disponibles ici : LATEX
Copyright ©2008 Matthieu VOGELWEITH <matthieu@vogelweith.com>.
Vous avez le droit de copier, distribuer et/ou modifier ce document selon les termes de la GNU Free Documentation License, Version 1.2 ou ultérieure publiée par la Free Software Foundation ; avec aucune section inaltérable, aucun texte de première page de couverture, et aucun texte de dernière page de couverture. Une copie de la licence est disponible dans la page GNU Free Documentation License.
- Installation Etch minimale
# aptitude install vim postfix mtr-tiny less iproute ssh pciutils dnsutils ntp
# aptitude install alsa-base alsa-utils
Après le chargement des modules noyaux et l’installation d’ALSA, il se peut que le son ne fonctionne toujours pas : le son est peut-être tout simplement coupé. Pour modifier les paramètres de la carte son il faut utiliser un "mixer" qui va permettre, entrre autre, d’activer ou désactiver chaque module de la carte.
Le mixer le plus connu est alsamixer, fourni par le paquet alsa-utils. Pour avoir un mixer plus complet et graphique, on peut installer gamix :
# aptitude install gamix
Gestion des cartes WLAN :
# aptitude install wireless-tools
Dans /etc/network/interface :
iface ath1 inet dhcp
wireless-essid Mon_ESSID
wireless-key xxxxxxxxxxxxxxxxxxxxxxxxxx
wireless-keymode open
Le gestion de l’energie des ordinateurs portables sous linux est assez complexe et malheureusement pas toujours évident (et pas toujours possible) à mettre en place. Je détaillerai dans ce chapitre deux aspects très important pour l’économie d’énergie la fréquence du processeur et la gestion de l’ACPI (Advanced Configuration and Power Interface). Comme pour les autres chapitres de ce document, vous trouverez les informations spécifiques à quelques mofèles dans les pages dédiées de cette rubrique.
La gestion de la fréquence CPU fonctionne maintenant très bien sur quasiment tous les processeurs "mobiles". L’idée est descendre la fréquence du processeur lorsqu’elle n’est pas necessaire ou lorsque le niveau de batterie est trop faible. Pour que ce système fonctionne correctement, il faut charger les modules noyaux appropriés (cpufrequtils) et installer un démon que se chargera d’analyser l’état du système pour définir la fréquence apropriée (cpufreqd [2]). J’ai toujours utilisé cpufreqd [2] tout simplement parcequ’il fonctionne très bien et parcequ’il est possible de faire des réglages très fin en fonction des besoins de chacun. Il existe cependant d’autre démons capable de gérer la fréquence du processeur comme cpudyn ou powernowd.
L’installation des paquets se fait tout simplement à l’aide de la commande suivante :
# aptitude install cpufreqd cpufrequtils
Toute la configuration de cpufreqd se trouve dans /etc/cpufreqd.conf. En principe, aucune modification n’est necessaire, la configuration fournie avec le paquet est très bien faite et tout à fait adaptée à la majorité des cas. Pour connaitre l’état du processeur, toutes les informations sont disponibles dans les différents fichiers du répertoire /sys/devices/system/cpu/cpu0/cpufreq/. Il est également possible d’obtenir des informations un peu plus lisible avec la commande cpufreq-info fournie par le paquet cpufrequtils :
# cpufreq-info
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 0 1
hardware limits: 800 MHz - 1.80 GHz
available frequency steps: 1.80 GHz, 1.80 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: userspace, powersave, ondemand, conservative, performance
current policy: frequency should be within 800 MHz and 800 MHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 0 1
hardware limits: 800 MHz - 1.80 GHz
available frequency steps: 1.80 GHz, 1.80 GHz, 1.20 GHz, 800 MHz
available cpufreq governors: userspace, powersave, ondemand, conservative, performance
current policy: frequency should be within 800 MHz and 800 MHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
La mise en veille ou en hibernation des portables a longtemps été très difficile à faire fonctionner correctement mais les choses ont maintenant beaucoup évolué. Sous Debian, trois paquets sont indispensable pour que la mise en veille fonctionne :
L’installation des paquets se fait toujours de la même manière :
# aptitude install acpid acpi-support acpi
Maintenant, pour mettre la machine en veille (suspend to RAM), il suffit d’executer la commande suivante en root :
# /etc/acpi/sleep.sh
Une fois la machine en veille, seule la RAM est alimentée et on peut estimer que la batterie pert un pourcent d’autonomie par heure. Pour sortir de la veille, en général il suffit de presser sur le bouton "Power".
Pour mettre la machine en hibernation (suspend to DISK), il faut de la même façon, executer la commande suivante :
# /etc/acpi/hibernate.sh
Dans cet état, la machine n’est plus du tout alimentée, toutes les données de la RAM sont écrites dans la partition de SWAP de la machine (d’ou l’intérêt d’avoir une partition de SWAP de taille supérieur à la taille de la RAM).
En cas de problèmes lors de la mise en veille ou lors de la sortie de veille, certain paramètres peuvent être ajustés dans le fichier /etc/default/acpi-support.
Pour que le système se mette en veille automatiquement après un certain temps d’inactivité ou si la batterie est trop faible, on peut utiliser sleepd disponible dans le paquet du même nom.
# aptitude install sleepd
Par défaut, sleepd utilise APM et hibernate (uswsusp) pour gérer la mise en veille. Si la mise en veille directement avec les scripts fournit par acpi-support, il suffit de configurer sleepd pour qu’il utilise ces scripts. Pour cela éditez le fichier /etc/default/sleepd et modifiez la variable PARAMS comme indiqué ci-dessous.
PARAMS=" -u 900 --sleep-command /etc/acpi/sleep.sh --hibernate-command /etc/acpi/hibernate.sh"
Avec cette configuration, le système se mettra en veille (suspend to ram) au bout de 15 minutes d’inactivité et en hibernation (suspend to disk) lorque le niveau de la batterie deviendra critique. Pour activer ces changement, il faut bien sûr redémarrer le démon avec la commande suivante :
# /etc/init.d/sleepd restart
Les machines portables étant plus sujette au vol, elles sont certainement les plus concernées par le cruptage de partitions. En effet, dès l’instant ou il est possible d’avoir un accès physique au disque dur, l’authentification réalisée par le système d’exploitation devient inutile pour protéger les données confidentielles présentes sur le disque dur ; il suffit par exemple de booter un live-CD et de lire les partitions sans aucun soucis.
Il est donc importants de crypter les partitions contenant des donnés sensibles pour qu’elles soient illisibles par un personne non autorisée. Attention, il par exemple important de crypter la partition de SWAP : si la machine est en hibernation est que le SWAP n’est pas crypter il est tout a fait possible de récuperer des informations, voir de sortir simplement la machine de l’hibernation et d’accéder à l’ensemble des données présentes sur le disque.
Important : Il n’est pas possible de convertir une parition existante en une partition cryptée. Il faut obligatoirement refaire complétement la partition.
Différent sur tous les modèles.
# aptitude install xserver-xorg-input-synaptics
Sous Mac OS X, le bouton droit peut être emuler avec un "clic à deux doigts". De la même façon, le défilement vertical est obtenu en déplaçant 2 doigts simultanément sur le trackpad. Pour obtenir un comportement similaire à Mac OS X, il suffit d’editer la section "InputDevice" du fichier /etc/X11/xorg.conf :
Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "Protocol" "auto-dev"
Option "SendCoreEvents" "true"
Option "SHMConfig" "true"
EndSection
Le driver Synaptics permet de régler très finement le comportement du trackpad, toutes les options sont disponibles dans la page man. Une petite astuce pour ne pas redémarrer à chaque modification de la config : utiliser synclient qui applique les modifications à chaud.
# aptitude install bluetooth