Una de las tendencias que más están llamando la atención si hablamos de sistemas operativos libres y, especialmente, Linux, tiene que ver con los sistemas inmutables. La inmutabilidad del software. Tal es la popularidad de las distribuciones Linux inmutables que Ubuntu, un referente en el sector, ha anunciado que lanzará su propia versión inmutable.
Pero, ¿en qué consiste un sistema inmutable? ¿Por qué motivo se está poniendo de moda y cuáles son sus principales ventajas? ¿Es algo que deba preocuparnos a todos o solamente está pensado para unos pocos? Porque una cosa es que los sistemas Linux inmutables estén pensados para servidores y otra es que las versiones de escritorio domésticas también empiecen a ofrecer la posibilidad de hacer una instalación inmutable.
¿Qué es un sistema Linux inmutable?
En una sola frase. Un sistema Linux inmutable es un sistema de solo lectura. Es decir, que no puedes hacer cambios en el sistema operativo. Una vez instalado, todo se queda como estaba. Eso sí. Como usuario puedes instalar aplicaciones, crear y guardar documentos, etc. Pero los componentes principales de Linux son inmutables. Es más. Hay distribuciones que, directamente, borran los cambios introducidos tras reiniciar el equipo.
La filosofía de Linux y otros sistemas operativos libres ha sido la de tener el control absoluto del software. Para el usuario medio también tiene sus ventajas, como poder instalar lo que quieras y hacer ciertos cambios, aunque sea con ayuda de un tutorial. Y para los usuarios avanzados, Linux siempre ha sido un software al que hacer cualquier cambio que pudieras hacer, en todos sus componentes.
Pero la filosofía detrás de un Linux inmutable cambia esto. El propósito de hacer un sistema inmutable es que los archivos más importantes del sistema no necesitan cambios. Tal vez alguna actualización de seguridad, pero poco más. Así que, para evitar problemas, ¿para qué permitir que el usuario haga cambios? De ahí que esa parte de Linux sea de solo lectura. Si quieres instalar apps, crear archivos o editarlos, para eso ya hay carpetas específicas con permisos de lectura y escritura.
¿Para qué sirve un sistema inmutable?
El principal argumento a favor de un sistema Linux inmutable es que da más seguridad. Es decir, si los componentes básicos son de solo lectura, nada ni nadie podrán cambiarlos. Ni un usuario ni un programa malicioso. Ciertamente, ya existen políticas de usuarios y privilegios que impiden que cualquiera instale un parche sin permiso o haga retoques en Linux que le causen problemas, pero una mala política de permisos o un agujero de seguridad pueden ser un problema.
Otra ventaja añadida es que un Linux inmutable debería ser más estable. Al no cambiar nada de las piezas que hacen funcionar este sistema en tu ordenador, su rendimiento debería ser el mismo que el primer día. De acuerdo que puedes seguir instalando aplicaciones, juegos, descargar archivos y crear tus propios contenidos. Pero al no añadir archivos a la parte más delicada de Linux, es menor el riesgo de hacer cambios que ralenticen o entorpezcan el rendimiento del sistema.
La tercera gran ventaja de un Linux inmutable es la facilidad de mantenimiento. Tanto para actualizarlo como para restaurar copias de seguridad. Especialmente si hablamos de cinco o más equipos a mantener. La parte principal de un sistema inmutable está basada en una imagen, un simple archivo. Esto facilita las cosas por si hay que actualizar uno o más ordenadores o si hay que hacer una copia de seguridad del resto de archivos o del propio sistema principal.
Ventajas e inconvenientes
Como suele ser habitual, todo tiene sus ventajas pero también sus inconvenientes. Un sistema Linux inmutable puede ser más seguro, más fácil de gestionar y más estable. Pero también tiene sus debilidades.
La principal desventaja tiene que ver con la filosofía que siempre ha imperado en Linux: flexibilidad o libertad de acceso. Un sistema inmutable impide al usuario acceder a determinados archivos y partes del sistema, lo que le quita cierta libertad. Para la mayoría de usuarios puede no ser un problema. Pero muchos, en especial desarrolladores, encontrarán esto un inconveniente. En especial aquellos que llegaron a Linux descontentos con la inmutabilidad de Windows o macOS.
Otro inconveniente tiene que ver con la compatibilidad del software. Hay aplicaciones que necesitan hacer cambios en archivos del sistema que en un Linux inmutable están prohibidos. De manera que esas aplicaciones tienen que adaptarse a sistemas de paquetes como Flatpack o Snap que minimizan esa dependencia. Pero no todas las aplicaciones tienen un paquete dedicado.
Y, finalmente, un Linux inmutable acaba por ocupar más espacio en disco. Las actualizaciones se realizan mediante imágenes completas en vez de ir descargando archivos sueltos. A la larga, esto aumenta el espacio de almacenamiento ocupado. Temporalmente y a medio plazo.
Distribuciones Linux inmutables
Ubuntu ha sido el último en anunciar su propia versión de Linux inmutable, pero la lista es extensa. Hay nombres ya conocidos y otros que son nuevos. Pero como siempre, el resultado es que tienes dónde elegir y según las necesidades que quieras resolver.
- Fedora Silverblue
- Fedora CoreOS
- Ubuntu Core
- Endless OS
- Flatcar Container Linux
- blendOS
- Talos Linux
- Photon OS
- openSUSE MicroOS
- Vanilla OS
¿Por qué se han puesto de moda?
El concepto de sistema inmutable no es nuevo. En parte, los sistemas operativos privativos como Windows o macOS ya tienen de por sí una parte inmutable a la que el usuario no puede acceder si no es a base de retoques y cambios que requieren unos conocimientos muy avanzados. Pero centrándonos en Linux, también hace años que existen distribuciones inmutables para usos concretos.
El cambio se ha producido en los últimos años con la presencia de distribuciones Linux inmutables no solo de nicho sino también para el escritorio doméstico. La razón de ser de los sistemas inmutables era realizar pruebas de desarrollo de software y toda clase de tests en un entorno controlado, seguro y rápido de restaurar.
Y en gran parte, una de las razones por las que cada vez hay más sistemas inmutables para uso doméstico es la creciente popularidad de los sistemas en la nube y, especialmente, de los contenedores de software. Se trata de soluciones que optimizan el uso de recursos de red y simplifican la gestión de servidores y máquinas para uso profesional.
Y aunque no son muy populares en el ámbito doméstico, más pronto que tarde harán acto de presencia. Algunas de las distribuciones Linux inmutables están especializadas en facilitar el uso de contenedores. De manera que no necesites contratar un servidor externo. Puedes usar un ordenador dedicado que requerirá un mínimo mantenimiento y que tendrás bajo tu control.
¿Necesitas un sistema inmutable en tu PC?
Que algo esté disponible no significa que debas tenerlo. Y el sentido común es un buen consejo en situaciones como ésta. Que aumente la cantidad de distribuciones Linux inmutables no significa que las distro clásicas vayan a desaparecer. Si algo caracteriza a Linux es que hay distribuciones para todo tipo de públicos. La pregunta es, ¿deberías dar el paso a la inmutabilidad?
La respuesta es que un Linux inmutable es útil si necesites un nivel alto de seguridad, más allá del que ya ofrece por defecto un Linux normal y corriente. En realidad, la inmutabilidad resulta práctica en entornos de testing, desarrollo de software o en instalaciones especiales como computación en la nube, sistemas embebidos o servidores usados para ejecutar contenedores.
La introducción de distribuciones Linux inmutables para ordenadores domésticos no implica que debas usarlos si tu propósito es tener un ordenador para uso personal o para trabajo ofimático. Poco te va a aportar la inmutabilidad del sistema. Y si dependes de instalar juegos, aplicaciones y actualizarlos, seguramente tengas más problemas que en un Linux estándar.