KVM por software
En entornos donde se requiere operar múltiples ordenadores de forma simultánea, la eficiencia es clave. Existen varios productos que permiten imitar la funcionalidad de un conmutador KVM (Keyboard, Video, Mouse), que históricamente permitía utilizar un solo teclado y ratón para controlar varios ordenadores girando físicamente un dial. En este apunte describo cómo instalo y utilizo Barrier, una solución KVM por software, sin necesidad de hardware adicional.
Mi caso de uso consiste en controlar con un solo teclado y ratón tres ordenadores. Dos de ellos son de sobremesa, un mac y un PC con windows. El tercero es un PC portatil Windows/Linux. La dificultad radica en el Mac, donde me encontré con un reto curiso y casi insuperable.
Introducción
Es muy importante saber y decirle a Barrier dónde están ubicados cada uno de ellos respecto al resto, de modo que el ratón fluja entre las pantallas de forma lógica. Hay que ejecutar el software en los tres y uno de ellos hará de servidor y el resto de clientes. Se comunican por la red local y cada ordenador debe tener un nombre:
- slimbook (Linux X11)
- macmini (macOS)
- kymera (Windows 11)
Distribución de los monitores
+---------+ +----------+ +----------+
|Laptop | | Mac | | PC(Win) |
|slimbook | | macmini | | kymera |
|cliente | | cliente | | SERVIDOR |
+---------+ +----------+ +----------+
Servidor
Aquí es donde está el reto. Si elijo el Mac como Servidor, su teclado manda y carece de la tecla física AltGr para introducir caracteres internacionales. Apple los genera con sus teclados usando la tecla Opción (equivale a Alt). Si haces que el servidor sea el Mac, cuando estás controlando un PC (Windows o Linux) e intentas mandar esos caracteres simplemente NO FUNCIONAN. Al revés sí, cuando el PC es el Servidor (da igual Widnows o PC) con un teclado que tiene AltGr, entonces todos contentos (con ciertos ajustes).
Hubiese preferido configurar el Mac como Servidor (contaría con todas las virguerías de su Trackpad), pero como he dicho, si el Mac es el Servidor no puedes generar (cuando el teclado pasa al PC) las AltGr Keys \|@#[]{}~€¬
ni ` < > `. He dedicado muchas horas a investigar este tema y no consigo encontrar la solución.
El servidor de Barrier se ejecutará en kymera (Windows 11).
Windows 11:
Descargo Barrier desde su página oficial de GitHub. Selecciona la versión adecuada para Windows e instalo la aplicación. Si al instalar me pregunta Enable autoconfig and install Bonjour
, le digo que Sí.
- Abro Barrier y selecciona la opción “Servidor”.
- Quito la opción “AutoConfig” y desactivo SSL
Utilizo la opción de fichero de configuración para el Servidor.
Clientes
En el MacOS (macmini), descargo el DMG desde la página de releases. En Linux lo instalo con sudo apt install -y barrier
- Abro Barrier y selecciona la opción “Cliente”.
- En las opciones avanzadas introduzco el nombre del equipo y quito SSL.
- Configuro “autotal”
Dejo aquí el ejemplo de configuración del Mac, siendo del del portatil slimbook
idéntico (solo cambia el nobmre del equipo)
Si hay problemas de conexión, verifica los firewalls y las reglas de red que puedan estar bloqueando el puerto predeterminado de Barrier (habitualmente el 24800).
Trucos
El teclado
Ayuda mucho si tu teclado tiene serigrafiadas la teclas de Windows y Mac a la vez. En mi caso uso un teclado que lo tiene, se trata del Logitech K380 que conecto por Bluetooth al windows.
Para que la experiencia sea correcta, en mi fichero de configuración para el Servidor (kymera
) verás en la sección del Mac macmini
que he reconfigurado y hecho una asociación para cambiar lahubicación de las tecla de control:
macmini:
alt = super
super = alt
altgr = alt
:
Unificar las teclas de control
Me refiero a decidir entre usar Ctrl+
La decisión es usar CMD+
Windows: PowerToys
En Windows 11 he usado Microsoft PowerToys que me permite remapear unas cuantas combinaciones de teclas. Funciona excepcionalmente bien
- Descarga: Microsoft PowerToys desde la página oficial de GitHub.
- Instalación: Ejecuta el instalador y seguir las instrucciones en pantalla.
- Abrir PowerToys: “Keyboard Manager” en el panel izquierdo.
- Habilitar Keyboard Manager: Asegúrate de que la opción “Enable Keyboard Manager” esté activada.
- Remapear Atajos de Teclado: “Remap a Shortcut”.
- Añado los siguientes remapeos:
- Alt + A → Ctrl + A (Seleccionar todo)
- Alt + C → Ctrl + C (Copiar)
- Alt + F → Ctrl + F (Buscar)
- Alt + N → Ctrl + N (Nueva ventana)
- Alt + Q → ALt(left) + F4 (Cerrar App)
- Alt + R → Ctrl + R (Recargar)
- Alt + S → Ctrl + S (Salvar)
- Alt + T → Ctrl + T (Nueva pestaña)
- Alt + V → Ctrl + V (Pegar)
- Alt + W → Ctrl + W (Cerrar ventana)
- Alt + X → Ctrl + X (Cortar)
- Alt + Z → Ctrl + Z (Undo)
- Alt + Shift + 4 → Win (left) + Shift + S (Captura de pantalla)
- (Añadí otros remapeos según fuí trabajando y necesitándolos)
- Añado los siguientes remapeos:
Linux: Solución parcial
X11: Es engorroso, no es tan sencillo como en Windows. Tengo pendiente documentarlo
Wayland: No funciona Barrier, así que lo dejo aquí pendiente para futura investigación.