Old:Damn Small Linux su chiavetta usb
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.
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) | Debianized 20% |
Estesa da:
| |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |