NLNX,(1) ex nanoLinux, è un sistema GNU/Linux versatile, per architettura x86, ottenuto a partire da pacchetti Debian. NLNX può funzionare sia in un file system in sola lettura (come quello di un disco ottico live o di una memoria solida USB), sia in un file system comune (come quello di un'unità a disco tradizionale). Inoltre, NLNX può essere installato in un file-immagine all'interno di un file system estraneo.
NLNX nasce e si evolve sulla base di esigenze legate alla gestione di reti di elaboratori destinati alla didattica; pertanto, NLNX deve risolvere problemi di gestione e di amministrazione relativi all'uso tipico che si fa di tali strumenti nei laboratori delle scuole. A questo proposito, il sistema operativo, così organizzato, è perfettamente adatto ad altri contesti di utilizzo, anche quando certe esigenze non sono così pressanti come invece avviene a scuola.
Attualmente, a causa della dimensione raggiunta dalla distribuzione, non è più possibile inserire questa in un DVD-ROM, pertanto è anche temporaneamente sospeso l'invio gratuito della stessa, in attesa che si diffondano i dischi BD (Blu-ray disc).
Il motto di NLNX è «semplicità e controllo», in riferimento all'organizzazione e gestione del sistema operativo, nel senso che una sola persona dovrebbe poter gestire, nei ritagli di tempo, una rete numerosa di elaboratori facenti capo a un solo servente, basando tutto su NLNX. Pertanto, l'aggettivo «semplicità» non va frainteso, in quanto servono comunque delle competenze, ma almeno la filosofia di NLNX è quella di evitare complicazioni dove possibile.
NLNX può essere modificato e riprodotto in forma di disco ottico live o di unità di memoria solida USB: basta installarlo in un elaboratore tradizionale e avere a disposizione abbastanza spazio libero per i file temporanei che si generano con tale procedimento.
Per quanto riguarda la gestione della rete, l'organizzazione di NLNX è rivolta a un contesto in cui l'accesso alla rete esterna avviene tramite un router già presente e accessibile dalla rete locale.
Dal punto di vista della grafica, NLNX è privo di «effetti speciali»; in particolare non si usa nemmeno un gestore di sessione e non c'è una preferenza per Gnome o KDE, in quanto si usano indifferentemente programmi di entrambi gli ambienti. La gestione dell'audio è essenziale e di norma un solo programma per volta può disporre delle funzionalità audio.
NLNX offre potenzialmente dei servizi impegnativi anche quando viene avviato da un'unità in sola lettura (come i dischi ottici live e le unità USB), salvo qualche eccezione per motivi di sicurezza.
L'edizione standard attuale di NLNX, ha un insieme di programmi applicativi scelti secondo criteri di funzionalità, cercando di evitare ridondanze dove possibile. Nella scelta dei programmi sono considerati la snellezza, la capacità di funzionare correttamente con la maggior parte delle lingue gestibili.
In generale, si preferisce la «pratica» rispetto alla «teoria». Ovvero, anche se sarebbe preferibile un certo programma x, può darsi che in pratica quel programma manifesti qualche inconveniente nelle condizioni di uso a cui è destinato NLNX; pertanto si opta per un programma y che magari è meno efficiente o più pesante, ma che almeno sembra dare, in pratica, maggiori garanzie di affidabilità.
Per la gestione della stampa si utilizza LPRng e non ci si avvale di CUPS. Per problemi di dipendenze tra i pacchetti applicativi, ne esistono alcuni di fittizi, senza alcun contenuto.
Nelle edizioni attuali di NLNX, a eccezione di alcuni file necessari per l'avvio, il file system del disco ottico live contiene dati compressi. Per la precisione, i dati compressi sono contenuti in un file system Squashfs (sezione 19.9), rappresentato dal file immagine nlnx.img
.
Nelle edizioni attuali di NLNX, quando il sistema viene utilizzato direttamente da disco ottico live, al termine del suo funzionamento tenta di espellere automaticamente il disco.
NLNX non dispone di una procedura di aggiornamento. Se si vuole «aggiornare» un sistema installato nel modo tradizionale, occorre fare una copia di quello vecchio, reinstallare quello nuovo e quindi ripristinare manualmente la configurazione precedente, assieme a tutti gli altri dati che prima venivano gestiti nello stesso file system.
NLNX si avvale di un disco RAM iniziale per l'avvio. Questo disco RAM include un proprio sistema minimo che generalmente mostra un menù di funzioni, per lo più rivolte alla selezione dell'unità da usare per l'avvio. Ma nel menù è prevista anche la voce {rescue
}, con la quale si ottiene un sistema minimo di emergenza, da usare per la manutenzione. Questo sistema minimo può consentire l'accesso a directory condivise in rete attraverso il protocollo NFS ed eventualmente è in grado di configurarsi automaticamente se è disponibile un servizio DHCP.
L'installazione ottimale di NLNX prevede l'uso esclusivo di una partizione di un disco fisso, tale da consentire un utilizzo «normale». Al contrario, il funzionamento da un disco ottico live o da unità di memoria solida USB (o anche da altri contesti), è differente, in quanto, in tal caso il file system è in sola lettura.
Teoricamente, si potrebbe installare NLNX in una memoria solida USB, come se si trattasse di un disco fisso comune. Tuttavia, gestendo un file system in lettura e scrittura, si hanno due tipi di problemi: le operazioni di scrittura sono molto lente e tutte le operazioni che si svolgono ne sarebbero coinvolte, compreso l'avvio che diventerebbe lentissimo, ma soprattutto, la scrittura continua distruggerebbe rapidamente l'unità di memoria. |
Con NLNX è possibile allestire un servente in grado di gestire l'avvio di altri sistemi NLNX attraverso la rete. Ciò può comportare due tipi di approccio: l'avvio di un sistema remoto, non disponendo localmente di una memoria di massa adeguata, oppure l'avvio di un sistema installato localmente, per il quale non è però necessario intervenire modificando il settore di avvio.
1) NLNX GNU GPL; i singoli applicativi sono sottoposti eventualmente a proprie condizioni specifiche
«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net