Intermedio

Como mencioné en el capítulo 4 de la Biblia del SysAdmin ciertas tareas críticas (como migraciones de sistemas operativos, actualizaciones de aplicaciones críticas, y otros procesos sobre sistemas en producción) deben realizarse desde la terminal serie (ya sea virtual o un consola remota). Sin embargo, a veces no tenemos acceso a ninguna de las opciones (especialmente en tiempos de coronavirus y cuarentena donde los cortes en los enlaces de los proveedores de Internet parecen más frecuentes que nunca) y no nos queda otra opción que realizar una tarea crítica desde una sesión SSH. Pero ¿qué pasa si se corta el enlace o nuestra conexión y se cierra la sesión? Podríamos correr el riesgo de dejar el sistema en un estado inconsistente o desconocido.

Afortunadamente, la herramienta tmux permite crear sesiones persistentes que sobrevivan a cortes de red de duración indefinida. Puede ser una herramienta de gran ayuda para correr algunas tareas críticas sin riesgo (al menos aquellas que no involucren cambios en firewalls, o configuraciones o dispositivos de red.

Este artículo demuestra un ejemplo de uso de tmux para crear una sesión persistente en un servidor a través de SSH que sobreviva a desconexiones o cortes de red.

En ocasiones puede ser necesario encender una máquina física de manera remota. Esto es posible gracias al estándar Wake-on-LAN (WoL), soportado por la mayoría de las interfaces Ethernet, el cual permite prender que una computadora sea encendida o "despertada" mediante un mensaje de red especial. Este artículo demuestra cómo encender una computadora en la misma red local desde un sistema GNU/Linux utilizando el utilitario wakeonlan.

El gestor de paquetes de bajo nivel dpkg (de los sistemas Debian y derivados) no resuelve ni instala automáticamente dependencias faltantes (paquetes necesarios para el funcionamiento de otro paquete). Frecuentemente se utiliza para instalar un paquete independiente de forma manual, y generalmente por fuera de los repositorios. Sin embargo, cuando se realiza este tipo de instalaciones es común que falten dependencias del paquete en cuestión. Este artículo explica cómo instalar automáticamente todas las dependencias faltantes de un paquete instalado manualmente con dpkg.

Una computadora de escritorio tiene acceso a Internet a través de una interfaz de red inalámbrica USB (popularmente conocidas como dongle). El problema con este tipo de dispositivos externos es que el nombre de interfaz puede cambiarse en cada reinicio, aunque no se cambie el puerto donde está conectada. En mi caso la interfaz se renombraba aleatoriamente de wlan0 a wlan1 y viceversa en cada reinicio. No es un problema grave, excepto que el gestor de redes wicd fija el nombre de adaptador en su configuración, con lo cual era necesario ajustar la configuración de wicd cada vez que se cambiaba el nombre de dispositivo de la interfaz de red WiFi.

Este artículo explica cómo configurar el gestor de dispositivos udev para fijar un nombre de dispositivo a una interfaz de red basándose en su dirección MAC.

En los sistemas operativos de la familia Unix, el comando sync permite sincronizar los datos de archivos en cache (memoria volátil) a disco (almacenamiento persistente) forzando la ejecución inmediata de todas las escrituras pendientes.