La réponse sur Pilotes Nvidia - Impossible de vérifier "Forcer le pipeline de composition complète" fait quelque chose qui empêche mon ordinateur portable de détecter le moniteur externe. L'annulation de la solution rétablit la capacité de détecter le deuxième moniteur. Il me reste encore à déchirer sur tout type de lecture vidéo. Youtube, lecteur vidéo, etc.
J'utilise Ubuntu 18.04 avec i7-8750H et RTX 2070 (nvidia-driver-430).
Modifier:
Sortie de inxi
:
Graphics: Card-1: Intel Device 3e9b
Card-2: NVIDIA Device 1f10
Display Server: x11 (X.Org 1.20.4 )
drivers: modesetting,nvidia (unloaded: fbdev,vesa,nouveau)
Resolution: [email protected], [email protected]
OpenGL: renderer: GeForce RTX 2070/PCIe/SSE2
version: 4.6.0 NVIDIA 430.26
Capture d'écran des paramètres nvidia:
Mise à jour 08/09/2019:
Il semble que gord (OP) a raison dans son commentaire . Vous n'avez pas besoin de passer par toutes les étapes que j'avais décrites précédemment (je ne les supprime pas, juste au cas où quelqu'un les trouverait utiles) pour se débarrasser des déchirures.
Ce que vous devez faire, c'est:
Ouvrez Paramètres du serveur NVIDIA X.
Accédez à Configuration d'affichage du serveur X.
Sélectionnez l'écran que vous souhaitez.
Cliquez sur le bouton Avancé.
Activer Forcer le pipeline de composition ou Forcer le pipeline de composition complète (essayez les deux et activez celui qui vous donne les meilleurs résultats).
Vous pouvez également activer Forcer le pipeline de composition ou Forcer le pipeline de composition complète en exécutant les commandes suivantes dans votre terminal:
Pour Force Composition Pipeline:
nvidia-settings --assign CurrentMetaMode="$(xrandr | sed -nr '/(\S+) connected (primary )?([0-9]+x[0-9]+)(\+\S+).*/{ s//\1: \3 \4 { ForceCompositionPipeline = On }, /; H}; ${ g; s/\n//g; s/, $//; p }')"
Pour Forcer le pipeline de composition complète:
nvidia-settings --assign CurrentMetaMode="$(xrandr | sed -nr '/(\S+) connected (primary )?([0-9]+x[0-9]+)(\+\S+).*/{ s//\1: \3 \4 { ForceFullCompositionPipeline = On }, /; H}; ${ g; s/\n//g; s/, $//; p }')"
Ces commandes utilisent xrandr
et sed
avec quelques expressions régulières pour obtenir la configuration actuelle du moniteur au format approprié et l'utiliser comme entrée pour le nvidia=settings --assign
, qui active le paramètre souhaité.
Vous ne devriez plus avoir de déchirure d'écran.
Cependant, dans mon cas, les deux options ci-dessus seraient désactivées après le redémarrage.
Pour activer Force Composition Pipeline ou Force Full Composition Pipeline après le redémarrage, procédez comme suit:
Exécutez la commande appropriée, selon votre cas, à partir des commandes ci-dessus et assurez-vous qu'elle fonctionne correctement, c'est-à-dire que vous n'avez pas de déchirement d'écran sur vos moniteurs.
Ajoutez l'une des commandes suivantes (selon ce qui vous convient le mieux) à vos applications de démarrage :
Pour Force Composition Pipeline:
bash -c "sleep 10 && nvidia-settings --assign CurrentMetaMode=\"$(xrandr | sed -nr '/(\S+) connected (primary )?([0-9]+x[0-9]+)(\+\S+).*/{ s//\1: \3 \4 { ForceCompositionPipeline = On }, /; H}; ${ g; s/\n//g; s/, $//; p }')\""
Pour Forcer le pipeline de composition complète:
bash -c "sleep 10 && nvidia-settings --assign CurrentMetaMode=\"$(xrandr | sed -nr '/(\S+) connected (primary )?([0-9]+x[0-9]+)(\+\S+).*/{ s//\1: \3 \4 { ForceFullCompositionPipeline = On }, /; H}; ${ g; s/\n//g; s/, $//; p }')\""
Le sleep 10
commande ajoute juste un délai de 10 secondes pour s'assurer que le bureau est entièrement chargé avant d'exécuter nvidia=settings --assign
commande. Vous devrez peut-être ajouter un délai plus important si votre bureau prend plus de temps pour se charger complètement.
Ancienne réponse. Essayez-les si la méthode ci-dessus ne fonctionne pas pour vous.
Ce qui est suggéré dans la réponse que vous avez publiée est correct pour Ubuntu 16.04.
Pour Ubuntu 18.04 et versions ultérieures, vous devez modifier options nvidia_387_drm modeset=1
à options nvidia-drm modeset=1
(la version du pilote Nvidia n'est plus nécessaire).
Donc, ce que vous devez faire pour Ubuntu 18.04 et versions ultérieures est:
Créez un fichier dans votre /etc/modprobe.d
répertoire appelé zz-nvidia-modeset.conf
.
Ajoutez-y les lignes suivantes:
#enable prime-sync
options nvidia-drm modeset=1
Depuis la course du terminal:
Sudo update-initramfs -u
Redémarrez.
Pour activer l'adaptateur Nvidia, après le redémarrage, vous devez exécuter
Sudo prime-select nvidia
puis déconnectez-vous et reconnectez-vous.
Modifier: Si vous utilisez Gnome, vous devrez utiliser un autre gestionnaire d'affichage, tel que lightdm
, puisque gdm
ne permet pas aux moniteurs externes de fonctionner avec nomodeset=1
.
Pour installer lightdm
exécutez:
Sudo apt install lightdm
Après avoir installé lightdm
exécutez
Sudo dpkg-reconfigure lightdm
et sélectionnez-le comme gestionnaire d'affichage dans la fenêtre du terminal qui apparaît.