La Fibre
Télécom => Logiciels et systèmes d'exploitation => Linux => Discussion démarrée par: stylou08 le 25 août 2020 à 11:32:12
-
Le problème apparaît après l'installation de Debian Buster et surtout avec certains CPU AMD Ryzen (bien que cela arrive aussi avec d'autres CPU ou "GPU").
Toutes les versions sont concernées, Netinstall, LIve, DVD, y compris les images avec les "firmwares non-free".
Pour résoudre le problème, deux solutions possibles :
_ La première est de passer à Debian "Sid". Elle peut très bien être installée sur un pc personnel (et peut être devoir activer les paquets non-free) .
_ La seconde est à faire étape par étape en commençant par installer le dernier "kernel".
A chaque étape, nous passerons en "mode console" (plus précisément tty) accessible habituellement avec la combinaison de touches :
Ctrl+Alt+F2 ou Ctrl+Alt+Fx (entre F1 et F6)
Il faudra se loguer, puis passer root
su -
Le - est important depuis Buster sinon "root" n'aura pas accès à toutes ses commandes.
1/ Installer le dernier "kernel"
Nous modifions le fichier sources.list pour y ajouter le dépôt de rétroportage (nous profitons pour activer les paquets contrib et non-free si ce n'est pas le cas).
nano /etc/apt/sources.list
Nous devons obtenir ceci :
deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free
deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free
deb http://deb.debian.org/debian/ buster-backports main contrib non-free
deb-src http://deb.debian.org/debian/ buster-backports main contrib non-free
Nous actualisons la liste des paquets
apt update
En suite nous allons chercher les dernières images (exemple ci dessous pour mon cas)
apt search linux-image-5* | grep bpo.2.amd64
Nous pouvons aussi simplement rechercher linux-image-* avec l'option grep amd64
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
linux-headers-5.4.0-0.bpo.2-amd64/buster-backports 5.4.8-1~bpo10+1 amd64
Header files for Linux 5.4.0-0.bpo.2-amd64
linux-headers-5.5.0-0.bpo.2-amd64/buster-backports 5.5.17-1~bpo10+1 amd64
Header files for Linux 5.5.0-0.bpo.2-amd64
linux-headers-5.6.0-0.bpo.2-amd64/buster-backports 5.6.14-2~bpo10+1 amd64
Header files for Linux 5.6.0-0.bpo.2-amd64
linux-headers-5.7.0-0.bpo.2-amd64/buster-backports,now 5.7.10-1~bpo10+1 amd64 [installé]
Header files for Linux 5.7.0-0.bpo.2-amd64
linux-image-5.4.0-0.bpo.2-amd64/buster-backports 5.4.8-1~bpo10+1 amd64
linux-image-5.4.0-0.bpo.2-amd64-dbg/buster-backports 5.4.8-1~bpo10+1 amd64
Debug symbols for linux-image-5.4.0-0.bpo.2-amd64
linux-image-5.4.0-0.bpo.2-amd64-unsigned/buster-backports 5.4.8-1~bpo10+1 amd64
linux-image-5.5.0-0.bpo.2-amd64/buster-backports 5.5.17-1~bpo10+1 amd64
linux-image-5.5.0-0.bpo.2-amd64-dbg/buster-backports 5.5.17-1~bpo10+1 amd64
Debug symbols for linux-image-5.5.0-0.bpo.2-amd64
linux-image-5.5.0-0.bpo.2-amd64-unsigned/buster-backports 5.5.17-1~bpo10+1 amd64
linux-image-5.6.0-0.bpo.2-amd64/buster-backports 5.6.14-2~bpo10+1 amd64
linux-image-5.6.0-0.bpo.2-amd64-dbg/buster-backports 5.6.14-2~bpo10+1 amd64
Debug symbols for linux-image-5.6.0-0.bpo.2-amd64
linux-image-5.6.0-0.bpo.2-amd64-unsigned/buster-backports 5.6.14-2~bpo10+1 amd64
linux-image-5.7.0-0.bpo.2-amd64/buster-backports,now 5.7.10-1~bpo10+1 amd64 [installé]
linux-image-5.7.0-0.bpo.2-amd64-dbg/buster-backports 5.7.10-1~bpo10+1 amd64
Debug symbols for linux-image-5.7.0-0.bpo.2-amd64
linux-image-5.7.0-0.bpo.2-amd64-unsigned/buster-backports 5.7.10-1~bpo10+1 amd64
Nous voyons que la dernière est la 5.7.0, c'est celle que nous allons installer en ciblant le dépôt backports.
apt install -t buster-backports linux-image-5.7.0-0.bpo.2-amd64 linux-headers-5.7.0-0.bpo.2-amd64
Nous actualisons grub.
update-grub
Puis nous redémarrons.
reboot
2/ Installer un firmware non libre :
Si la partie graphique ne se lance toujours pas, nous passons la commande suivante pour installer le micro-code non libre.
Pour AMD :
apt install firmware-amd-graphics
Pour les autres (Intel, Nvidia...) le firmware suivant devrait convenir :
apt install firmware-misc-nonfree
Normalement au reboot, la partie graphique devrait fonctionner.
reboot
3/ Modifier les options de lancement depuis Grub.
La suite est à faire uniquement si il y a toujours cet écran noir et que vous avez un AMD Ryzen ou une carte graphique AMD. Vous aurez peut être remarqué une erreur au démarrage dans les lignes de code du style "AMD-Vi IO_PAGE_FAULT".
Nous modifions le fichier configuration de grub
nano /etc/default/grub
Nous ajoutons l'option amd_iommu=soft à la ligne GRUB_CMDLINE_LINUX=
ATTENTION de ne pas confondre GRUB_CMDLINE_LINUX= avec GRUB_CMDLINE_LINUX_DEFAULT=
Nous devons obtenir ceci
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX="amd_iommu=soft"
Nous actualisons grub
update-grub
Nous redémarrons la machine
reboot
Si la même erreur apparaît toujours, il faudra alors passer la ligne GRUB_CMDLINE_LINUX="amd_iommu=off".