Cover Image for Estudiante redescubre concepto de cliente ligero, iniciando Linux desde Google Drive - una gran prueba de concepto pero con...

Estudiante redescubre concepto de cliente ligero, iniciando Linux desde Google Drive - una gran prueba de concepto pero con...

La idea surgió de la competitividad.

Un estudiante de ciencias de la computación en la Universidad de Purdue logró arrancar Linux usando Google Drive. Lo que comenzó como un desafío divertido para igualar el éxito de un compañero al arrancar Linux desde NFS (Sistema de Archivos de Red), se convirtió en un experimento intrincado y algo impráctico.

Ersei, quien también es desarrollador de código abierto, deseaba arrancar Linux directamente desde la plataforma de almacenamiento en la nube de Google sin depender de otra computadora para lograrlo. Para esto, utilizaron FUSE (Sistema de Archivos en Espacio de Usuario) para crear un controlador de sistema de archivos dentro del espacio de usuario, sentando las bases técnicas para el proyecto.

La comprensión del proceso de arranque de Linux era crucial. Básicamente, el firmware (BIOS/UEFI) carga un cargador de arranque, el cual inicia después el kernel. El kernel abre un sistema de archivos temporal en la RAM, monta el sistema de archivos real y entrega el control al sistema init. La tarea de Ersei era integrar un sistema de archivos FUSE en este punto del proceso.

¡Éxito! Esto se logró modificando el initramfs para incluir binarios FUSE y soporte de red con la ayuda de Dracut, una herramienta para crear imágenes initramfs. Optando por Arch Linux por su simplicidad, Ersei construyó el entorno necesario desde cero.

Después de crear con éxito la imagen EFI, Ersei comenzó las pruebas iniciales usando una raíz almacenada en un bucket S3. Hubo numerosos problemas relacionados con la red y los controladores que tomaron mucho tiempo, recursos y determinación para resolver, pero finalmente se lograron avances.

Montar el sistema de archivos raíz en Google Drive a través de google-drive-ocamlfuse llevó a complicaciones adicionales como enlaces simbólicos no compatibles, enlaces duros y problemas de permisos, junto con un rendimiento lento. A pesar de los esfuerzos significativos para solucionar estos problemas, afectaron en gran medida, e inevitablemente, la funcionalidad del sistema.

Las pruebas en hardware real expusieron más limitaciones, como problemas con la compatibilidad de hardware y configuraciones de red, y la falta de soporte para teclados integrados, requiriendo el uso de un teclado externo.

A pesar de su impresionante técnica, hay claras limitaciones prácticas al arrancar Linux desde Google Drive. Aunque refleja la tendencia actual hacia el uso de tecnologías en la nube, Ersei reconoció la utilidad limitada de su configuración, sugiriendo que podría inspirar aplicaciones comerciales especializadas o experimentos similares, como arrancar Linux desde SSH o un repositorio Git.