Old:Damn Small Linux su chiavetta usb

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Introduzione

Se state leggendo questa guida penso conosciate già la mitica distribuzione live Damn Small Linux che in soli 50 MB vanta un sistema Linux e un corredo software davvero impressionante. Damn Small Linux, o DSL come la chiameremo di seguito, è una derivata di Debian ristretta fino all'osso al fine di non superare il limite di 50 MB, tuttavia è facilmente espandibile tramite le extensions che permettono di trasformare DSL in un sistema Debian-like completo.

In questa guida vedremo come fare avviare Damn Small Linux direttamente da chiavetta USB, senza bisogno di masterizzare un cd.

Usando una chiavetta avremo il vantaggio di poter salvare le nostre impostazioni e/o aggiungere altro software nella chiavetta stessa, ottenendo così un sistema live (basta inserire la chiavetta in qualsiasi PC che supporta il boot da dispositivi USB) estremamente compatto e soprattutto modificabile al volo (cosa impossibile con un normale cd). Inoltre sia la compattezza della distribuzione che la velocità dei dispositivi USB2 permettono di ottenere prestazioni superiori ad un normale livecd. È addirittura possibile caricare l'intero sistema in RAM (basta passare l'opzione toram al boot), con conseguente apertura fulminea di qualsiasi applicazione ;-).

L'unico prerequisito è che la scheda madre supporti il boot da periferica USB (molti produttori stanno rendendo disponibile questa funzionalità attraverso nuovo firmware BIOS). Ed una chiavetta USB di almeno 50 MB, naturalmente ;-).

Se la vostra scheda madre non supporta il boot da periferiche USB, dovrete preparare un floppy od un cd per il boot. Questo argomento non è trattato nella guida.

Software necessario

Per poter eseguire le seguenti operazioni bisogna aver installato i pacchetti dosfstool e mtools e syslinux.

# apt-get install dosfstools mtools syslinux

Formattazione della chiavetta

Se la vostra chiavetta contiene già una partizione e un filesystem fat16 (o fat32) non dovremo formattarla e potremo anche lasciare gli altri eventuali file presenti che non daranno fastidio.

Se invece dovete formattare la chiavetta, consiglio di creare un unica partizione avviabile con cfdisk e creare un filesystem fat16 con mkfs.vfat:

# mkfs.vfat -n nome -F 16 /dev/sda1

Copia dei file e preparazione della chiavetta

Scarichiamo la iso di DSL (usate la versione normale, non la syslinux, embedded ecc.).

Eseguiamo le seguenti operazioni di semplice copia e rinominazione di file:

 # mkdir dsl_temp
 # mkdir dsl_usb
 # mount -o loop current.iso dsl_temp
 # cp -a dsl_temp/* dsl_usb
 # cd dsl_usb
 # mv boot/isolinux/* ./
 # rm -Rf boot
 # mv isolinux.bin syslinux.bin
 # mv isolinux.cfg syslinux.cfg
 # cd ..
 # mkdir usb_pen
 # mount -t vfat /dev/sda1 usb_pen
 # cp -a dsl_usb/* usb_pen
 # umount usb_pen

Ora prepariamo il MBR della chiavetta con:

 # syslinux /dev/sda1

Alcune chiavette o meglio alcuni BIOS associati ad alcune chiavette non sono in grado di avviare da sda1, è necessario correggere il MBR della chiavetta. A questo scopo eseguire:

# dd if=/usr/lib/syslinux/mbr.bin of=/dev/sda

In alternativa è possibile usare direttamente il disco senza effettuare partizionamenti, eseguendo tutte le operazioni precedenti sul device sda, senza specificare la partizione. Questo però non consente di usare il disco solo parzialmente.

Naturalmente fate sempre attenzione ad usare il device corretto.

Boot di DSL

A questo punto non ci resta che sezionare il boot tramite dispositivo USB ed avviare il PC.

Per avviare il sistema in lingua italiana digitare:

 dsl lang=it

(il segno di uguale si fa con il tasto 'ì' della tastiera italiana)

E in pochi secondi dovrebbe caricarsi il sistema DSL.

Warning.png ATTENZIONE
Se non riuscite a fare il boot dalla chiavetta (cioè non appare neanche il logo iniziale di DSL) neanche sostituendo il MBR e avendo formattato la chiavetta seguendo le precedenti istruzioni. Allora per qualche strano motivo la chiavetta non è compatibile con questo procedimento, infatti, alcune chiavette non sono in grado di fare il boot del sistema :-(. Ne posseggo una che si permette addirittura di bloccare il sistema. Purtroppo, in questi casi, non conosco altre soluzioni se non cambiare chiavetta.


Configurazione di DSL

DSL è stato concepito come livecd, quindi monta il dispositivo da cui effettua il boot in /cdrom. Quindi anche nel nostro caso la chiavetta /dev/sda1 sarà montata in /cdrom, e sarà non scrivibile. Rimontiamola in lettura-scrittura:

$ su  
# mount -o remount,rw /cdrom

Per far sì che all'avvio di DSL la chiavetta venga montata automaticamente in rw basta agguiungere a /opt/bootlocal.sh il precedente comando di mount. Quindi non ci resta che salvare le impostazioni aprendo il pannello di controllo di DSL (sul Desktop) e selezionando in "Backup/Restore" sda1 (senza /dev/ !) come dispositivo di backup.

Potremo anche aggiungere a /opt/bootlocal.sh il comando per caricare la tastiera italiana:

 loadkeys it

in tal modo non dovremo più passare al boot il parametro lang=it.

Il bello è che anche se si scarica nuovo software (tramite ad esempio le extensions di DSL) e si salva nella home, poiché viene di default fatto un backup di tutta la home, ai successivi riavvi avremo il software già disponibile senza doverlo riscaricare.

Ora, normalmente, quando si effettua un backup delle impostazioni di DSL è necessario usare al boot l'opzione restore=sda1. Tuttavia nel nostro caso anche questo è superfluo perché DSL cerca automaticamente un eventuale backup nello stesso dispositivo dal quale parte. Quindi all'avvio non dovremo far altro che premere [INVIO] e DSL caricherà le nostre impostazioni, tastiera italiana, e software aggiuntivo compresi ;-).

In tal modo è possibile crearsi in pochi minuti una versione personalizzata di DSL da portarsi sempre dietro in una chiavetta assieme ai propri dati ;-).

Se iniziate ad usare DSL una lettura alle FAQ è d'obbligo (dove troverete queste ed altre informazioni).

Happy Hacking !

Links




Guida scritta da: TheNoise 05:14, Gen 8, 2006 (EST) Swirl-auth20.png Debianized 20%
Estesa da:
fw_crocodile (Aggiunta correzione MBR per alcune chiavette non funzionanti)
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized