LILO (Linux Loader) è uno dei bootloader originali per Linux, progettato per avviare il sistema operativo subito dopo l’accensione del server. Viene utilizzato su sistemi con BIOS e può essere installato sia nel Master Boot Record (MBR) sia nel settore di avvio di una partizione specifica.

Lo scopo principale di LILO è quello di individuare e caricare il kernel Linux nella memoria e quindi trasferirgli il controllo. A differenza dei bootloader più avanzati, LILO lavora direttamente con i settori del disco, rendendolo altamente affidabile e prevedibile.

LILO supporta configurazioni multi-boot, consentendo al sistema di avviarsi in sistemi operativi diversi. Il suo comportamento è completamente configurato tramite il file /etc/lilo.conf. Dopo qualsiasi modifica a questo file, la configurazione deve essere applicata manualmente eseguendo il comando lilo.

Grazie alla sua semplicità e ai requisiti minimi di risorse, LILO viene spesso utilizzato in sistemi minimalisti, incorporati o specializzati, nonché in ambienti server dove è essenziale il pieno controllo del processo di avvio.

Funzioni principali di LILO

  • Carica il kernel Linux (o un altro sistema operativo) nella memoria
  • Trasferisce il controllo al kernel selezionato
  • Supporta le configurazioni multi-boot
  • Funziona indipendentemente dal file system
  • Può essere installato nel MBR o nel settore di avvio della partizione

Esempio di configurazione LILO

boot=/dev/sda
prompt
timeout=50
default=linux
image=/boot/vmlinuz-5.10
  label=linux
  read-only
  root=/dev/sda1

Dopo aver modificato il file di configurazione, le modifiche devono essere applicate manualmente utilizzando:

sudo lilo

Vantaggi di LILO

  • Affidabilità – accede direttamente ai settori del disco, bypassando il file system
  • Leggero – richiede risorse di sistema minime
  • Flessibilità – supporta configurazioni di avvio multiOS
  • Controllo: il comportamento è completamente definito dalla configurazione manuale
  • Compatibilità con il BIOS – funziona bene con i sistemi BIOS tradizionali

Potenziali limitazioni

  • Non si aggiorna automaticamente quando i kernel vengono cambiati o reinstallati
  • Richiede l’esecuzione manuale di lilo dopo le modifiche alla configurazione
  • Nessun menu grafico integrato per la selezione dei kernel
  • Non è compatibile con i sistemi UEFI
  • Supporta solo il partizionamento MBR

Conclusione

LILO è un bootloader stabile e prevedibile, ideale per i sistemi che privilegiano la semplicità, il controllo e l’affidabilità. Rimane una scelta pratica per distribuzioni leggere, sistemi embedded e server basati su BIOS che utilizzano MBR.