[Xebian] lightdm service failed (+Nvidia Optimus)

Tags: #<Tag:0x00007fb429199fd0> #<Tag:0x00007fb429199d78> #<Tag:0x00007fb4291998c8>

Bonjour,

sur un vieux Dell Inspiron n5110, j’ai donc Xebian (Debian Sid Xfce) installé.
laptop ayant deux vga, un intel, un nvidia - fichu technologie qui m’enquiquinera la vie jusqu’au bout… ou pas.

# lspci | grep -i vga
00:02.0 VGA compatible controller: Intel corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 525M] (rev a1)

je viens de faire une màj de Xebian par l’option « full-upgrade » d’apt.
Tout s’installe correct, aucune erreur.

au reboot, pas de session X, car le service Lightdm failed à démarrer. :frowning:
un petit regard sur le status des services « failed ».
3 refusent de démarrer :

  • lightdm, nvidia-persistenced et systemd-modules-load

l’analyse des journaux restitue :

  • celui de lightdm, juste qu’il refuse de démarrer
  • celui du service nvidia-persistenced, voici le message d’erreur :

please ensure that the NVIDIA device files (/dev/ndivia*) exist, and that user 120 has read and write permissions for that files

  • celui du service systemd-modules-load :

Error running install command ‹ modprobe nvidia-modset; modprobe -i nvidia-legacy-390xx-drm › for module nvidia_drm’ retcode 1
Failed to insert module ‹ nvidia_drm ›: Invalid argument

j’essaye avec les droits root la commande :

# modprobe nvidia-modset
modprobe: FATAL: module nvidia-modset not found in directory /lib/modules/5.16.0-3-amd64

Donc le service lightdm ne peut pas démarrer, car apparemment, la gestion de nvidia est « à l’ouest ».
Voilà pour l’analyse.


Bien, et là, je me rappelle que c’est une architecture Optimus ! Grrr…

=> en août 2019, j’avais écrit ce post ensuite direction la page du wiki Debian « NVIDIA Optimus »
=>Je vérifie ensuite la page « NvidiaGraphicsDriver » qui me renvoie :

  • à la page NVIDIA Appendix A pour bien vérifier que mon GPU « GT 525M » est bien supporté par le pilote 390.xx - c’est le cas !
  • je m’inquiète d’installer « nvidia-legacy-390xx-driver firmware-misc-nonfree » ; le second s’installe, le premier plante pour une histoire de dépendance non satisfaite :

libegl1 : Dépend : libegl-mesa0 mais ne sera pas installé.
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état ».

surpris que le firmware nécessaire ne soit pas installé !

=> Ensuite, il me faut vérifier que l’option « Secure Boot » soit désactivé dans le UEFI ; sauf que sur ce vieux Dell, c’est un Bios qui est installé, donc pas ce soucis !

=> pour finir, il y a cette variable d’environnement " __NV_PRIME_RENDER_OFFLOAD=1" à utiliser - je n’ai pas trop compris comment, si c’est au cas par cas ! quid ?


Bien, si je comprend bien en l’état, je ne peux pas utiliser une session X, et il me faut attendre de futures màj de la Debian en question, n’est-ce pas ?!

Voilà !

Bien que je sois d’avis que ce n’est pas pertinent :

# grep -v '#' /etc/apt/sources.list
deb http://deb.debian.org/debian/ sid main contrib non-free

# grep -v '#' /etc/apt/sources.list.d/xebian.list
deb http://archive.xebian.org/debian unstable/

Concernant le binaire nvidia-detect que j’ai dû installer ; il ne fait que confirmer ce que j’ai écrit plus haut :

# nvidia-detect
Detected NVIDIA GPUs:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108M [GeForce GT 525M] [10de:0df5] (rev a1)

Checking card: NVIDIA Corporation GF108M [GeForce GT 525M] (rev a1) 
Your card is only supported up to the legacy drivers series.
It recommanded to install the
   nvidia-legacy-390xx-driver
package

Bref !
(me faire réanalyser ce que j’ai décrit correctement et longuement est une perte de temps - ce n’est que mon avis ; désolé mais je ne vois pas en quoi cela m’aide à résoudre le problème et mon questionnement )

Bonjour,

Les modules n’etant pas trouve, il semble que dkms ne s’est pas relance ou pas correctement apres une mise a jour du kernel.

Je ne suis plus sur a 100% mais un depkg-reconfigure devrait relancer le processus de compilation du driver quelques choses comme ceci :

dpkg-reconfigure nvidia-legacy-390xx-kernel-dkms

Si cela ne fonctionne tu devrais avoir une log dans

/var/lib/dkms/nvidia*

Tu pourrais aussi preciser les versions et les packages installes :

dpkg -l | grep nvidia

désolé.
une perte de TON temps, tu veux dire.

Bonjour,

+1 !
Une bonne piste à suivre, vérifier avec la commande si le module est bien compilé et installé sur le noyau actif :

dkms status

A+

# dpkg-reconfigure nvidia-legacy-39xx-kernel-dkms
Deleting module nvidia-legacy-390xx-390.147 completely from the DKMS tree.
Loading new nvidia-legacy-390xx-390.147 DKMS files...
Building for 5.16.0-3-amd64
Module build for kernel 5.16.0-3-amd64 was skipped since the
kernel headers for this kernel does not seem to be installed.

# dkms status
nvidia-legacy-390xx/390.147:  added

Pour dpkg -l | grep nvidia, voir https://0x0.st/oPon.list :wink:

Bonsoir,

Le module n’est pas installé sur le noyau 5.16.0-3-amd64, il semble manquer les fichiers d’en-tête du noyau :

Est-ce que le paquet linux-headers-amd64 est correctement installé ?

A+

non, et il semble non installable pour l’instant !

Certains paquets ne peuvent être installé. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation : 

Les paquets suivants contiennent des dépendances non satisfaites : 
 linux-headers-5.16.0-3-amd64 : Dépend : linux-compiler-gcc-11-x86
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode "garder en l'état". 

Je pense que je vais attendre quelques jours, le temps que certains correctifs soient disponibles.
Dans l’état, je ne vois pas comment « corriger le tir » !

Bonsoir,

Quelques soucis au niveau des paquetages sur ton installation ?

Le résultat de ces commandes pourrait fournir quleques indices :

sudo apt update
sudo apt full-upgrade
dpkg --audit
dpkg -l | grep -vE "^ii|^rc"

A+

Bonsoir,

Ainsi que cette commande :

apt-cache policy linux-compiler-gcc-11-x86 linux-headers-amd64

car je viens de tester et je peux installer sans probleme le paquet linux-headers-amd64 et ces dependances.

voir https://0x0.st/oPKA.txt

voir https://0x0.st/oPKm.txt


ne retourne aucun message, tel que :

# dpkg --audit 
# 

voir https://0x0.st/oPKb.list


voir https://0x0.st/oPKT.policy


Juste pour info, voici le protocole que je suis pour gérer Sid :

lors de cette màj, j’ai vu plein de bogues, dont sur apt, et gcc-11 si je ne me trompe pas, ayant une gravité sérieuse, donc, j’ai épinglé les paquets !

je ne sais plus comment on retrouve les paquets épinglés !

Bonjour,

Je n’aurai pas du etre restrictif car ca semble etre un autre paquet qui est bloque. Peux tu donner le resultat de ceci :

apt-cache policy
for i in /etc/apt/preferences.d/*; do printf "${i}\n"; cat ${i}; done

Bonjour,

Cette commande devrait en donner la liste :
apt-mark showhold

Dans ce retour, l’absence du paquet libqt5gui5 semble causer problème :

Faudrait peut-être en tenter l’installation ?

A+

voir http://0x0.st/oPZz.txt

voir http://0x0.st/oPZ-.txt

ne retourne rien

fait !
de ce côté, cela semble bon.

par contre, je ne peux toujours pas installer le paquet linux-headers-amd64
pour les mêmes raisons que marqué dans le post ci-dessus :wink:

Bonjour,
Tu as des elements qui semblent date de 2019 dans /etc/apt/preferences.d/apt-listbugs. Je te conseillerai de renommer le fichier en /etc/apt/preferences.d/apt-listbugs.disabled de verifier via la commande apt-cache policy que plus aucun paquet n’est epingle et de retenter l’installation de linux-headers-amd64. Si c’est toujours en erreur transmettre le message de la console. Ensuite tu pourras renommer de nouveau le fichier comme initialement mais il faudra faire une verification dans celui-ci pour verifier si tout est encore d’actualite.

Bon, c’est fait !
Et, en effet, je suis arrivé à résoudre la situation petit-à-petit…
j’ai pu installer linux-headers-amd64, mais il a fallu que j’accepte de l’installer malgré le bogue de gravité sérieuse dessus.
j’ai du aussi (ré)installer le paquet xinit, qui manquait… problème : il installe le paquet xserver-xorg-video-intel que j’ai dû désinstaller ensuite juste avec l’option « remove » d’apt.
j’ai pu aussi régler un problème relatif à pulseaudio, d’ailleurs. En dépendance est le paquet libwebp7 - franchement, quelle est l’utilité d’un outil de compression graphique dans la gestion de son - qui a un bogue de gravité, mais sur une autre architecture que amd64, i386, donc acceptation du paquet.

Bref, j’ai enfin le gestionnaire de session X fonctionnel, ainsi que la session Xfce4 !

Merci de vos efforts pour m’aider UTILEMENT à tous les deux, @mickey979, et @ylag.
Cela me montre que je dois améliorer mon process de gestion de Sid, en cas de soucis, suite à des épinglages d’apt !
il faut que j’ai le réflexe d’utiliser apt-cache policy et de gérer apt-listbugs et le fichier apt-listbugs dans les préférences d’apt.

Vraiment utile ! Merci…

Bonjour,

Paquets épinglés :
     libmailutils8 -> 1:3.13-1 avec la priorité 30000
     openjdk-11-jre-headless -> 11.0.10+9-1 avec la priorité 30000
     grub2 -> 2.04-20 avec la priorité 30000
     apt -> 2.3.9 avec la priorité 30000
     wpasupplicant -> 2:2.9.0-21 avec la priorité 30000
     adwaita-icon-theme -> 40.1.1-2 avec la priorité 30000
     libllvm11:i386 -> 1:11.1.0-6 avec la priorité -30000
     wireless-regdb -> 2020.04.29-2 avec la priorité 30000
     libfontconfig1:i386 -> 2.13.1-4.4 avec la priorité -30000
     libgl1-mesa-dri -> 20.3.5-1 avec la priorité 30000
     libpoppler-glib8 -> 0.71.0-6 avec la priorité 30000
     libwebp7 -> 1.2.1-7+b1 avec la priorité -30000
     binutils -> 2.37-5 avec la priorité 30000
     libxt6 -> 1:1.2.0-1 avec la priorité 30000

À mon avis, tous ces paquets épnglés contribuent probablement à ton souci; faudrait voir ce qu’en pense @micky979 ?

A+

lis, stp, mon post précédent :wink:

Oups… Désolé, je l’avais loupé. :upside_down_face:

A+