J'avais installé une Ubuntu 10.10 sur le PC Portable d'un ami, un Acer Aspire 5736Z[1], et tout allait pour le mieux.
Mais la date de fin de support de cette version étant dépassée, il s'est résigné à mettre à niveau sa distribution et lancé le processus de passage en 11.04.
Tout s'est en apparence bien passé, mais au premier redémarrage, écran noir !
Toutefois, le petit roulement de tambour d'accueil ayant retenti, il pense que ce n'est peut-être qu'un détail et m'appelle.
Ma première tentative de démarrage sur une clé USB doté d'une distribution récente "live" fini de la même façon; écran noir !
Après quelques recherches, essais, et moult tâtonnements, ce problème semble toucher tous les PC portables équipés d'un chipset graphique "Intel GMA 4500M graphics".
J'ai fini par trouver le moyen de régler son problème, et la solution pouvant servir à d'autres, je la trace ci-dessous.
Ubuntu 12.04 LTS sur Acer Aspire 5736Z
Installation depuis CD alternate[2] avec, au démarrage, le choix de deux options par le biais de la touche F6; nomodeset et mode expert
- nomodeset permet d'éviter l'écran noir au premier boot,
- mode expert pour faire le partitionnement à la main, et récupérer des partitions existantes.
L'installation se fait en mode texte, et au premier boot, la définition est fixée à 1024x768 au lieu des 1366x768 natifs de la dalle LCD. Qui plus est, les touches de réglage de luminosité ne fonctionnent pas (ou à l'envers !), et l'écran redevient noir au sortir de l'hibernation.
Mais au moins, on peut se connecter et travailler; voyons maintenant comment régler tous ces problèmes.
1 - Modification du /etc/default/grub
Ouvrir un terminal et taper
gksu gedit /etc/default/grub
Remplacer :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="nomodeset"
par :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi=Linux acpi_backlight=legacy"
#GRUB_CMDLINE_LINUX="nomodeset"
- le "acpi_osi=Linux" permet de gérer le problème de définition,
- le "acpi_backlight=legacy" permet de restaurer le réglage de luminosité par les touches Fn + => et Fn + <=,
- la ligne avec le "nomodeset" n'est plus utile et gêne le fonctionnement du "acpi_osi=Linux".
Il semble possible d'utiliser "acpi_backlight=vendor" au lieu de "acpi_backlight=legacy", je n'ai pas testé.
2 - Modification du /etc/rc.local
Ouvrir un terminal et taper
gksu gedit /etc/rc.local
Ajouter une ligne avant le "exit" de la fin, remplacer :
# By default this script does nothing.
exit 0
par :
# By default this script does nothing.
setpci -s 00:02.0 F4.B=00
exit 0
Ainsi, au démarrage, la luminosité est placée au maximum (B=00); on peut la fixer sur une valeur intermédiaire, le noir étant indiqué par B=FF.
3 - Création du /etc/pm/sleep.d/screen.backlight
Ouvrir un terminal et taper
gksu gedit /etc/pm/sleep.d/screen.backlight
Recopier les lignes suivantes :
#!/bin/sh
case "$1" in
thaw|resume)
/usr/bin/setpci -s 00:02.0 F4.B=00>/dev/null
;;
*)
;;
esac
exit $?
Rendez le script exécutable :
sudo chmod +x /etc/pm/sleep.d/screen.backlight
Grâce à ce script placé dans ceux qui sont lancés au réveil, l'écran est restauré à sa luminosité maximale au sortir de l'hibernation.
En espérant que ce petit mémo serve à d'autres.