Indietro

ⓘ Linux from Scratch




Linux from Scratch
                                     

ⓘ Linux from Scratch

Linux From Scratch è un libro scritto da Gerard Beekmans, Matthew Burgess ed altri. Nel libro sono fornite istruzioni su come costruire un sistema operativo partendo dal kernel Linux e da strumenti del sistema operativo GNU partendo dalla compilazione del loro codice sorgente.

                                     

1. Storia

La storia di LFS inizia nel 1998, quando Gerard Beekmans, non soddisfatto di altre distribuzioni, decide di creare il suo sistema ideale personale che si adatti alle sue esigenze, e scrive i suoi progressi in un pezzo di carta. In breve tempo, il libro riscuote successo, ed attorno ad esso si sviluppa un progetto, con lo scopo di educare lutente a costruire nel modo più pulito possibile un nuovo sistema operativo. Il libro è coperto da licenza Creative Commons By-Nc-Sa ed è disponibile dal sito di Linux From Scratch, la cui versione corrente è la 8.4. Per mantenere LFS piccolo e conservare il suo scopo, è stato creato un altro libro, Beyond Linux From Scratch, che presenta le istruzioni su come proseguire lo sviluppo del sistema di base creato con LFS.

                                     

2. Funzionamento

Linux From Scratch consiste in un modo per installare un sistema Linux funzionante attraverso la compilazione e configurazione di tutti i suoi componenti. Tale processo è molto più laborioso rispetto allinstallazione di una distribuzione pre-costruita. Lidea di base è che installare i singoli pacchetti uno per uno porterà ad una comprensione dei meccanismi interni di un sistema Linux funzionante. Inoltre, ovviamente, compilare tutto il software specificamente per la piattaforma ed architettura su cui verrà eseguito tende a far risultare i programmi più leggeri e veloci. Infine, è più facile personalizzare i pacchetti installati quando ognuno di essi è stato installato manualmente - "La tua distro, le tue regole".

                                     

3. Procedura

Per costruire LFS, il costruttore necessita di una partizione vuota e un file system Linux funzionante. Per prima cosa bisogna compilare una toolchain che consiste in strumenti tools come gcc, glibc e Perl, usati per compilare LFS. Poi la cartella radice deve essere cambiata chroot a quella cassetta degli attrezzi per far partire la costruzione del sistema finale. Uno dei primi pacchetti da compilare è glibc; dopo di che il linker della cassetta degli attrezzi deve essere impostato per linkare glibc appena costruito, così che tutti gli altri pacchetti che verranno costruiti per il sistema finale saranno linkati a questultimo. Non appena le versioni finali dei pacchetti sono installate, queste devono essere quelle utilizzate da bash, piuttosto che quelle temporanee nella cassetta degli attrezzi. Questo si realizza vuotando la tabella hash di bash ed impostando la cartella dei binari della cassetta degli attrezzi per ultima nella variabile di ambiente path del nuovo ambiente.