Developer Boots Arch Linux Directly from Google Cloud
Recently, a developer has accomplished something truly remarkable: he booted Arch Linux directly from Google Drive on an old laptop without built-in storage. This achievement can be regarded both as a significant technical breakthrough and a highly unusual experiment.
To appreciate the complexity of the task accomplished, it is essential to understand the Linux boot process:
- The firmware (BIOS/UEFI) initiates and loads the bootloader.
- The bootloader loads the kernel.
- The kernel unpacks a temporary filesystem into RAM, containing the tools to mount the real filesystem.
- The kernel mounts the real filesystem and switches the process to the init system on the new filesystem.
A developer named Ersei leveraged the third step to mount a FUSE file system, enabling Linux to boot as usual. FUSE is a user-space file system that allows creating file systems without requiring privileged permissions. Initially, Ersei succeeded in booting the system from Amazon S3, and then he decided to attempt using Google Drive.
Booting Arch Linux on a laptop directly from Google Drive was indeed an impressive feat. However, the process was not without its challenges. Using FUSE to mount Google Drive with google-drive-ocamlfuse presented numerous problems:
- Broken Symlinks: “Symlinks to symlinks don’t work (very important for stuff in /usr/lib),” noted Ersei
- Non-functional Hardlinks: Essential for many Unix-based systems, hardlinks not working posed a significant obstacle.
- Performance Issues: “It’s so slowwwww,” Ersei emphasizes on this point.
- Permissions and Attributes: These didn’t work as expected, complicating the setup further.
Despite all the difficulties, Ersei persevered, manually configuring settings and parameters to get the system running. Ultimately, he managed to create a single EFI file with instructions for booting the system directly from Google Drive. The project may seem eccentric, but it has practical applications. For instance, it enables the creation of a truly portable Linux version stored in the cloud. Although access and usage of such a system may be slow, it simplifies cloud booting and can be valuable for educational purposes.