No logro que mi computadora portátil reconozca mi segunda pantalla (Lenovo Legion 5). Tiene Nvidia RTX 3060 y una segunda tarjeta:
❯ lspci -nnk | grep "VGA\|'Kern'\|3D\|Display" -A2
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2560] (rev a1)
Subsystem: Lenovo GA106M [GeForce RTX 3060 Mobile / Max-Q] [17aa:3a81]
Kernel driver in use: nvidia
--
06:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [1002:1638] (rev c6)
Subsystem: Lenovo Cezanne [17aa:3a81]
Kernel driver in use: amdgpu
En update-alternatives
, se utiliza "actual":
❯ sudo update-alternatives --config nvidia
Il existe 2 choix pour l'alternative nvidia (qui fournit /usr/lib/nvidia/nvidia).
Sélection Chemin Priorité État
------------------------------------------------------------
0 /usr/lib/nvidia/tesla-510 510 mode automatique
* 1 /usr/lib/nvidia/current 470 mode manuel
2 /usr/lib/nvidia/tesla-510 510 mode manuel
Hashcat detecta correctamente CUDA:
❯ hashcat -I
hashcat (v6.2.5) starting in backend information mode
CUDA Info:
==========
CUDA.Version.: 11.4
Backend Device ID #1 (Alias: #2)
Name...........: NVIDIA GeForce RTX 3060 Laptop GPU
Processor(s)...: 30
Clock..........: 1425
Memory.Total...: 5946 MB
Memory.Free....: 5838 MB
PCI.Addr.BDFe..: 0000:01:00.0
OpenCL Info:
============
OpenCL Platform ID #1
Vendor..: NVIDIA Corporation
Name....: NVIDIA CUDA
Version.: OpenCL 3.0 CUDA 11.4.231
Backend Device ID #2 (Alias: #1)
Type...........: GPU
Vendor.ID......: 32
Vendor.........: NVIDIA Corporation
Name...........: NVIDIA GeForce RTX 3060 Laptop GPU
Version........: OpenCL 3.0 CUDA
Processor(s)...: 30
Clock..........: 1425
Memory.Total...: 5946 MB (limited to 1486 MB allocatable in one block)
Memory.Free....: 5824 MB
OpenCL.Version.: OpenCL C 1.2
Driver.Version.: 470.129.06
PCI.Addr.BDF...: 01:00.0
OpenCL Platform ID #2
Vendor..: The pocl project
Name....: Portable Computing Language
Version.: OpenCL 2.0 pocl 1.8 Linux, None+Asserts, RELOC, LLVM 11.1.0, SLEEF, DISTRO, POCL_DEBUG
Backend Device ID #3
Type...........: CPU
Vendor.ID......: 1
Vendor.........: AuthenticAMD
Name...........: pthread-AMD Ryzen 5 5600H with Radeon Graphics
Version........: OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-generic
Processor(s)...: 12
Clock..........: 3300
Memory.Total...: 11857 MB (limited to 2048 MB allocatable in one block)
Memory.Free....: 5896 MB
OpenCL.Version.: OpenCL C 1.2 pocl
Driver.Version.: 1.8
No tengo ningún archivo /etc/X11/xorg.conf. Si generé uno con nvidia-xconfig
, aparece un cursor parpadeante al reiniciar.
Los gráficos intercambiables están habilitados en BIOS.
Cuando conecto la pantalla en HDMI no pasa nada... Y las teclas de acceso rápido Win+P o Fn+F7 no hacen nada.
Alguna idea ?
Respuesta1
Después de varias horas y de mezclar muchas ideas diferentes, logré hacerlo funcionar y entregué "mi" solución. Hay poca magia negra por ahí, pero funcionó de mi lado...
- No utilice controladores propietarios de Nvidia (aquí nvidia-tesla510) ni ningún otro paquete como optimus, prime, bumblebee, etc. Para estar seguro: elimine todos los controladores actuales de Nvidia, sin excepción:
sudo apt purge nvidia-*
. Si hay algún error sobre la dependencia, elimínelo. Luego reinicie. Verifique que no tenga ningún paquete de Nvidia instalado en su sistema (incluido Cuda). Elimine los paquetes superfluos conapt autoremove
. Personalmente, recomiendo no instalar ningún paquete que no esté distribuido oficialmente por los repositorios estables. Reiniciar. - Siga la guía de instalación de Kali, básicamente:
sudo apt update
sudo apt -y full-upgrade -y
[ -f /var/run/reboot-required ] && sudo reboot -f
sudo apt install -y nvidia-driver nvidia-cuda-toolkit
- Para detecciones de pantalla con la segunda pantalla conectada:
xrandr -q
. Deberías ver la segunda pantalla conectada en la lista. Pero, incluso así, no fue suficiente dejar que la señal pasara por la segunda pantalla. - Puedes reiniciar ahora (tal vez no sea útil, lo sé)
- Escribe el tuyo propio
/etc/X11/xorg.conf
, inspirado en:http://us.download.nvidia.com/XFree86/Linux-x86/375.39/README/randr14.html. O puede usar el paquetenvidia-xconfig
(apt install nvidia-xconfig
) y luego iniciar:sudo nvidia-xconfig
. Puede verificar que/etc/X11/xorg.conf
se haya escrito un nuevo archivo. Aquí esta el mio:
❯ cat /etc/X11/xorg.conf
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 470.103.01
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia" 0 0
Inactive "amdgpu"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
Option "DPMS"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:01:0:0"
EndSection
Section "Device"
Identifier "amdgpu"
Driver "modesetting"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Monitor "Monitor0"
DefaultDepth 24
Option "AllowEmptyInitialConfiguration"
SubSection "Display"
Depth 24
Modes "nvidia-auto-select"
EndSubSection
EndSection
Section "Screen"
Identifier "amdgpu"
Device "amdgpu"
Monitor "Monitor0"
EndSection
Si tienes gráficos híbridos basados en Intel, tendrás "intel" en lugar de "amdgpu".
- Reinicia, cruza los dedos y listo. Si no funciona (cursor parpadeante, pantalla negra...), entra en otro terminal (Alt+F2), quita el
xorg.conf
, reinicia e intenta buscar otra solución siguiendo culpando a Nvidia, Intel, AMD y a tu fabricante favorito. por su excelente soporte de software para Linux. Buena suerte.
Respuesta2
(Legion 5), AMD presione F9 para ingresar al menú de configuración de Bios y simplemente seleccione la tarjeta gráfica discreta y reinicie el sistema.