# Software libero a scuola/LTSP

Software libero a scuola
Copertina Tutti i moduli · Sviluppo
    CopertinaSoftware libero a scuola/Copertina
* Introduzione
* La storia della WiiLDSoftware libero a scuola/La nostra storia
* NovitàSoftware libero a scuola/Novità
* Solidarietà digitaleSoftware libero a scuola/Solidarietà digitale
* Fdroid
* VideotrackingSoftware libero a scuola/Vidanalisysfree
* Screen Stream over Http
* Jitsi Meet
* Commons
* Google - Animali e dinosauri in 3d
* Registra con AudacitySoftware libero a scuola/Registra con Audacity
* Registrare e creare file audio con AudacitySoftware libero a scuola/Registrare e creare file audio con Audacity
* SchoolcomSoftware libero a scuola/Schoolcom
* Calibre on line
* Attivare linux (beta)Software libero a scuola/Attivare linux (beta)
* Installare linux (beta)Software libero a scuola/Installare linux (beta)
* Usare Linux (beta)
* Installare Studio One 2 con wineSoftware libero a scuola/Installare Studio One 2 con wine
* Scratch e i suoi fratelliSoftware libero a scuola/Scratch e i suoi fratelli
* Open codingSoftware libero a scuola/OpenCoding
* OpenrobertaSoftware libero a scuola/Openroberta
* MblockSoftware libero a scuola/Mblock
* H5PSoftware libero a scuola/H5P
* Exelearning
* WordPressSoftware libero a scuola/WordPress
* Joomla
* Drupal
* Sito web della scuolaSoftware libero a scuola/Sito web della scuola
* ArawordSoftware libero a scuola/Araword
* Grid AstericsSoftware libero a scuola/Grid Asterics
* EviacamSoftware libero a scuola/Eviacam
* PictofacileSoftware libero a scuola/Pictofacile
* SIMCAA
* CrowdmapSoftware libero a scuola/Crowdmap
* OpenStreetMapSoftware libero a scuola/OpenStreetMap
** UmapSoftware libero a scuola/OpenStreetMap/Umap
* Gocarto
* Capire e farsi capire giocandoSoftware libero a scuola/Capire e farsi capire giocando
* MinetestSoftware libero a scuola/Minetest
** Comandi di MinetestSoftware libero a scuola/Minetest/Comandi di Minetest
** Fare cose su MinetestSoftware libero a scuola/Minetest/Fare cose su Minetest
** Scrivere libri su MinetestSoftware libero a scuola/Minetest/Scrivere libri su Minetest
** Mod bike
** Mod Chemistry
** Mod Digilines
** Mod FacadeSoftware libero a scuola/Minetest/Mod Facade
** Mod LettersSoftware libero a scuola/Minetest/Mod Letters
** Mod LwscratchSoftware libero a scuola/Minetest/Mod Lwscratch
** Mod Jukebox
** Mod MeseconsSoftware libero a scuola/Minetest/Mod Mesecons
** Mod Mesecons soundblockSoftware libero a scuola/Minetest/Mod Mesecons_soundblock
** Mod MinetestMovementFramesSoftware libero a scuola/Minetest/Mod MinetestMovementFrames
** Mod Moreblocks
** Mod Orienteering
** Mod painterSoftware libero a scuola/Minetest/Mod painter
** Mod power generator
** Mod presentationsSoftware libero a scuola/Minetest/Mod presentations
** Mod Sculpture
** Mod signs libSoftware libero a scuola/Minetest/Mod signs lib
** Mod street signs
** Mod VikidiaSoftware libero a scuola/Minetest/Mod Vikidia
** Mod vbotsSoftware libero a scuola/Minetest/Mod vbots
** Mod WikiSoftware libero a scuola/Minetest/Mod Wiki
** Mod WikipediaSoftware libero a scuola/Minetest/Mod Wikipedia
* DrawpileSoftware libero a scuola/Drawpile
* Gimp
* Inkscape
* Krita
* Sweethome3DSoftware libero a scuola/Sweethome3D
* BDnfSoftware libero a scuola/BDnf
* SynfigSoftware libero a scuola/Synfig
* Hardware, trashware
* TouchscreenSoftware libero a scuola/Touchscreen
* Videolezioni con OpenboardSoftware libero a scuola/Openboard
* FlipbookSoftware libero a scuola/Flipbook
* LadigitaleSoftware libero a scuola/Ladigitale
* StoryweaverSoftware libero a scuola/Storyweaver
* AI get startedSoftware libero a scuola/AI get started
* ChatGPTSoftware libero a scuola/ChatGPT
* lmstudioSoftware libero a scuola/lmstudio
* MachineLearningForKidsSoftware libero a scuola/MachineLearningForKids
* OllamaSoftware libero a scuola/Ollama
* RAG - Come fareSoftware libero a scuola/RAG - Come fare
* Stable DiffusionSoftware libero a scuola/Stable Diffusion
* Lavagne interattiveSoftware libero a scuola/Lavagne interattive
* OpenboardSoftware libero a scuola/Openboard
* Lezioni in webchat con JitsiSoftware libero a scuola/Jitsi
* Installazione server JitsiSoftware libero a scuola/Jitsi-installazione-su-vps
* Lezioni in webchat con BigBlueButtonSoftware libero a scuola/BigBlueButton
* Installazione server BigBlueButtonSoftware libero a scuola/BigBlueButton installazione
* Collaborare in modo sincronoSoftware libero a scuola/Collaborare in modo sincrono
* Chat testualiSoftware libero a scuola/Chat testuali
* Chat audioSoftware libero a scuola/Chat audio
* UnhangoutSoftware libero a scuola/Unhangout
* OpenDX
* MoodleSoftware libero a scuola/Moodle
** Moodle quizSoftware libero a scuola/Moodle/Moodle quiz
* AdaSoftware libero a scuola/Ada
* ChamiloSoftware libero a scuola/Chamilo
* Mappe mentali e concettualiSoftware libero a scuola/Mappe mentali e concettuali
* Wiki2mapSoftware libero a scuola/Wiki2map
* FreeplaneSoftware libero a scuola/Freeplane
* Draw.ioSoftware libero a scuola/Draw.io
* HeimerSoftware libero a scuola/Heimer
* MymarkmapSoftware libero a scuola/Mymarkmap
* Musescore
* FrescobaldiSoftware libero a scuola/Frescobaldi
* Costruisci una chiavetta UsbSoftware libero a scuola/Costruisci una chiavetta Usb
* Costruisci un DVDSoftware libero a scuola/Costruisci un DVD
* CD e DVD allegatiSoftware libero a scuola/CD e DVD allegati
* Video
* Gestore dei pacchettiSoftware libero a scuola/Gestore dei pacchetti
* Uso di VirtualboxSoftware libero a scuola/Uso di Virtualbox
* SodilinuxSoftware libero a scuola/Sodilinux
* BubbleSoftware libero a scuola/Bubble
* MblockSoftware libero a scuola/Mblock
* Mbot2Software libero a scuola/Mbot2
* Micro:Bit
* Mind DesignerSoftware libero a scuola/Mind Designer
* Opensource turtle robotSoftware libero a scuola/Opensource turtle robot
* Robotica risorse e approfondimentiSoftware libero a scuola/Robotica risorse e approfondimenti
* Spike prime
* SuperDoc
* ThymioSoftware libero a scuola/Thymio
* VideotrackingSoftware libero a scuola/Tracker
* Concord - Applet scienze onlineSoftware libero a scuola/Concord/
* Phet - Applet scienze onlineSoftware libero a scuola/Phet
* Simscale - Simulatore scienza
* CryptpadSoftware libero a scuola/Cryptpad
* CodimdSoftware libero a scuola/Codimd
** FlipbookSoftware libero a scuola/Flipbook
* Scrittura collaborativa, tabella di riepilogoSoftware libero a scuola/ScritturaCollaborativa
* Scrittura collaborativa con AbiWordSoftware libero a scuola/AbiWord
* LibreOffice
* PdfSoftware libero a scuola/Pdf
* PDFtk
* PDFedit
* PdfSam
* Pdf4TeacherSoftware libero a scuola/Pdf4Teacher
* Cmap Tools
* Learningapps
* VocarooSoftware libero a scuola/Vocaroo
* VideotrackingSoftware libero a scuola/Vidanalisysfree
* Gsuite
* Anydesk
* RemminaSoftware libero a scuola/Remmina
* Remotely
* ScreentaskSoftware libero a scuola/Screentask
* RustdeskSoftware libero a scuola/Rustdesk
* Laboratori con linuxSoftware libero a scuola/Laboratori con linux
** ProxmoxSoftware libero a scuola/Laboratori con linux/Proxmox
** ZentyalSoftware libero a scuola/Laboratori con linux/Zentyal
*** Gestione utenti LDAPSoftware libero a scuola/Laboratori con linux/Zentyal/Gestione utenti LDAP
* Allestimento PC linux per scuolaSoftware libero a scuola/Allestimento PC linux per scuola
** PFSenseSoftware libero a scuola/Gestire la rete/PFSense
* Orario scolastico - FETSoftware libero a scuola/Orario scolastico - FET
* Videoporama
* Imagination
* Polymny-studioSoftware libero a scuola/Polymny-studio
* VokoscreenSoftware libero a scuola/Vokoscreen
* Obs-studioSoftware libero a scuola/Obs-studio
* OpenshotSoftware libero a scuola/Openshot
* ShotcutSoftware libero a scuola/Shotcut
* KdenliveSoftware libero a scuola/Kdenlive
* VikidiaSoftware libero a scuola/Vikidia
* Wikiversity
* Wikibooks
* Wikivoyage
* Wiki2mapSoftware libero a scuola/Wiki2map
Modifica il sommario
toc

# Preambolo

|| Licenza GNU FDL Copyleft 2009 Joris Fabrizio Rossi È garantito il permesso di copiare, distribuire e/o modificare questo documento secondo i termini della Licenza per Documentazione Libera GNU (GNU FDL) versione 1.3 o ogni versione successiva pubblicata dalla Free Software Foundation; senza Sezioni Non Modificabili, senza Testi di Copertina e senza Testi di Retro Copertina. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GNU FDL), Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no BackCover Texts ||
Parti di questo documento soprattutto nelle sezioni tecniche e nelle constatazioni politiche economiche sono tratte dalla Presentazione di Fabrizio Rossi per suo volere espresso dalla nota di copyright del documento rilasciamo questa pagina con la licenza GNU FDL. Un sentito ringraziamento a Fabrizio per avere condiviso il suo prezioso lavoro e mi ha permesso di documentare il lavoro fatto su LTSP in una maniera molto bella e veloce. Questo è un estratto del documento originale con integrate alcune sezioni specifiche per WiildOs. Per leggere il documento originale di Federico clicca qui.
Ringrazio OutOfBound, una persona che si occupa da tempo in Piemonte di trashware e reti informatiche nelle scuole e che mi ha passato un ottimo script per auto-configurare LTSP. Questo mi ha incentivato a migliorarlo e a mettere a disposizione di tutti il lavoro effettuato in questo documento e all'interno di WiildOs.

# LTSP

Immaginiamo di avere un laboratorio informatico con computer vecchi e datati o semplicemente di voler provare WiildOs nella nostra rete di computer. Come facciamo? Abbiamo due soluzioni o ci facciamo comprare, se abbiamo i soldi, un laboratorio nuovo (magari con tecnologie mobili) o facciamo girare su ogni macchina una una live di WiildOs oppure facciamo girare LTSP su una macchina sola. Sulle altre macchine chiamate client non andremo ad installare nulla. In questo modo potrete realizzare laboratori scolastici e reti aziendali a bassissimo costo anche riciclando vecchi computer. Questa soluzione non è moda; è una tecnologia stabile e solida economica, ecologica e professionale; un modello ideale per ambienti didattici e amministrativi. LTSP è una soluzione assai utilizzata in Europa e nel Mondo ma in Italia conosce solo alcune sperimentazioni felici ma numericamente limitate. Favoriamo il riuso informatico; abbiamo tanta capacità di calcolo e intelligenza collettiva buttata nell'immondizia: un problema, ma anche una risorsa. Evoluzione tecnologica e oculate strategie di marketing (da abiurare) favoriscono un'obsolescenza precoce dell'hardware, inducendo l'abbandono dei “vecchi” computer per macchine in grado di supportare nuovi standard. Il risultato è la dismissione di enormi quantità di hardware ancora perfettamente funzionante. Il problema ecologico posto dai rifiuti elettronici (altamente inquinanti) ha condotto in tempi recenti alle normative RAEE (Rifiuti di Apparecchiature Elettriche ed Elettroniche), che introducono regole tecniche ed economiche per uno smaltimento più oculato, a fronte della mera rottamazione praticata in precedenza. Tra le conseguenze delle succitate normative, (semplificando) se ne può ricavare una di un certo rilievo: le aziende pubbliche e private che conferiscono con un atto formale a scuole, associazioni, etc. gli apparati obsoleti, in pratica, vengono sollevate dalle relative tasse di smaltimento. Una condizione che, di fatto, rende disponibili ingenti quantità di computer riciclabili, trasformando un problema ecologico in una risorsa economica di importanza significativa.

# LTSP in WiildOs

LTSP sarà integrato in WiildOs 3.0 e permetterà di fare questa piccola magia avviando direttamente la live di WiildOs. Se la soluzione ti piace puoi decidere di installare WiildOs sul server; in questo modo potrai manutenere solo il server, configurerai e installerai i programmi solo una volta per tutti. Si spera che questo piccolo contributo possa promuovere l'utilizzo di questa tecnologia e renderla a portata di tutto perseguendo la filosofia del rendere tutto facile con un tocco magico.

## Thin client

La modalità con cui partirà LTSP su WiildOs è quella thin client. Con una configurazione thin client i computer del laboratorio si avvieranno da rete acquisendo una piccola immagine del sistema operativo e utilizzeranno tutte le risorse del server. La cpu e la ram locale non verranno usate. Questo è particolarmente adatto nel caso in cui si abbiano macchine veramente scarse. In WiildOs abbiamo optato per una configurazione thin client in quanto pesa poco nella dimensione della iso e utilizza meno risorse di rete ed è una configurazione più adatta alle prove live. L'installazione prevede di poter accedere ai dischi locali in modo da poter memorizzare i dati sull'hard disk opzionale del client e utilizzare dispositivi di memorizzazione usb, cdrom e dvd.

## Fat client

Lasciamo al lettore l'esercizio e il completamento della pagina nel caso voglia installare WiildOs e cambiare le configurazioni in modo da farla lavorare come fat client o come sistema misto thin/fat client. LTSP permette di lavorare anche con fat client. Un fat client acquisisce una immagine del sistema operativo grande e completa, dopodichè è autonomo dal server e usa la cpu e la sua ram locale. Le nuove versioni di LTSP permettono di configurare un server LTSP che fornisce sia le funzionalità di thin client che di fat client a seconda delle prestazioni del singolo client. Quindi nel caso in cui decidiate di installare un server LTSP con WiildOs vi consigliamo di passare a una configurazione fat client. Leggi come fare nella [https:help.ubuntu.com/community/UbuntuLTSP/FatClients documetazione di Ubuntu].

# Requisiti hardware
## Server

Va bene un computer recente di buone prestazioni con due schede di rete. Un computer con CPU dual core 3.1 GHz con 4GB di ram è in grado di gestire una aula informatica con 25 client. Un piccolo consiglio cercate l'associazione di trashware (riuso informatico) più vicina a voi spesso si trovano dei buoni server dismessi. Si tratta di server con tre, quattro anni di anzianità dismessi da scuole, banche, assicurazioni e aziende nel terziario avanzato. Potete provare anche a fare una questua, questo non è accattonaggio ma è riuso informatico.

## Client

Va bene qualunque computer funzionante dotato di una interfaccia di rete. computer possono essere anche privi di hard disk. Se non aveste computer di riciclo vi ricordo che i computer datati (completi di monitor, tastiera e mouse) utilizzabili come thin client sono reperibili gratuitamente dalle dismissioni di enti pubblici ed imprese private.

## Rete

LTSP è basato sul trasferimento massivo di dati tra il server e i thin client. E' pertanto necessario disporre di banda sufficiente affinché la gestione risulti fluida: tra singoli thin client e switch di rete sono sufficienti connessioni a 100Mbps; tra server e switch di rete sono opportune connessioni Gigabps, specialmente con un numero elevato di thin client (con un numero limitato di client funzionano comunque dignitosamente anche connessioni a 100Mbps). Per semplicità di gestione è opportuno dotare il server di due interfacce di rete (meglio se prima dell'installazione): una Gigabps per la rete LTSP e una 100Mbps per la connessione Internet (Intranet, etc.). Con LTSP ci servirà un solo computer con due schede di rete che funzionerà da server e su cui girerà WiildOs, tutti gli altri computer si avvieranno da rete grazie a servizi che mette a disposizione il server LTSP.
E' possibile usare anche una singola interfaccia di rete, procurando però che la gestione DHCP sia effettuata dal server LTSP, una normale rete con uno switch o hub collegato ai client e al server è sufficiente.

# Avvia il server LTSP

Prima di tutto avvia WiildOs come al solito. Una volta partito il sistema vai su "Preferenze" e clicca su "LTSP". Aspetta pazientemente in pochi secondo sarà tutto pronto.
Ecco fatto adesso il tuo servizio LTSP è già in funzione.

# Avvia i client

Non devi fare altro che andare nel bios dei client e configurare di partire da rete. Questo passaggio va fatto una volta sola. Per fare questo avvia i terminali entra nel Bios ed anticipa nella fase di boot l'avvio da rete. Questa funzione può avere nomi diversi come "network boot", "pxe boot", "boot from NIC" (NIC sta per network interface) o nomi simili di solito seguiti con il nome della scheda di rete, una volta anticipata la voce e salvati i cambiamenti il computer proverà ogni volta ad avviarsi da rete e caricherà WiildOs attraverso il servizio LTSP ogni qual volta sarà disponibile. Qualora il server non fosse disponibile il client si avvierà come al solito dagli altri dispositivi; il computer si comporterà dunque come prima.
Nella figura potete vedere come si fa a selezionare il boot da rete con uno dei Bios più diffusi.

# Come funziona

Questo paragrafo è riservato a chi volesse approfondire come funziona LTSP, quali sono le configurazioni in WiildOs e come è stato messo a punto il servizio di plug and play.
Cosa succede quando parte un client LTSP
* Il client fa una richiesta dhcp
* Il server dhcp che gira sul server LTSP risponde e le informazioni di dove si trova il kernel minimale
* Il client richiede il kernel minimale attraverso il servizio tftp che gira sul server LTSP
* Il server tftp che gira sul server LTSP invia l'immagine del kernel minimale
* Il client riceve l'immagine e la fa girare. Monterà le directory del server con nbd
* Il client fa il login al sistema grafico del server ltsp attraverso ldm
* Il client ha completato l'avvio e ha a disposizione l'interfaccia grafica
Allora tutta la configurazione e avviamento dei servizi è fatta con uno script che si chiama start-ltsp-server ed è nella cartella /usr/local/bin questo script è un avanzamento e una personalizzazione di uno script sviluppato da OutOfBound, che da anni si occupa di trashware e server LTSP. Cosa fa lo script?
* classifica le schede di rete e ne discrimina una come interna, una come esterna
* configura il server dnsmasq sulla scheda interna
* Configura il natting tra la scheda interna e esterna
* Configura il servizio ltsp
* Avvia tutti i servizi necessari all'esecuzione di LTSP
In cosa è stato personalizzato lo script di OutOfBound per far girare più agevolmente LTSP su WiildOs live:
* Un po' di bug-fixing e refactoring del codice
* Si utilizza dnsmasq come server dhcp/tftp al posto del più pesante dell'isc-dhp-server
* Si utilizzano connessioni in chiaro per velocizzare la comunicazione tra i client e il server e diminuire l'uso di cpu. La sicurezza non è lo scopo del progetto.
* I client effettuano l'autologin attraverso una auto configurazione costante del servizio LTSP che viene aggiornata ogni volta che avviene il rilascio di un IP da parte di dnsmasq.
Esempio: collego una macchina con mac address 2c:27:d7:a5:45:da a cui viene assegnato dal servizio dnsmasq l'indirizzo 192.168.30.40. L'hostname della macchina sarà ltsp040 e la password anche ltsp040. Queste informazioni andranno inserite dinamicamente nel file di configurazione di ltsp in modo che il client sia in grado di fare un autologin. Per maggiori informazioni fai man dnsmasq e guarda il file dhcp-scrip nella directory /usr/local/bin 5. Non è più necessario ricostruire l'immagine a runtime o rigenerare le chiavi ssh all'avvio. Tutto è già precostruito all'interno di WiildOs; in questo modo i tempi di attesa per far salire il servizio sono veramente stupefacenti.
In cosa è migliorabile?
* Migliore gestione con una singola interfaccia di rete soprattutto nel caso ci sia anche un altro server dhcp attivo sulla rete
* Sviluppare un sistema che possa passare alla modalità fat client, particolarmente utile in installazioni fisse soprattutto se si ha a disposizione hardware con almeno un giga di ram. Sarebbe così un peccato non utilizzare quella risorsa...