Old:Damn Small Linux su chiavetta usb

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 estensions 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 bruciare un cd.

Usando una chiavetta avremo il vantaggio di poter salvare le nostre impostazioni e/o aggiungere altro software nella chiavetta stessa, ottendendo 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. E' 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, of course ;-).

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

Se non avete l'ultimo comando (syslinux) potete installarlo tramite APT oppure tramite gli usuali strumenti forniti dalla vostra distribuzione.

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.

  ATTENZIONE
Se non riuscite a fare il boot dalla chiavetta (cioè non appare neanche il logo iniziale di DSL) provate a formattare la chiavetta seguendo le precedenti istruzioni. Nel caso non riusciste ancora a fare il boot la vostra chiavetta non è compatibile con questo procedimento. Per qualche strano motivo, infatti, alcune chiavette non sono in grado di fare il boot del sistema :-(. Purtroppo, in questi casi, non consco 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 si che all'avvio di DSL la chiavetta venga montata automaticamente in rw basta agguingere 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 paramentro lang=it.

Il bello è anche che 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 prorpi dati ;-).

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

Happy Hacking !

Links



Autore: ~ The Noise 05:14, Gen 8, 2006 (EST)