Podríamos definir un driver como un traductor, un traductor que hace que el componente electrónico conectado hable el mismo idioma que el sistema operativo en el que tiene que funcionar. Al hablar el mismo idioma, el sistema operativo puede hacer uso del componente en su totalidad. Esta definición de driver se aplica tanto a Windows como a Linux y macOS. En este artículo os vamos a mostrar cómo instalar drivers en Linux, si es que realmente es necesario.
Y digo si es que realmente es necesario por las distribuciones Linux han evolucionado muchísimo en los últimos años. La época en la que instalar drivers en Linux era una odisea donde era necesario ser ingeniero de software y tener acceso a un gran número de foros de entusiastas de Linux acabó.
Conforme han ido pasando los años, Linux ha evolucionado muchísimo con el principal objetivo de reducir los conocimientos necesarios y así poder llegar a un mayor número de usuarios, objetivo que poco a poco está consiguiendo, aunque todavía está muy lejos de la penetración de Windows en el mercado.
Tipos de drivers
Si hablamos de drivers, también conocidos como controladores, en Linux, tenemos que hablar de dos tipos. Por un lado, nos encontramos con los controlares propietarios o privativos y por otro, los controladores de código abierto.
Drivers del Kernel
La mayor parte del Kernel, o núcleo, de Linux lo forman los controladores. En él podemos encontrar drivers de todo tipo: desde los componentes más básicos del ordenador hasta para el hardware más antiguo, y ocasional, que nos podamos imaginar. Es uno de los puntos más importantes de Linux, y nosotros no tenemos que hacer nada, ya que vienen instalados de serie con el Kernel, y se aplican siempre automáticamente sin tener que configurar nada.
Drivers privativos
Los controladores propietarios han sido creados por una empresa para sacarle el máximo partido a un hardware concreto, como por ejemplo tarjetas gráficas y en general, a cualquier dispositivo que no funcione utilizando los controladores que proporcionan las distribuciones Linux.
Este controlador privativo contiene un código que no puede ser revisado ni mejorado por la comunidad de Linux. Además, únicamente depende del creador del software para el tema de las actualizaciones del controlador. Si bien es cierto que en ocasiones se puede acudir a la comunidad Linux para buscar alternativas de código abierto, nunca ofrecerán las mismas prestaciones que el controlador diseñado especialmente para el dispositivo.
Drivers de código abierto
Por otro lado, nos encontramos con los controlares de código abierto. Este tipo de controladores, en ocasiones, son proporcionados por los fabricantes de dispositivos, aunque la gran mayoría proceden de usuarios de la comunidad de Linux.
Estos controladores, están incluidos en la mayoría de las distribuciones Linux y se instalan automáticamente cuando detectan un nuevo hardware. Instalar drivers privativos en Linux existiendo una versión de código abierto, no tiene sentido, a no ser que hablemos, como he comentado más arriba, de tarjetas gráficas.
Controladores esenciales que hay que instalar
Es cierto que en más del 95% de los casos no vamos a necesitar instalar nada, ya que la mayor parte del Kernel Linux está formada, precisamente, por controladores. Pero hay veces que los fabricantes deciden lanzar sus propios controladores para Linux, programas que, aunque son de código cerrado (ya que tienen su propiedad intelectual), ofrecen un funcionamiento superior, en todos los sentidos, a los drivers de código abierto.
Los drivers que generalmente podemos instalar a mano para poder aprovecharnos mejor de las propiedades del hardware son:
- Gráfica. Muy importante, sobre todo si tenemos una tarjeta NVIDIA. Si vamos a jugar, o hacer uso avanzado de funciones que requieran procesamiento 3D, usar los drivers privativos es algo imprescindible, si no quieres dejar el 80% del rendimiento de la gráfica sin usar.
- Tarjeta de red. Si tienes una tarjeta de red, tanto cableada como (sobre todo) Wi-Fi, estos drivers nos van a permitir aprovechar al máximo la velocidad, reducir la latencia y asegurarnos de que todo funciona correctamente.
- Sonido. Si usamos una tarjeta de sonido de alta fidelidad, debemos, sí o sí, instalar sus controladores en Linux, en caso de que los tengan. De lo contrario, la mayoría de las funciones de esta no funcionarán.
- Impresora. Aunque Linux tiene muchos drivers genéricos para las impresoras, que funcionan gracias a CUPS (Common Unix Printing System), puede ocurrir que algunas impresoras no funcionen con normalidad. En ese caso, lo que tenemos que hacer es instalar los controladores a mano para que Linux los pueda aprovechar.
También es posible que algunos periféricos (por ejemplo, algún teclado o ratón) vengan con algún driver opcional. Esto quiere decir que, aunque el periférico funcionará perfectamente en el PC, es posible que algunas funciones (por ejemplo, las teclas multimedia o la iluminación) no lo hagan. Y, gracias a estos controladores, podremos hacerlo funcionar.
Instalar drivers en Linux
Si tenemos en cuenta todo lo comentado en el punto anterior, llegamos fácilmente a la conclusión de que el proceso más sencillo y rápido para instalar drivers en Linux es utilizando la interfaz gráfica, aunque también se puede hacer desde Terminal.
Desde la interfaz gráfica
Conforme Linux ha ido evolucionando, el proceso para instalar los drivers de los componentes de nuestro equipo y de los periféricos que conectamos se ha reducido prácticamente a la mínima expresión. Y cuando digo a la mínima expresión es porque, en la mayoría de las ocasiones, no tenemos que hacer absolutamente nada por nuestra parte.
Si se trata de los componentes de nuestro equipo donde está instalado Linux (la versión que tengamos instalada, desde SoftZone siempre recomendamos el uso de Ubuntu), se encargará automáticamente de instalar todos los drivers necesarios durante el proceso de instalación, al igual que hace Windows.
Mientras que, si instalamos una impresora a un equipo gestionado por Linux, el sistema se encargará automáticamente de detectar el modelo e instalar los drivers correspondientes, en Windows nos veremos obligados a descargar el software oficial desde la web del fabricante si queremos aprovechar todas las funciones que nos ofrece.
Microsoft presentó la tecnología plug & play con el lanzamiento de Windows 98, una tecnología que agiliza el proceso de instalación de drivers en Windows, aunque, lamentablemente, no ha evolucionado a la misma velocidad que si lo ha hecho en Linux, donde realmente esta tecnología si se ha implementado de forma correcta sin ser necesario instalar software de terceros, un problema que 22 años después de su presentación, sigue estando muy presente en la actualidad, incluso en Windows 11.
Para revisar e instalar los drivers de los componentes conectados a nuestro equipo, utilizando la interfaz gráfica, realizaremos los pasos que os muestro a continuación.
En primer lugar, accedemos al dock de aplicaciones y pulsamos en Mostrar aplicaciones. A continuación, pulsamos sobre la aplicación Software y actualizaciones. En la pestaña Más controladores, se mostrarán todas las opciones que la distribución Linux que tenemos instalada nos permite instalar.
En este apartado, se mostrarán todos los controladores privativos que podemos instalar para mejorar el funcionamiento de un componente electrónico que tengamos conectado a nuestro equipo. Además, también se mostrará el funcionamiento del componente, es decir, si está en funcionamiento o si está detenido al no estar instalado el driver correspondiente.
También podemos instalar los drivers de NVIDIA desde terminal. Para ello, solo debemos ejecutar:
- sudo add-apt-repository ppa:graphics-drivers/ppa
- sudo apt update
- sudo apt install nvidia-driver-XX (cambiando XX por la versión del controlador)
A través de terminal
A no ser que se trate de un equipo muy antiguo, recurrir a la terminal de Linux debe ser siempre el último recurso para instalar drivers, ya que, si no tenemos los conocimientos adecuados de Linux, podemos acabar rompiendo la interfaz gráfica o cualquier otro apartado que nos obligue a comenzar de cero.
En primer lugar, vamos a utilizar el comando lscpi para que el sistema nos muestra información detallada de los dispositivos disponibles en el equipo. Podemos acompañar el comando lscpci con “| grep nombre-de-fabricante” para filtrar los resultados.
lscpci
A continuación, utilizamos el comando dmesg para asegurarnos que todos los controladores del dispositivo están siendo reconocidos por el kernel. En ese listado, podemos comprobar si el componente del que queremos instalar los drivers ha sido detectado para seguir con el proceso. También podemos acompañar este comando con “| grep nombre-de-fabricante” para reducir el número de resultados.
dmesg
Ahora debemos comprobar la lista de repositorios que tenemos instalados en nuestro equipo utilizando el comando
sudo gedit /etc/apt/soucers.list
Para añadir un nuevo repositorio, una vez conocemos su dirección, desde terminal ejecutaremos el siguiente comando
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add –
Añadimos el repositorio a la lista de repositorios de la distribución Linux que estamos utilizando a través del comando
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
Una vez hemos añadido el repositorio, debemos actualizarlo en nuestro equipo utilizando los comandos
sudo apt udate
sudo apt upgrade
A partir de este momento, la distribución Linux dispondrá de los últimos drivers y actualizaciones de software disponibles en ese momento y el controlar que no funcionaba, ya debería hacerlo con total normalidad.
En otras distros Linux
Ya hemos visto cómo se instanan drivers en Ubuntu y en otros sistemas basados en Debian. Pero, si usamos otras distros, el proceso puede ser algo diferente:
Fedora. En esta distro nos encontramos con los controladores dentro de los repositorios RPM Fusion. Para ello, lo primero será añadir los repositorios:
- sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
- sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Y, a continuación, instalar los controladores que queramos. Por ejemplo, en el caso de NVIDIA el comando será:
- sudo dnf install akmod-nvidia
- sudo dnf install xorg-x11-drv-nvidia-cuda
O, si necesitamos otro driver, podemos usar «dnf search» para buscar el paquete del controlador que necesitamos e instalarlo. Por ejemplo, para impresoras HP tendremos que ejecutar:
sudo dnf install hplip
Arch Linux. Debemos usar pacman o AUR para instalar drivers manualmente. Por ejemplo, en el caso de tener que instalar el driver de NVIDIA, el comando que tendremos que instalar será:
sudo pacman -S nvidia nvidia-utils
O, si tenemos una tarjeta Wi-Fi con chip Realtek, el comando será:
yay -S rtl8821ce-dkms-git
Actualizar los drivers de Linux
Cuando instalamos un driver a mano, por lo general suele instalar algún proceso que se encarga de comprobar cuándo hay nuevas versiones y avisarnos para que las bajemos e instalemos a mano. Simplemente debemos seguir los pasos que nos va indicando el sistema para actualizar estos controladores. En caso contrario, si nos encontramos nosotros con una versión más actualizada de un controlador, lo que debemos hacer es bajarlo e instalarlo con el modo que os hemos explicado en el paso anterior.
Para todos los demás controladores, como ya hemos explicado, estos forman parte del propio Kernel, o núcleo, del sistema operativo. Por lo tanto, para ponerlos al día, lo único que vamos a tener que hacer es instalar una nueva versión del kernel que incluya ya las últimas actualizaciones de los drivers. Tras instalar el nuevo Kernel, y arrancar con él, ya podemos estar seguros de que estamos a la última.
Problemas con los drivers en equipos modernos y antiguos
Linux siempre ha estado asociado a ser un dolor de cabeza a la hora de hacer funcionar los componentes que forman parte del equipo. Dependiendo de la versión de Linux instalada y de la antigüedad de nuestro equipo, este problema puede ser cosa del pasado y seguir siendo un problema que requiere unas cuantas horas de dedicación.
Instalar drivers en Linux en equipos modernos
La mayoría de los drivers de cualquier equipo moderno se instalan automáticamente sin hacer absolutamente nada. Pero, si queremos sacarle el máximo partido a un hardware concreto, como, por ejemplo, una tarjeta gráfica, será necesario instalar los drivers del fabricante.
Si utilizas tu equipo para jugar a la biblioteca de juegos que tienes en Steam desde Linux, si no instalas los drivers de la tarjeta gráfica, nunca podrás sacarle el mismo partido que si puedes obtener en Windows en cuanto a número de fotogramas, por ejemplo.
Para instalar los drivers oficiales de tu tarjeta gráfica, ya sea de Nvidia o de AMD en tu equipo gestionado por Linux, debes realizar los pasos que os hemos explicado en el apartado anterior.
Sin embargo, Linux sigue sin ofrecer soporte para teclados y ratones gaming, obligando al usuario a adaptar su funcionamiento utilizando los atajos de teclado que tenga establecido el fabricante para cambiar la iluminación y la frecuencia de cambio en el caso del teclado y en el botón para ajustar la sensibilidad si hablamos del ratón.
Afortunadamente, en el caso del ratón, si queremos disfrutar de juegos shooters, donde la sensibilidad del ratón es primordial, podemos apoyarnos en las opciones de configuración del juego y ajustar los valores de la sensibilidad vertical y horizontal para ajustarse a nuestras necesidades.
Respecto al funcionamiento de los botones adicionales y de las funciones adicionales que nos pueda ofrecer la rueda del ratón, será necesario buscar por internet como lo han solucionado otros usuarios dependiendo del fabricante y del modelo.
Drivers en Linux en equipos antiguos
Si has llegado hasta este artículo, probablemente se deba a que siempre has escuchado que instalar drivers en Windows es peor que una migraña. Eso era así hasta hace relativamente poco. Las versiones más modernas de Linux ofrecen soporte para todos los drivers básicos de los componentes de un equipo.
Sin embargo, en equipos antiguos la cosa cambia y mucho. Hace unos años, instalar los drivers para Linux requería de una intensa búsqueda a través de internet para localizar si algún usuario de la comunidad había invertido horas de trabajo en crear un driver para un componente concreto.
Si quieres darle uso a un equipo antiguo que tengas en tu casa, en un trastero o en la oficina, lo primero que debes buscar es una distro antigua que se mueva con suficiente fluidez en el equipo. Pero, además, tendrás que buscar en internet los drivers necesarios para conseguir que todos los componentes de tu equipo, como la conexión Wi-Fi y de red, tarjeta de sonido y gráfica funcionen correctamente.
Cuando hablo de equipos antiguos, me refiero a equipos que tienen más de 15 años. Personalmente, instalé la última versión de Ubuntu disponible en el momento de publicar este artículo, la número 22 y no tuve la necesidad de instalar ningún solo drivers de forma manual.