Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 10 del 08/05/2007 13.31.34

Nascondi questo messaggio

ATTENZIONE! BR BR Revisione in corso

BR

Introduzione

È possibile installare Ubuntu su una periferica USB (pen drive, hard disk esterno etc) in modalità persistente. Ciò significa che sarà possibile avviare il sistema da tale periferica mantenendo le personalizzazioni come il layout della tastiera, le preferenze e i pacchetti installati. Occorre un dispositivo USB da almeno 1 Giga. Questa pagina è la traduzione adattata di una pagina del wiki internazionale https://wiki.ubuntu.com/LiveUsbPendrivePersistent e riguarda Ubuntu. Le parti relative a Kubuntu sono indicate.

Preparazione del dispositivo

Partizioni

In questa guida viene usato fdisk, ma si possono usare anche gparted o qtparted.

Immagine(Icone/Piccole/note.png,30,left)BRL'autore della guida originale segnala di aver avuto dei problemi usando gparted.Collegare il dispositivo e verificare il nome assegnato alla periferica, in un terminale digitare:

sudo fdisk -l

Supporremo che il nome della periferica sia /dev/sda1, ma occorre utilizzare il nome trovato con il comando precedente. Controllare bene!

Ora creeremo 2 partizioni: una da 700MB (alcuni ritengono necessari 750MB) con un filesystem fat32 ed una con il resto dello spazio disponibile e filesystem ext2. La prima partizione dovrà essere resa attiva.

Aprire un terminale e digitare questo comando per smontare la periferica:

sudo umount /dev/sda1

Eseguire fdisk sul dispositivo:

sudo fdisk /dev/sda

Quest'ultimo comando darà il prompt di fdisk. Controllate cosa avete salvato sul dispositivo ed eventualmente eseguite un backup dei dati. 'p' scriverà sullo schermo il contenuto di /dev/sda. Se avete già delle partizioni, rimuovetele ('d', 'numero partizione').

Creiamo la partizione 1: "n" per nuova partizione, "p" per renderla primaria, "1" per assegnarle il numero 1, quindi basta premere invio per accettare il cilindro di partenza proposto, "+700M" per una partizione da 700MB. Quindi "a" per rendere la partizione attiva. Per assegnare il filesystem FAT: "t", poi "1", poi "6".

Creiamo la seconda partizione: "p" per una partizione primaria, "2" per assegnarle il numero 2, invio per accettare il cilindro di partenza proposto, invio per accettare il cilindro di fine proposto. Uscire e salvare con "w".

Controlliamo i risultati digitando in un terminale questo comando:

 sudo fdisk -l

Dovrebbe mostrare due partizioni con la prima contrassegnata da un asterisco poiché attiva.

Molti dispositivi Usb non possiedono un master boot record. Si può ovviare al problema installandolo con il comando install-mbr:

sudo apt-get install mbr
sudo install-mbr /dev/sdX

dove /dev/sdX rappresenta il dispositivo in questione.

Se Ubuntu monta le partizioni, occorre smontarle di nuovo:

sudo umount /dev/sda1
sudo umount /dev/sda2

Formattare le partizioni

Le partizioni saranno formattate dando il nome edgy alla prima (o un nome a piacere) e casper-rw alla seconda (questo nome invece è OBBLIGATORIO e va dato tutto in minuscolo), digitare in un terminale:

sudo mkfs.vfat -F 32 -n edgy /dev/sda1
sudo mkfs.ext2 -b 4096 -L casper-rw /dev/sda2

Montate le partizioni, estraendo e reinserendo il dispositivo. Ubuntu dovrebbe montare automaticamente, altrimenti verificare le impostazioni in «Sistema --> Preferenze --> Unità e supporti removibili» oppure montare a mano:

sudo mount /dev/sda1 /media/unpuntodimount1
sudo mount /dev/sda2 /media/unpuntodimount2

Installare Edgy sul dispositivo USB

Utilizzare il CD di installazione o l'immagine iso scaricata. Nel secondo caso l'immagine iso va montata nel modo seguente:

mkdir ubuntuCD
sudo mount ubuntu-6.10-desktop-i386.iso ubuntuCD -o loop

Inserire il CD o aprire la cartella ubuntuCD ed assicurarsi di visualizzare i files nascosti (in Nautilus premere «CTRL+H»)

Copiare i seguenti file e cartelle nella prima partizione del dispositivo USB:

Cartelle : casper, disctree, dists, install, pics, pool, preseed, .disk

File : tutti quelli della cartella isolinux, md5sum.txt, README.diskdefines, ubuntu.ico

Quindi la cartella isolinux non va copiata sul dispositivo, ma il suo contenuto va copiato direttamente nella root della prima partizione del dispositivo.

Copiare casper/vmlinuz, casper/initrd.gz, install/mt86plus. Quindi avremo questi file due volte sul dispositivo: una volta nella root della partizione ed una seconda volta nella cartella casper o install.

Rinominare il file isolinux.cfg in syslinux.cfg:

Immagine(Icone/Piccole/warning.png,,left)BRAttenzione: utilizzare i percorsi corretti, quelli che seguono sono solo di esempioBRBR

cd ubuntuCD
cp -rf casper /media/edgy
cp -rf disctree /media/edgy
cp -rf dists /media/edgy
cp -rf install /media/edgy
cp -rf pics /media/edgy
cp -rf pool /media/edgy
cp -rf preseed /media/edgy
cp -rf .disk /media/edgy
cp isolinux/* /media/edgy
cp md5sum.txt /media/edgy
cp README.diskdefines /media/edgy
cp ubuntu.ico /media/edgy
cp casper/vmlinuz /media/edgy
cp casper/initrd.gz /media/edgy
cp install/mt86plus /media/edgy
cd /media/edgy
mv isolinux.cfg syslinux.cfg

Non è necessario copiare le cartelle che sono link simbolici (/dists/stable, /dists/unstable, /ubuntu).

Rendere il dispositivo bootabile

Va installato il bootloader syslinux. Tale bootloader ha bisogno di un file di configurazione che è syslinux.cfg. Questo è il file che abbiamo appena ottenuto rinominando isolinux.cfg da installCD. Tuttavia occorre modificare tale file. Aprire syslinux.cfg dal dispositivo con l'[:EditorDiTesto:editor di testo] preferito, ad esempio:

gedit syslinux.cfg

Modificare il contenuto fino ad ottenere quanto segue:

DEFAULT custom
GFXBOOT bootlogo
APPEND   preseed/file=preseed/ubuntu.seed boot=casper initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash locale=it_IT bootkbd=it console-setup/layoutcode=it console-setup/variantcode=nodeadkeys --
LABEL custom
  menu label ^Avvia Ubuntu in modo persistente
  kernel vmlinuz
  append  preseed/file=preseed/ubuntu.seed boot=casper persistent initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash --
LABEL live
  menu label ^Avvia o installa Ubuntu
  kernel vmlinuz
  append  preseed/file=preseed/ubuntu.seed boot=casper initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash --
LABEL xforcevesa
  menu label Avvia Ubuntu in modo safe ^graphics
  kernel vmlinuz
  append  preseed/file=preseed/ubuntu.seed boot=casper xforcevesa initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash --
LABEL check
  menu label ^Controlla errori su CD
  kernel vmlinuz
  append  boot=casper integrity-check initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash --
LABEL memtest
  menu label ^Test della memoria
  kernel mt86plus
  append -
LABEL hd
  menu label ^Boot from first hard disk
  localboot 0x80
  append -
DISPLAY isolinux.txt
TIMEOUT 300
PROMPT 1
F1 f1.txt
F2 f2.txt
F3 f3.txt
F4 f4.txt
F5 f5.txt
F6 f6.txt
F7 f7.txt
F8 f8.txt
F9 f9.txt
F0 f10.txt

La voce del menù chiamata Custom è la predefinita, in modo che si possa semplicemente premere invio per avere la propria sessione personalizzata.

La differenza essenziale è che i kernel e gli initrd sono stati spostati nella cartella casper, quindi casper/initrd.gz è diventato initrd.gz e similmente vmlinuz.

Si può anche copiare e incollare il testo sopra creando un nuovo file syslinux.cfg. Differenze Kubuntu: editor kwrite invece di gedit; sostituire preseed/ltsp.seed con preseed/kubuntu.seed.

L'ultima cosa da fare è installare il bootloader. Controllare di avere i pacchetti syslinux e mtools installati, altrimenti installarli usando [:SynapticHowto:synaptic] oppure [:Apt:apt-get].

Prima è necessario smontare il dispositivo:

cd ~
sudo umount /dev/sda1

Il comando seguente installerà il bootloader. Attenzione verificare bene il nome della periferica, se si hanno dei dischi SATA si rischia di sovrascrivere il bootloader su hard disk!

syslinux /dev/sda1

alcuni utenti riferiscono di aver avuto successo solo usando il flag -f (syslinux -f /dev/sda1) -bernstein

Se si ottiene l'errore:

sh: mcopy: command not found
syslinux: failed to create ldlinux.sys

allora si è dimenticato di installare il pacchetto mtools.

Riavviare sul dispositivo, cambiare qualche impostazione, riavviare di nuovo e verificare che le modifiche siano mantenute.

Non dimenticare di verificare che il computer usato abbia il boot da USB abilitato (controllare le impostazioni del BIOS).

Problemi noti

A causa di un [https://bugs.launchpad.net/ubuntu/+source/casper/+bug/84591 bug] nella gestione della persistenza di Ubuntu 7.04 Feisty Fawn la procedura sembra non funzionare con tale versione del sistema operativo.