
Intro melodrammatica/epica per questo articolo, ma assolutamente sensata per il tema che tratterò oggi: la conseguenza delle proprie azioni, in particolare quando si lavora con l’open-source, ossia con del codice che è pubblico e pubblicamente utilizzabile.
Lo spunto arriva da un output ricevuto poco fa in una console, dopo un banale aggiornamento (di Kernel, in questo caso):
update-initramfs: Generating /boot/initrd.img-5.15.0-136-generic
I: The initramfs will attempt to resume from /dev/dm-1
I: (/dev/mapper/vg0-swap)
I: Set the RESUME variable to override this.
Warning: Not updating LILO; /etc/lilo.conf not found!
Tutto è racchiuso nell’ultima riga, quel Warning: Not updating LILO; /etc/lilo.conf not found!
che avverte (ed è proprio un WARNING) che /etc/lilo.conf
non è presente nel sistema.
LILO.
Nell’anno del signore 2025.
Sedetevi intorno al fuoco bambini, ho una storia da raccontare.
Tantissimo tempo fa, per effettuare il boot di un sistema Linux esisteva un tool che si chiamava LInux LOader. Questo tool aveva un file di configurazione (/etc/lilo.conf
) che andava modificato a seconda delle proprie esigenze, e poi compilato per così dire, in modo che il binario risultante venisse scritto nel Master Boot Record (MBR) del disco letto in fase di boot dal vostro sistema.
Pensate, bambini, che LILO veniva persino installato nei Floppy Disk, perché sì, una volta Linux si installava utilizzando tanti(ssimi) dischetti da 1,44MB ed una dose enorme di pazienza.
Altro che lo scrolling compulsivo dei video su Instagram.
Con il tempo le cose sono migliorate, è arrivato GRUB, che ha portato l’evoluzione dei boot loader a nuovi livelli, primo fra tutti il fatto che non era necessario dover installare/ricompilare con un comando lilo
le nuove configurazioni, queste venivano prese automaticamente. A chi con LILO ci era cresciuto, questa sembrava magia.
Va detto che poi si è ritornati al punto di partenza, ossia con una configurazione di GRUB talmente complessa che oggi comunque impone il lancio di update-grub
ogni volta che si modifica qualcosa. Ma questa, per così dire, è un’altra storia.
La storia di oggi è che nel 2025, su un sistema che è certamente moderno e manutenuto, ossia Ubuntu 22.04.5 LTS, c’è ancora traccia di LILO.
Questo significa che il maintainer del pacchetto Kernel (o più precisamente quello del pacchetto initramfs-tools
su Ubuntu) si pone ancora il problema di non lasciare a piedi chi LILO lo sta utilizzando ancora e, responsabilmente, si preoccupa di mantenere la compatibilità.
Dove altro si può trovare una cura simile, perlomeno nel campo informatico?
Questo è l’open-source responsabile, questo è un esempio per tutti quelli che dalla versione 1.0 alla versione 1.1 cambiano tutte le API e rompono ogni tipo di retrocompatibilità per l’evoluzione sfrenata e senza controllo.
La prossima volta che state per rompere tutto, ripensate a quella riga di LILO, potrebbe allargare la vostra prospettiva.
Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.
Lascia un commento