[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
it:slackware:liveslak [2021/12/31 18:56 (UTC)] – [I parametri di boot spiegati] twenty-sevenit:slackware:liveslak [2022/01/15 18:57 (UTC)] (versione attuale) – [Creating a Live ISO from scratch] twenty-seven
Linea 469: Linea 469:
  
  
-==== Layout of the ISO ====+==== Layout della ISO ====
  
  
-The Live ISO contains three directories in the root of its filesystem:+La ISO Live contiene tre directory nella root del suo filesystem:
   * EFI/   * EFI/
   * boot/   * boot/
   * liveslak/   * liveslak/
  
-The USB variant with persistence may have an additional directory in the root:+La variante USB con persistenza puo' avere una directory aggiuntiva nella root:
   * persistence/   * persistence/
  
-  * The EFI/ directory contains the Grub configuration used when you boot the Live OS on a computer with UEFI. +  * La directory EFI/ contiene la configurazione del Grub usata quanto fai il boot del Live OS su un computer con UEFI. 
-  * The boot/ directory contains the syslinux configuration used when the Live OS boots on a computer with a BIOS.  This directory also contains the kernel and initrd files which are used to actually boot the OS+  * La directory boot/ contiene la configurazione del syslinux usata quando fai il boot del Live OS su un computer con BIOS. Questa directory contiene inoltre il kernel e i files dell' initrd che sono usati in realta' per avviare il sistema operativo
-  * The liveslak/ directory contains all the squashfs modules which are used to assemble the filesystem of the Live OS, as well as files that are copied directly into the root of the Live filesystem It contains four subdirectories+  * La directory liveslak/ contiene tutti i moduli squashfs che sono usati per assemblare il filesystem della Live OS, allo stesso modo dei files che sono copiati direttamente nella root del filesystem della Live. Contiene le seguenti sottodirectory
-    * addons/ - modules which are stored in this directory will always be added to the Live filesystem unless you prevent that with a "noload=" boot parameter+    * addons/ - i moduli che sono contenuti in questa directory saranno sempre aggiunti al filesystem Live meno che voi non li escludiate con un parametro "noload=" al boot; 
-    * optional/ - modules in this directory will not be added to the filesystem of the Live OS unless you force this with a "load=" boot parameter+    * optional/ - i moduli che sono contenuti in questa directory non saranno aggiunti al filesystem Live a meno che voi non ne forziate il caricamento con il parametro "load=" al boot; 
-    * system/ - this directory contains all the modules which were created by the "make_slackware_live.sh" script All these modules are numbered and the Live init script will use that to re-assemble the Live filesystem in the exact same order as they were created initially+    * system/ - questa directory contiene tutti i moduli che sono stai creati dallo script "make_slackware_live.sh"Tutti questi moduli sono numerati e lo script di init della Live usera' quella numerazione per assemblare il filesystem Live nello stesso ordine di come essi sono stati creati inizialmente
-    * rootcopy/ - this directory is empty by default.  Anything you (the user of the ISO) add to this directory will be copied verbatim into the filesystem by the init script when the Live OS boots You can use this feature for instance if you do not want to create a separate squashfs module file for your application configuration files.+    * rootcopy/ - questa directory e' vuota di default. Qualunque cosa (l' utente della ISO) aggiungiate a questa directory sara' copiato testualmente nel filesystem dallo script di init quando la Live OS fa il bootPotete usare questa feature per esempio se non volete creare un modulo squashfs separato per i file di configurazione della vostra applicazione. 
 +===== Documentazione per lo Sviluppatore =====
  
  
-===== Developer Documentation ===== +==== Scripts tools ====
- +
- +
-==== Scripts and tools ====+
  
  
 === make_slackware_live.sh === === make_slackware_live.sh ===
  
 +Il primo script:
  
-The first script:+Lo script "make_slackware_live.sh" crea un file ISO che come output contiene la Live OS. 
 +Grazie al kernel Linux 4.x e al pacchetto squashfs-tools in Slackware, il processo di creazione di una Live ISO di Slackware **non** richiede (ri)compilazione del contenuto di Slackware o l' installazione di pacchetti di terze parti.
  
-The script "make_slackware_live.sh" creates an ISO file as its output which contains the Live OS. +Il funzionamento interno dello script puo' essere suddiviso in diversi passaggi distintiPer la completa ISO di Slackware i passaggi del processo sono i seguenti:
-Thanks to Linux kernel 4.x and the squashfs-tools package in Slackware, the process of creating a Slackware Live ISO requires **no** (re)compilation of Slackware content or installing 3rd party packages.+
  
-The script's inner workings can be subdivided into several distinct stages.  For the full Slackware ISO the process stages are as follows: 
  
 +== Installare i pacchetti di Slackware ==
  
-== Install the Slackware packages ==+Primo stage:
  
 +  * Lo script legge una sequenza di pacchetti per la variante della Live e installa tutti i pacchetti in questa sequenza nello sottodirectory di un albero di directory temporaneo.
 +  * Ogni set di pacchetti di Slackware (a, ap, d, ... , y) o lista di pacchetti (min, noxbase, x_base, xapbase, ...) viene installato in una directory 'root' separata.
 +  * Ognuna di queste directory e' "squashata" (usando squashfs) in un modulo squashfs separato. Tale modulo e' un singolo file di archivio contenente la struttura compressa delle directory dei pacchetti installati.
 +  * Questi files dei moduli sono successivamente montati in loop e poi messi insieme in una singola struttuta a directory a sola lettura usando un "overlay mount". L' overlayfs e' relativamente nuovo; Le distro Live precedenti usavano aufs e unionfs per ottenere simili funzionalita', ma essi non erano parte di nessun sorgente stock del kernel e quindi i kernels custom dovevano essere compilati per tali distro Live.
 +  * Questo "overlay assemblato" e' il filesystem che sara' avviato come filesystem della Live OS.
 +  * In 'cima' a questa serie di filesystems overlay in sola lettura, lo script "make_slackware_live.sh" aggiunge un filesystem scrivibile. Questo filesystem scrivibile e' usato per contenere tutte le customizzazioni alla nostra distro, che vogliamo vengano applicate quando la Slackware Live si avvia. Vedere la prossima sezione per maggiori dettagli.
 +  * Notate che quando fate il boot della Live OS successivamente, un altro overlay scrivibile sara' usato per recepire ogni operazione di scrittura eseguita dall' OS. Voi vedrete la Live Os come un vero sistema operativo che puo' scrivere e cancellare files. Questo filesystem scrivibile sara':
 +    * un filesystem basato sulla RAM quando la Live OS sara' eseguita senza persistenza.
 +    * una directory o un container file montato in loop sulla vostra penna USB, se state usando una USB con persistenza.
  
-Stage one: 
  
-  * The script reads a package sequence for the Live variant and installs all packages in this sequence to subdirectories of a temporary directory tree. +== Configurare il filesystem della Live con utili defaults out-of-the-box ==
-  * Every Slackware package set (a, ap, d, ... , y) or package list (min, noxbase, x_base, xapbase, ...) is installed into a separate 'root' directory. +
-  * Each of those root directories is "squashed" (using squashfs) into a separate squashfs module.  Such a module is a single archive file containing the compressed directory structure of the installed packages. +
-  * These module files are subsequently loop-mounted and then combined together into a single read-only directory structure using an "overlay mount" The overlayfs is relatively new; earlier Live distros have been using aufs and unionfs to achieve similar functionality, but those were not part of any stock kernel source and therefore custom kernels had to be compiled for such a Live distro. +
-  * This "overlay assembly" is the filesystem that will be booted as the filesystem of the Live OS. +
-  * On 'top' of this series of overlayed read-only filesystems, a writable filesystem is added by the "make_slackware_live.sh" script.  This writable filesystem is used to store all the customizations to our distro that we want to be applied when Slackware Live boots up.  See the next section for more detail. +
-  * Note that when you boot the Live OS later on, another writable overlay will be used to capture any write operations performed by the OS.  You will perceive the Live OS as a real OS that can write and remove files.  That writable filesystem will be: +
-    * a RAM-based filesystem when the Live OS runs without persistence. +
-    * a directory or a loop-mounted container file on your USB stick, if you use a USB stick with persistence.+
  
  
-== Configure the Live filesystem with useful out-of-the-box defaults ==+Secondo stage:
  
 +  * L'inizializzazione di alcuni filesystem e' fatta quando l' overlay e' stato assemblato:
 +    * gli utenti 'root' e 'live' vengono creati,
 +    * un ambiente iniziale per gli account viene configurato,
 +    * l' ambiente desktop e' pre-configuurato per il primo uso,
 +    * gli scripts della liveslak "makemod", "iso2usb" e "upslak.sh" sono copiati in "/usr/local/sbin/" nella ISO per vostra comodita',
 +    * lo script "setup2hd" e i files dell' installer della Slackware sono copiati rispettivamente in "/usr/local/sbin" e "/usr/share/liveslak".
 +    * Viene configurato slackpkg,
 +    * viene creato un database locale,
 +    * ecc...
 +  * Tutte queste modifiche sono scritte nel filesystem scrivibile che e' stato creato nella precedente sezione. Questo filesystem sara' anche contenuto della ISO come modulo squashfs e, quando il Live OS si avviera', sara' montato in sola lettura come tutti gli altri moduli. Il suo nome sara' "0099-slackware_zzzconf-current-x86_64.sxz" o, piu' genericamente, "0099slackware_zzzconf-${SLACKVERSION}-${ARCH}.sxz"
  
-Stage two:+== Configurare la fase di boot della Live OS ==
  
-  * Some filesystem initialization is done when the overlay has been assembled: 
-    * 'root' and 'live' user accounts are created, 
-    * an initial environment for the accounts is configured, 
-    * the desktop environment is pre-configured for first use, 
-    * the liveslak scripts "makemod", "iso2usb.sh" and "upslak.sh" are copied to "/usr/local/sbin/" in the ISO for your convenience, 
-    * the "setup2hd" script and the Slackware installer files are copied to "/usr/local/sbin" and "/usr/share/liveslak" respectively. 
-    * slackpkg is configured, 
-    * a locate database is created, 
-    * etc... 
-  * All these modifications are written to the writable filesystem that was created in the previous section. This filesystem will also be stored on the ISO as a squashfs module and when the Live OS boots, it will be mounted read-only just like all the other modules. Its name will be "0099-slackware_zzzconf-current-x86_64.sxz" or more generically "0099-slackware_zzzconf-${SLACKVERSION}-${ARCH}.sxz" 
  
 +Fase tre:
  
-== Configure the boot stage of the Live OS ==+  * viene generato un initrd, contenente uno script di "init" modificato (altre distro Live lo chiamano "linuxrc script") che ri-assembla il filesystem di overlay al boot e configura la Live OS a seconda dei parametri di boot (lingua, tastiera, fuso orario, runlevel, ...) 
 +  * un kernel gnerico slackware e l' initrd di cui sopra vengono aggiunti a una configurazione syslinux (per computers con BIOS) e a grub2 (per computers con UEFI).
  
  
-Stage three:+== Creazione dell' immagine ISO ==
  
-  * an initrd is generated, containing a modified "init" script (other Live distros call it a "linuxrc script") which re-assembles the overlay filesystem on boot and configures the Live OS according to the boot parameters (language, keyboard, timezone, runlevel, ...) +Faser quattro:
-  * a slackware generic kernel plus the above initrd are added to a syslinux (for BIOS computers) and a grub2 (for UEFI computers) configuration.+
  
 +  * una ISO bootabile viene creata usando mkisofs.
 +  * il comando "isohybrid" viene lanciato sulla ISO cosicche' voi potrete copiare la ISO con "dd" o "cp" su una penna USB e di conseguenza creare un media USB bootabile.
  
-== Create the ISO image ==+Fatto! Potete trovare il file ISO e il suo checksum MD5 nella directory /tmp.
  
  
-Stage four:+=== iso2usb.sh ===
  
-  * a bootable ISO file is created using mkisofs. 
-  * the "isohybrid" command is run on the ISO so that you can "dd" or "cp" the ISO to a USB stick and thus create a bootable USB media. 
  
-Done! You can find the ISO file and its MD5 checksum in the /tmp directory.+Il secondo script:
  
 +L' utilizzo a runtime dello script "iso2usb.sh" e' spiegato in dettaglio in un precedente paragrafo "Trsferire il contenuto della ISO su una penna USB".
  
-=== iso2usb.sh ===+Questa sezione spiega come lo script modifichi la ISO per le funzionalita' aggiuntive della USB.
  
  
-The second script:+== Layout della chiavetta USB ==
  
-The "iso2usb.sh" script's runtime usage is explained in detail in previous paragraph "Transfering ISO content to USB stick".+Lo script "iso2usb.sh" cancella e ri-partiziona la penna USB meno che non vengano usati i parametri "-r" o //refresh//. Vedi la sezione "[[#Trasferire il contenuto di una ISO su una penna USB|Trasferire il contenuto di una ISO su una penna USB]]per una spiegazione di tutte le impostazioni da linea di comando\\ Lo script creera' 3 partizioni:
  
-This section explains how the script modifies the ISO for the enhanced USB functionality.+  * Prima partizione: una piccola (1 MB di dimensione) partizione FAT che non e' usata dalla Slackware Live Edition. Puo' essere usata da un bootloader alternativo se si necessita. Potete anche metterci il vostro keyfile LUKS per sbloccare un computer con Slackware Linux criptato con LUKS (vedete il file [[http://ftp.osuosl.org/pub/slackware/slackware64-current/README_CRYPT.TXT|README_CRYPT.TXT]] sul vostro DVD Slackware per maggiori informazioni sui LUKS keyfile). 
 +  * Seconda partizione: una partizione VFAT di 100MB contenente il kernel, l' initrd e tutte le altre cose necessarie a syslinux e grub2 per avviare Slackware Live Edition. 
 +  * Terza partizione: una partizione Linux che occupa tutto il resto dello spazio. Conterra' i moduli liveslak, lo spazio di archiviazione persistente e, opzionalmente, la vostra directory home criptata. Potete usare il resto dello spazio libero di questo filesystem Linux //ext4// per metterci tutto quello che volete.
  
-== Layout of the USB stick ==+Notate che questo script e' l' unico metodo supportato per trasferire il contenuto della ISO liveslak su una penna USB e di rendere quella stessa USB un Live OS con persistenza. Diversi tool di terze parti (come mulibootusb, rufus, unetbootin), che dichiarano di essere in grado di mischiare diverse Live OS su una singola penna USB e renderle funzionanti in un setup multi-boot, attualmente non supportano liveslak.
  
-The "iso2usb.sh" script wipes and re-partitions the USB stick unless the "-r" or //refresh// parameter is used.  See section "[[#transfering_iso_content_to_usb_stick|Transfering ISO content to USB stick]]" for an explanation of all commandline switches. \\ The script will create 3 partitions: 
  
-  * First partition: a small (1 MB in size) FAT partition which  is not used for Slackware Live Edition.  It can be used by an alternative bootloader if needed.  You can also store your LUKS keyfile on it to unlock a LUKS-encrypted Slackware Linux computer (see the [[http://ftp.osuosl.org/pub/slackware/slackware64-current/README_CRYPT.TXT|README_CRYPT.TXT]] file on your Slackware DVD for more information on LUKS keyfiles). +== Montare un filesystem in un container criptato ==
-  * Second partition: a 100 MB VFAT partition containing the kernel, initrd and all the other stuff required by syslinux and grub2 to boot Slackware Live Edition. +
-  * Third partition: a Linux partition taking up all of the remaining space. It contains the actual liveslak modules, the persistent live storage and optionally your encrypted homedirectory. You can use the remainder of this Linux //ext4// filesystem's free space to store anything you like.+
  
-Note that this script is the only supported method of transfering the liveslak ISO content to a USB stick and make that USB stick into a persistent live OS Several 3rd party tools (like multibootusbrufusunetbootinthat claim to be able to mix several Live OS'es on a single USB stick and make them all work in a multi-boot setupare not currently supporting liveslak.+Lo script creera' un file di dimensione richiesta nella root della partizione Live usando il comando 'dd'Il comando 'cryptsetup luksCreate' inizializzera' la cifratura, che fara' in modo che lo script vi chieda "se siete sicuri, digitate YES in maiuscolo", dopodiche' dovrete inserire una passphrase tre volte (due per l' inizializzazioneuna per l' apertura del container). Se il container e' usato per una /home criptatail nome del suo file sara' "slhome.img". Lo script copiera' il contenuto esistente della /home della ISO nel filesystem del container che sara' montato piu' tardi sulla /home della ISO (coprendo quindi la /home esistente)
 +Il Live OS eistruito per decriptare il container e montare il filesystem. Questo e' fatto editando il file "/luksdev" nell' initrd e aggiungendo una linea: "/slhome.img"
 +Lo script iso2usb.sh supporta solamente la creazione e configurazione di una /home criptata, ma potete creare dei containers criptati aggiuntivi da voi e montarli in altri posti del filesystem della ISO. Affinche' tutto cio' funzioni, dovete editare il file "/luksdev" e aggiungere una linea "/vostro/container.img:/vostro/mountpoint", cioe'il path del container e la directory target per il mount su una singola linea, separati dai due punti. Lo scritp di init Live creera' un mount pointnel caso sia mancante.
  
-== Mounting a filesystem in an encrypted container == 
  
-The script will create a file of requested size in the root of the Live partition using the 'dd' command.  The 'cryptsetup luksCreate' command will initialize the encryption, which causes the script to prompt you with "are you sure, type uppercase YES" after which an encryption passphrase must be entered three times (two for intializing, and one for opening the container). +== Utilizzare un file container per immagazzinare dati persistenti ==
-If the container is used for an encrypted /home, its filename will be "slhome.img" The script will copy the existing content of the ISO's /home into the container's filesystem which will later be mounted on top of the ISO's /home (thereby masking the existing /home). +
-The Live OS is instructed to decrypt the container and mount the filesystem.  This is done by editing the file "/luksdev" in the initrd and adding a line: "/slhome.img"+
-The iso2usb.sh script only supports creating and configuring an encrypted /home, but you can create additional encrypted containers yourself and mount them on other locations in the ISO's filesystem.  In order for this to work, you need to edit the "/luksdev" file and add a line "/your/container.img:/your/mountpoint" i.e. container path and the target mount directory on a single line, separated by a colon.  The Live init script will create the mount point if it is missing.+
  
-== Using a container file for storing persistence data ==+Esiste un secondo tipo di container cifrato, che puo' essere usato per immagazzinare i vostri dati persistenti. Lo script di init della Live controllera' se sia necessario abilitare la persistenza in questo ordine: 
 +  - il filesystem USB e' scrivibile? Se si', 
 +    - esiste una directory /persistence? Se si', usala; altrimenti, 
 +    - esiste un file /persistence.img? Se si', montalo e, nel caso sia un container cifrato, chiedi la password durante il boot.
  
-A second type of encrypted container exists, which can be used for storing your persistence data.  The Live init script will check if it needs to enable persistence in this order: +== Aggiungere il tempo di atteda all' USB ==
-  - is the USB filesystem writable?  If so, +
-    - does a directory /persistence exist? If so, use that; if not, +
-    - does a file /persistence.img exist?  If so, mount the file and if it is an encrypted container, ask for a passphrase during boot. +
- +
-== Adding USB wait time == +
- +
-For slow USB media, the default 5 seconds wait time during boot are sometimes insufficient to allow the kernel to detect the partitions on your USB device.  The script can optionally add more wait time.  It does this by editing the file "wait-for-root" in the initrd and updating the value which is stored there (by default "5" is written there by the "make_slackware_live.sh" script).+
  
 +Per media USB lenti, il tempo di attesa di default di 5 secondi durante il boot talvolta e' insufficiente per permettere al kernel di rilevare le partizioni sul vostro dispositivo USB. Lo script puo' opzionalmente aggiungere piu' tempo di attesa. Cio' viene fatto editando il file "wait-for-root" nell' initrd e aggiornando il valore che e' vi e' contenuto (di default "5" e' scritto la' dallo script "make_slackware_live.sh").
  
 === makemod === === makemod ===
  
 +Il terzo script:
  
-The third script:+Lo script "makemod" vi permette di creare un modulo Slackware Live facilmente, con un pacchetto Slackware o un albero di directory come parametro di input.
  
-The "makemod" script allows you to create a Slackware Live module easily, with a Slackware package or a directory tree as its input parameter.+Utilizzo: 
 +  # makemod <nome_pacchetto|directory> nome_modulo.sxz
  
-Usage: +  * Il primo parametro e' il percorso completo di un pacchetto Slackware, oppure una directory. 
-  # makemod <packagename|directory> modulename.sxz+    * Se il nome di un pacchetto viene passato come primo parametro, sara' installato in una directory temporanea utilizzando l' "installpkg" di Slackware. Il contenuto della directory temporanea sara' squashato in un modulo dal programma "squashfs"
 +    * Se viene passato il nome di una directory, il suo contenuto sara' squashato in un modulo dal programma "squashfs"
 +  * Il secondo parametro e' il nome del percorso completo del modulo di output che sara' creato.
  
-  * The first parameter is either the full path to a Slackware package, or else a directory. +Potete copiare il modulo che avete appena creato (tenendo mente le convenzioni sui nomi dei file per i moduli della Slackware Live, vedete il paragrafo "Formato dei moduli della Slackware Live"nella directory optional/ oppure addon/ del vostro Live OS. Se lo copiate nella directory optional/ addon/ dei sorgenti della liveslak, allora "make_slackware_live.sh" usera' il modulo quando creera' l' immagine ISO.
-    * If a packagename is supplied as first parameter, it will be installed into a temporary directory using Slackware's "installpkg". The content of the temporary directory will be squashed into a module by the "squashfs" program. +
-    * If a directoryname is supplied, its content will be squashed into a module by the "squashfs" program.. +
-  * The second parameter is the full pathname of the output module which will be created. +
- +
-You can copy the module you just created (minding the filename conventions for a Slackware Live modulesee paragraph "Slackware Live module format"to either the optional/ or to the addon/ directory of your Live OS. If you copy it to the optional/ or addon/ directory of the liveslak sources then "make_slackware_live.sh" will use the module when creating the ISO image.+
  
  
 === setup2hd === === setup2hd ===
  
 +Il quarto script:
  
-The fourth script+Lo script "setup2hd" e' un installer di Slackware modificatoin modo da farvi trovare a vostro agio con il processoLa sezione 'SOURCE' offre due tipi di sceltauna normale installazione di Slackware da rete, utilizzando un server NFS, HTTP, FTP Samba, oppure l' installazione della live che state utilzzandoLo script sa dove trovare i moduli squashfs, cosicche' la selezione "Install Live OS" non vi chidera' di inserire ulteriori inputs. 
- +  * L' installazione di rete di Slackware e' identica a quella del medium ufficiale di Slackware
-The "setup2hd" script is a modified Slackware installerso you will be comfortable with the process The 'SOURCE' section offers two types of choices a regular Slackware network installation using a NFS, HTTP, FTP or Samba serveras well as a choice of installing the Live OS which you are runningThe script knows where to find the squashfs modulesso the "Install Live OS" selection will not prompt further inputs. +  * Se scegliete di installare la Live OS, allora dopo che selezionerete la/e partizione/i oggettoogni modulo attivo della specifica variante della Live OS (SLACKWARE, KTOWN, MATE, ...) sara' estratto sul disco fisso. 
-  * The Slackware network installation is identical to that of the official Slackware installation medium. +Dopo che l' estrazione sara' completatalo script fara' il sommario di quanti moduli sono stati estrattiMostrera' inoltre un comando di esempio per estrarre ogni modulo inattivo o disabilitato rimanente a mano. 
-  * If you chose to install the Live OS, then after you select the target partition(s)every active module of the Live OS variant (SLACKWARE, KTOWN, MATE, ...) is extracted to the hard drive After extraction has completedthe script summarizes how many modules have been extracted It will also show an example command to extract any remaining inactive or disabled modules manually The final step in the installation is again the stock Slackware installer which kicks off the Slackware configuration scripts.+Lo step finale nell' installazione e' ancora l' installer stock di Slackware, il quale fara' partire gli scripts di configurazione di Slackware.
  
  
 === pxeserver === === pxeserver ===
  
 +Il quinto script:
  
-The fifth script+Lo script ''pxeserver'' funziona nel seguente modo
- +  * Ha bisogno di una rete cablatail boot PXE da wireless e' impossibile
-The ''pxeserver'' script works as follows+  * Lo script pxeserver provera' trovare un' interfaccia di rete cablatapotete esplicitamente passargli un nome di interfaccia come parametro allo script (opzionale). 
-  * It requires a wired networkwireless PXE boot is impossible+  * Se vengono rilevate interfacce di rete cablate multiple, una finestra dialog chiedera' all' utente di scegliere quella giusta
-  * The pxeserver script tries to find wired interfaceyou can pass an explicit interfacename as parameter to the script (optional). +  * Per l' interfaccia scelta verra' fatto un check della configurazione con DHCP; 
-  * If multiple wired interfaces are detecteddialog asks the user to select the right one+    * Se verra' trovata una configurazione DHCP, allora il pxeserver non attiverail suo DHCP, affidandosi invece al DHCP server della vostra rete LAN
-  * check is done for DHCP configuration of this wired interface+    * Se non verra' trovata nessuna configurazione DHCP, allora lo script vi chiedera' il permesso di avviare il suo DHCP server internoInoltre all' utente sar'a chiesto di configurare un indirizzo IP per l' interfaccia di rete e le proprieta' della classe IP per il server DHCP interno
-    * If DHCP configuration is found then pxeserver will not start its own DHCP server and instead will rely on your LAN'DHCP server. +  * Lo script a quel punto avviera' il server PXEcostituito da
-    * If no DHCP config is foundthe script will ask permission to start its own internal DHCP server.  Additionally the user will be prompted to configure an IP address for the network interface and IP range properties for the internal DHCP server. +    * dnsmasq che fornira'DNS, DHCP BOOTP; 
-  * The script will then start the PXE server, comprising of+    * demoni NFS RPC; 
-    * dnsmasq providing DNS, DHCP and BOOTP; +  * Lo script rilevera' se avete una connessione di rete in uscita su un' altra interfaccia e abilitera' l' inoltro dei pacchetti IP se necessariocosicche'clients PXE avranno anch' essi accesso alla rete
-    * NFS and RPC daemons+  * La Live OS avviata via pxelinux e' configurata con parametri di boot aggiuntivi <code>
-  * The script will detect if you have an outside network connection on another interface and will enable IP forwarding if neededso that the PXE clients will also have network access+
-  * The Live OS booted via pxelinux is configured with additional boot parameters: <code>+
 nfsroot=<server_ip_address>:/mnt/livemedia nfsroot=<server_ip_address>:/mnt/livemedia
 luksvol= luksvol=
Linea 649: Linea 643:
 locale=<server_locale> locale=<server_locale>
 kbd=<server_kbd_layout> kbd=<server_kbd_layout>
-</code> Which shows that the configuration of the Live OS where the PXE server runs is largely determining the configuration of the PXE clients. +</code> Che mostrano che la configurazone della Live OS dove il server PXE gira e' largamente determinante per la configurazione dei clients PXE
-  * Note that when networkbootingthe hostname of the Live OS will be suffixed with the machine'MAC address to make the hostname of every network-booted computer unique.+  * Notate che quando fate il boot da retel' hostname della Live OS avracome suffisso l' indirizzo MAC della macchina, in modo da rendere unico l' hostname di ogni computer che faccia il boot da rete.
  
  
Linea 656: Linea 650:
  
  
-The sixth script:+Il sesto script:
  
-The "upslak.sh" script's runtime usage is explained in detail in a previous paragraph "Updating the kernel (and moreon a USB stick".+L' utilizzo a runtime dello script "upslak.sh" espiegato nel dettaglio in un paragrafo precedente "Aggiornare il kernel (e altrosu una penna USB".
  
-This section explains how the script modifies the content of the Live USB stick.+Questa sezione spiega come lo script modifica il contenuto della penna USB Live.
  
-When the script is startedit will do some sanity checks and then extracts the content of the initrd imageSome characteristics of the initrd will be recorded+Quando lo script e' avviatofara' alcuni controlli di di integrita' e poi estrarra' il contenuto dell' immagine initrd. Alcune caratteristiche dell' initrd saranno registrate
-  * existence of previously backed-up kernel modules is checked+  * sara' verficata l' esistenza di moduli del kernel precedentemente backuppati
-  * template variables and their values are obtained from the init sctript+  * saranno recuperate le variabili dei template, coi loro valori dallo script di init, 
-  * the current USB wait time is checked+  * sara' verificato il tempo di attesa dell' USB corrente
-Depending on the parameters passed to the script, it will then perform one or more of the following actions:+A seconda dei parametri passati allo script, esso eseguira una o piu' delle seguenti azioni:
  
-== Update the kernel and moules == 
  
-You can provide a new kernel and its modules in two ways.  The '-k' option accepts a kernel image file or else a Slackware package contaning a kernel.  The '-m' option accepts a directory tree of modules below "/lib/modules/, or else a Slackware package containing kernel modules. +== Aggiornare il kernel e i moduli ==
-If there is sufficient space on the Linux and EFI partitions, the script will make a backup of the current kernel and modules by renaming the kernel and the module directory with a ".prev" suffix.  Sufficient space means that at least 10 MB of free space must remain on the partition(s) after making the backup and installing the new kernel plus modules. If space is an issue, you can skip making a backup by providing the '-b' parameter to the script (a possibly unsafe choice).+
  
-== Restore backed-up kernel and modules ==+Potete fornire un nuovo kernel e i suoi moduli in due modi. L' opzione '-k' accetta un file immagine del kernel oppure un pacchetto di Slackware contenente un kernel. L' opzione '-m' accetta un albero di directory dei moduli sotto "/lib/modules", oppure un pacchetto Slackware contenente moduli del kernel. 
 +Se c'e' sufficiente sapzione sulle partizioni Linux e EFI, lo script fara' un backup del kernel e dei moduli correnti rinominando la directory che li contiene con un suffisso ".prev"
 +Spazio sufficiente significa che devono rimanere almeno 10 MB di spazio libero sulla/e partizione/i dopo aver fatto il backup e installato il nuovo kernel piu' i moduli. Se lo spazio e' un problema, potete saltare il backup fornendo il parametro '-b' allo script (come possibile scelta insicura).
  
-If a backup was made of kernel and modules, the upslak.sh script is able to restore these using the '-r' option, thereby removing the replacements.  This comes in handy when the replacement kernel turns out to be non-functional.+== Restorare kernel e moduli backuppati ==
  
-== Add network support modules ==+Se e' stato fatto un backup del kernel e dei moduli, lo script upslak.sh e' in grado di restorarli usando l' opzione '-r', rimuovendo quindi quelli che li avevano rimpiazzati. Questo torna utile quando il kernel nuovo si rivela non funzionante.
  
-This should normally not be needed.  By default, all liveslak ISO images have network support built-in.  But customized Live ISO images may be shipped without network support initially.  If you want your Live OS to be PXE-bootable you need network support in the kernel.  Use the '-n' option.+== Aggiungere i moduli per il supporto di rete ==
  
-== Increase (or decrease) USB wait time ==+Questo noromalmente non dovrebbe servire. Di default, tutte le immagini ISO liveslak hanno il supporto per la rete integrato. Ma le immagini ISO Live customizzate possono essere fornite senza supporto inizialmente. Se volete che la vostra Live OS sia bootabile da PXE avrete bisogno il supporto della rete nel kernel. Utilizzate l' opzione '-n'.
  
-Similar to the functionality of the "iso2usb.sh" script, the "upslak.sh" script is able to alter the USB wait time at boot using the '-w' option.+== Aumentare (o diminuire) il tempo di attesa della USB ==
  
-== Replace the liveslak init script ==+Similmente alla funzionalita' dello script "iso2usb.sh", lo script "upslak.sh" e' in grado di alterare il tempo di attesa dell' USB al boot, utilizzando l' opzione '-w'.
  
-The init script inside the initrd image is the core of liveslak.  The init script prepares the Live filesystem and configures several run-time OS parameters.  If you have made modifications to this init script you can easily replace the default init script with your own script using the '-i' option.  The "upslak.sh" script is smart enough to recognize a iveslak template as input.  The ".tpl" extension of some liveslak files means that these are templates.  They are not usable as-is, because they contain placeholder strings like "@VERSION@" or "@DISTRO@" that first need to be replaced with real values.  The "upslak.sh" script will take care of these substitutions.+== Rimpiazzare lo script di init della liveslak ==
  
-== Wrap persistence data into new squashfs module ==+Lo script di init dentro l' immagine initrd e' il nucleo della liveslak. Quello script di init prepara il filesystem della Live e configura diversi paramentri del runtime dell' OS. Se avete fatto delle modifiche questo script di init potete facilmente rimpiazzare l' init script di default con il vostro, utilizzando l' opzione '-i'. Lo script "upslak.sh" e' abbastanza smart da riconoscere un template liveslak come input. L' estensione ".tpl" di alcuni file della liveslak significa che questi sono templates. Non sono utilizzabili cosi' come sono, perche' contengono delle stringhe segnaposto come "@VERSION@" o "@DISTRO@" che necessitano prima di essere espanse con valori reali. Lo script "upslack.sh" si prendera' cura di queste sostituzioni.
  
-Persistence data will accumulate over time on the USB stick.  That is perfectly OK, and you can wipe it on boot if that is needed.  But sometimes you want to capture the packages you installed into the persistent storage, and create a new squashfs module out of them.  The "upslak.sh" script is able to move your persistence data into a new squashfs module using the '-p' option.  The new module will be created in the "/liveslak/addons/" directory so that it will be loaded into the Live OS everytime your USB Live boots up.  After creating the new module, the persistence store will be re-initialized (i.e. its content will be erased on the next boot).  The new module's name is time-stamped (/liveslak/addons/0099-slackware_customchanges-yyyymmddHHMMSS.sxz where yyyymmddHHMMSS is the timestamp) so that this action can be repeated as many times as you want.+== Contenere i dati persistenti in un nuovo modulo squashfs ==
  
 +I dati persistenti si accumuleranno lungo il tempo sulla penna USB. Questo e' perfettamente normale, e potete cancellarli al boot se volete. Ma talvolta potreste voler prendere i pacchetti installati nello storage persistente e creare da essi un nuovo modulo squashfs. Lo script "upslak.sh" e' in grado di di spostare i vostri dati persistenti in un nuovo modulo squashfs, usando l' opzione '-p'. Il nuovo modulo sara' creato nella directory "/liveslak/addons/", cosicche' esso sara' caricato nella Live OS ogni volta che la Live USB si avviera'. Dopo la creazione del nuovo modulo, lo storage di persistenza sara' reinizializzato (cioe' il suo contenuto sara' cancellato al successivo boot). Il nome del nuovo modulo avra' un timestamp (/liveslak/addons/0099-slackware_customchanges-yyyymmddHHMMSS.sxz dove yyyymmddHHMMSS e' il timestamp) cosicche' questa azione possa essere ripetuta tutte le volte che volete.
  
-==== Creating a Live ISO from scratch ====+==== Creare una ISO Live da zero ====
  
 +Creare un' immagine ISO di Slackware Live Edition richiede che voi stiate usando Slackware 14.2 o piu' recenti (64-bit). Le release piu' vecchie di Slackware hanno un kernel che e' troppo vecchio per supportare l' uso che la liveslak fa della funzionalita' del kernel "overlayfs", ed e' mancante dei tools per lo squashfs. Allo stesso modo, una Slackware Live Edition puo' essere creata solamente da una Slackware 14.2 o piu' recenti.
  
-Creating an ISO image of Slackware Live Edition requires that you are running Slackware 14.2 or newer (64-bit).  Older releases of Slackware have a kernel that is too old to support liveslak's use of the "overlayfs" kernel functionality, and are lacking the squashfs tools.  Likewise, Slackware Live Edition can only be created for Slackware 14.2 or newer.+Avrete anche bisogno della collezione di script "liveslak" che puoessere scaricata da un qualsiasi [[#liveslak_sources|link in fondo questa pagina]].
  
-You also need the "liveslakscript collection which can be downloaded from any of the [[#liveslak_sources|links at the bottom of this page]].+Liveslak e' un albero di directory che contiene gli scripts, i bitmaps e i file di configurazione. Solamente 6 scripts sono pensati per essere lanciati da voi, gli utenti. Questi scripts ("make_slackware_live.sh", "iso2usb.sh", "makemod", "setup2hd", "pxeserver" e "upslak.sh") sono spiegati in maggior dettaglio nella sezione "[[#scripts_and_tools|Scripts e tools]]" qui sopra. Quando si crea una ISO Live da zero, avrete bisogno solo di lanciare lo script "make_slackware_live.sh".
  
-Liveslak is a directory tree containing scripts, bitmaps and configuration files.  Only 6 scripts are meant to be run by you, the user.  These scripts ("make_slackware_live.sh", "iso2usb.sh", "makemod", "setup2hd", "pxeserver" and "upslak.sh") are explained in more detail in the section "[[#scripts_and_tools|Scripts and tools]]" higher up.  When creating a Live ISO from scratch, you only need to run the "make_slackware_live.sh" script.+=== Layout dei sorgenti della Liveslak ===
  
 +La radice della directory 'liveslak' contiene le seguenti sottodirectory:
 +  * EFI/ - contiene la struttura per il suppoorto al boot sui computers UEFI. Alcune dei file di configurazione UEFI sono dinamicamente generati dallo script "make_slackware_live.sh".
 +  * README.txt - documentazione.
 +  * addons/ - i moduli messi in questa directory saranno caricati nel filesystem Live al boot dell' OS.
 +  * contrib/ - script aggiuntivi che non sono usati direttamente per la creazione e l' uso della ISO Live.
 +  * graphics/ - i moduli squashfs per il supporto di GPU propirietarie (Nvidia) possono essere messi qui. I moduli saranno copiati nella directory addons/ dallo script "make_slackware_live.sh" per ogni ambiente Desktop Live (eccetto il puro Slackware) che possa beneficiare dal supporto driver proprietario.
 +  * local64/ , local/ - queste directory possono contenere pacchetti Slackware considerati 'locali', cioe' non appartenenti a nessun repository. I pacchetti saranno convertiti in moduli squashfs dallo script "make_slackware_live.sh", copiati nella subdirectory "addons/" nella ISO e caricati nel filesystem Live quando l' OS fa il boot.
 +  * media/ - scripts e immagini che sono specifiche di una variante Live.
 +  * optional/ - moduli squashfs messi in questa directory non saranno caricati automaticamente nel filesystem Live quando l' OS fa il boot. Dovrete passare il parametro di boot "load=[mod]" per caricare uno di questi.
 +  * patches/ - patches per gli scripts di Slackware che necessitano di essere modificati per essere lanciati in un OS Live.
 +  * pkglists/ - files di definizione dei repository di terze parti (*.conf) e la lista dei pacchetti usata da questi repository (*.lst) va messa in questa directory.
 +  * setup2hd/ - templates degli script usati dall' installatore su disco ''setup2hd''.
 +  * skel/ - contiene i tarball compressi (i cui nomi dei files devono matchare la wildcard "skel*.txz"). Questi files saranno estratti nella directory "/etc/skel" nel filesystem Live.
 +  * syslinux/ - contiene la struttura per il supporto al boot sui conputer con BIOS. Alcuni dei suoi files sono generati dinamicamente dallo script "make_slackware_live.sh".
 +  * xdm/ - tema grafico Slackware per il gestore delle sessioni grafiche XDM per quelle varianti ISO che non hanno GDM, KDM o SDDM.
  
-=== Liveslak sources layout ===+La radice della directory 'liveslak' contiene i seguenti files: 
 +  * blueSW-128px.png , blueSW-64px.png - questi sono i bitmaps del logo "Blue S" di Slackware, usato per l' icona dello user "live" e nel tema di XDM. 
 +  * grub.tpl - il template file che e' usato per generare il menu grub per il boot UEFI. 
 +  * iso2usb.sh - questo script crea una versione USB bootabile con persistenza da una ISO Live Slackware 
 +  * languages - questo file contiene le configurazioni di input per il supporto linguistico. Una lingua per riga contiene i seguenti campi: "code:name:kbd:tz:locale:xkb". Esempio: "nl:nederlands:nl:Europe/Amsterdam:nl_NL.utf8:" 
 +    * code 2 - lettera codice della lingua 
 +    * name nome descrittivo della lingua 
 +    * kbd nome dalla mappatura della tastiera della console per la lingua 
 +    * tz fuso orario per il paese nativo della lingua 
 +    * locale il locale usato nel paese 
 +    * xkb customizzazione opzionale della tastiera per X per il linguaggio
  
 +################################## DA QUI ##########################################
  
-The toplevel 'liveslak' directory contains the following subdirectories: 
-  * EFI/ - contains the skeleton for boot support on UEFI computers.  Some of the UEFI configuration files are dynamically generated by the "make_slackware_live.sh" script. 
-  * README.txt - this documentation. 
-  * addons/ - squashfs modules placed in this directory will be loaded into the Live filesystem when the OS boots. 
-  * contrib/ - contributed scripts that are not used directly for the creation and usage of a Live ISO. 
-  * graphics/ - squashfs modules for proprietary GPU support (Nvidia) can be placed here. The module(s) will be copied to addons/ by the "make_slackware_live.sh" script for any Live Desktop Environment (except pure Slackware) that might profit from proprietary driver support. 
-  * local64/ , local/ - these directories can contain Slackware packages considered 'local' i.e. not belonging to any repository.  The package(s) will be converted to squashfs module(s) by the "make_slackware_live.sh" script, copied to the "addons/" subdirectory in the ISO and loaded into the Live filesystem when the OS boots. 
-  * media/ - scripts and images that are specific to a Live variant. 
-  * optional/ - squashfs modules placed in this directory will not automatically be loaded into the Live filesystem when the OS boots.  You need to pass "load=[mod]" boot parameter to load any of these. 
-  * patches/ - patches for Slackware scripts that need modifications to run inside a Live OS. 
-  * pkglists/ - definition files of 3rd party repositories (*.conf) and the package lists to be used from those repositories (*.lst) must be placed in this directory. 
-  * setup2hd/ - script templates used by the ''setup2hd'' disk installer. 
-  * skel/ - contains compressed tarballs (whose filenames must match wildcard "skel*.txz"). These files will be extracted to the "/etc/skel" directory in the Live filesystem. 
-  * syslinux/  - contains the skeleton for boot support on BIOS computers.  Some of its files are dynamically generated by the "make_slackware_live.sh" script. 
-  * xdm/ - graphical Slackware theme for the XDM graphical session manager for those ISO variants which do not ship with GDM, KDM or SDDM. 
  
 The toplevel 'liveslak' directory contains the following files: The toplevel 'liveslak' directory contains the following files:
 it:slackware:liveslak ()