Analizamos las características de un sistema operativo inmutable.
/ фото Unsplash
Cómo surgió Silverblue
Fedora Silverblue es un sistema operativo de escritorio inmutable. Todas las aplicaciones se ejecutan en contenedores aislados, y las actualizaciones se instalan de manera atómica.
El proyecto anteriormente se llamaba . Luego fue renombrado a Silverblue. Según los desarrolladores, consideraron más de 150 opciones de nombres. Silverblue fue seleccionado simplemente porque había un dominio libre y cuentas en redes sociales disponibles.
El sistema actualizado Fedora Workstation como la versión prioritaria para escritorios en Fedora 30. Los autores comentan que, en el futuro, Silverblue Fedora Workstation.
Uno de los residentes de Hacker News , que el concepto de Silverblue es una evolución del proyecto . Este fue promovido en Fedora hace aproximadamente diez años. Stateless Linux tenía como objetivo simplificar la administración de clientes delgados y gruesos. En este, también todos los archivos de configuración del sistema se abrían en modo 'solo lectura'.
Qué aporta la "inmutabilidad"
El término 'sistema operativo inmutable' indica que los directorios raíz y de usuario se montan en modo 'solo lectura'. Todos los datos modificables se almacenan en el directorio /var. Un método similar es utilizado por los desarrolladores de y . Este enfoque aumenta la seguridad del sistema operativo y evita la eliminación de archivos del sistema (por ejemplo, por error).
Uno de los residentes de Hacker News en un hilo relacionado , que una vez borró accidentalmente varios archivos del sistema mientras modificaba el tema de Ubuntu Yaru. En ese momento, no tenía copias de seguridad debido a un error en regex. Según sus palabras, un sistema operativo inmutable habría ayudado a evitar problemas.
La instalación de actualizaciones también se simplifica: para ello, basta con reiniciar el sistema con una nueva imagen. Además, se puede cambiar rápidamente entre varias ramas (versiones) de Fedora. Por ejemplo, entre la versión en desarrollo actual de Fedora y el repositorio con las actualizaciones en preparación.
Cuáles son las diferencias con Fedora clásica
Para instalar el entorno base (/ y /usr), se utiliza la tecnología OSTree. Se puede decir que esto es un sistema de 'versionado' -packages. Los paquetes RPM se transfieren al repositorio OSTree mediante rpm-ostree. Al instalar un paquete, esta un punto de restauración al que se puede retroceder en caso de falla.
OSTree también instalar aplicaciones desde repositorios dnf/yum y repositorios no soportados por Fedora. Para esto, en lugar del comando dnf install, se debe usar rpm-ostree install. El sistema generará una nueva imagen base del sistema operativo y la reemplazará.
Como mecanismo para actualizar aplicaciones se utiliza . Este las ejecuta en contenedores. Un paquete Flatpack incluye solo las dependencias específicas para una aplicación en particular. Todas las bibliotecas básicas (como las bibliotecas de GNOME y KDE) permanecen como entornos de ejecución acoplables. Este enfoque permite reducir el tamaño de los paquetes al eliminar componentes repetidos.

/ фото Unsplash
Para instalar aplicaciones que no están empaquetadas en Flatpack, se puede utilizar . Permite crear un contenedor con el instalador clásico de Fedora.
Soluciones análogas
Hay otras distribuciones cuyas tareas son análogas a las de Silverblue. Un ejemplo podría ser de openSUSE. No es una distribución independiente, sino parte de la plataforma openSUSE Kubic para desplegar CaaS (Container as a Service).
El sistema trabaja con contenedores Docker. Sus imágenes se distribuyen en forma de paquetes RPM. Esto la instalación de aplicaciones basadas en línea de comandos que no están disponibles en formato Flatpack. La sistema anfitriona para ejecutar los contenedores se forma a partir del repositorio oficial. .
MicroOS fue desarrollado para despliegues a gran escala (por ejemplo, en centros de datos), pero también puede funcionar en máquinas individuales.
Un ejemplo de otro desarrollo similar podría ser . Esta es una distribución de Linux basada en el gestor de paquetes Nix. Su característica principal es la descripción declarativa de configuraciones. El administrador no necesita instalar el sistema y configurarlo manualmente. El estado se escribe en un archivo especial: allí se especifican todos los paquetes y configuraciones de autenticación. Luego, el gestor de paquetes lleva automáticamente el SO al estado indicado.
Este sistema es utilizado activamente por proveedores de nube, universidades y empresas de TI.
De todos modos, Silverblue tiene la oportunidad de ocupar su nicho en el mercado. Veremos si lo consigue en el futuro.
Materiales del Primer blog sobre IaaS corporativo:
Lectura adicional en Habr:
Fuente: habr.com
