Boot da disco/pendrive USB su Slax 6 con ext3


Spesso per il boot di Linux da pendrive o da disco USB esterno si ricorre a partizioni Fat32 che abbiano distribuzioni compresse in uno o più files, spesso con squashfs. In questo test le cose sono leggermente diverse sia per l’uso di una piccola distribuzione che di solito si copia su Fat 32 e si usa come LiveUSB e sia per il fatto di usare Ubuntu e Slax insieme🙂

Mi sembrava corretto tentare l’approccio di una distro che facesse il boot da filesystem ext3, anche se ci sono diversi modi per farlo. Tutta l’operazione è stata effettuata da Ubuntu con i pacchetti necessari, usando un disco esterno USB da 40 GB, ma la stessa cosa è applicabile a una pendrive da pochi Euro.

Il vantaggio di di questa distribuzione è che è personalizzabile con decine di moduli e il fatto di averla su un supporto esterno la posiziona ai primi posti dei “coltellini svizzeri” . Il test è eseguito sulla Slax RC3, considerata quasi una release definitiva.

Come già trattato nei post precedenti, partendo dall’immagine ISO prelevabile dal sito Ftp della Slax viene copiato il contenuto delle due directory /boot e /slax nella root. In aggiunta per facilitare il boot con extlinux, gli stessi files di /boot vanno copiati nella radice del disco (/).


Ecco Il dettaglio della partizione sul disco da 40GB:

$ sudo fdisk /dev/sdb

The number of cylinders for this disk is set to 38154.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Comando (m per richiamare la guida): p

Disk /dev/sdb: 40.0 GB, 40007761920 bytes
64 heads, 32 sectors/track, 38154 cylinders
Units = cilindri of 2048 * 512 = 1048576 bytes

Dispositivo Boot Start End Blocks Id System

Comando (m per richiamare la guida): n
Azione comando
e estesa
p partizione primaria (1-4)
p
Numero della partizione (1-4): 1
Primo cilindro (1-38154, default 1): 1
Ultimo cilindro o +size o +sizeM o +sizeK (1-38154, default 38154): +1G

Comando (m per richiamare la guida): t
Selected partition 1
Codice esadecimale (digitare L per elencare i codici): 82
Modificato il tipo di sistema della partizione 1 in 82 (Linux swap / Solaris)

Comando (m per richiamare la guida): n
Azione comando
e estesa
p partizione primaria (1-4)
p
Numero della partizione (1-4): 2
Primo cilindro (956-38154, default 956):
Using default value 956
Ultimo cilindro o +size o +sizeM o +sizeK (956-38154, default 38154):
Using default value 38154

Comando (m per richiamare la guida): a
Numero della partizione (1-4): 2

Comando (m per richiamare la guida): p

Disk /dev/sdb: 40.0 GB, 40007761920 bytes
64 heads, 32 sectors/track, 38154 cylinders
Units = cilindri of 2048 * 512 = 1048576 bytes

Dispositivo Boot Start End Blocks Id System
/dev/sdb1 1 955 977904 82 Linux swap / Solaris
/dev/sdb2 * 956 38154 38091776 83 Linux

Comando (m per richiamare la guida): w
La tabella delle partizioni è stata alterata!

Chiamata di ioctl() per rileggere la tabella delle partizioni.
Sincronizzazione dei dischi in corso.

$ sudo mkswap /dev/sdb1 977904
Setting up swapspace version 1, size = 1001369 kB
no label, UUID=8c618a21-743d-4d79-b06e-00f57e303a29

$ sudo mke2fs -L EXT3 -j /dev/sdb2
mke2fs 1.40-WIP (14-Nov-2006)
Etichetta del filesystem=EXT3
Tipo SO: Linux
Dimensione blocco=4096 (log=2)
Dimensione frammento=4096 (log=2)
4767744 inode, 9522944 blocchi
476147 blocchi (5.00%) riservati per l'utente root
Primo blocco dati=0
Maximum filesystem blocks=0
291 gruppi di blocchi
32768 blocchi per gruppo, 32768 frammenti per gruppo
16384 inode per gruppo
Backup del superblocco salvati nei blocchi:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624

Scrittura delle tavole degli inode: fatto
Creazione del journal (32768 blocchi): fatto
Scrittura delle informazioni dei superblocchi e dell'accounting del filesystem: fatto

Questo filesystem verrà automaticamente controllato ogni 37 mount, o
180 giorni, a seconda di quale venga prima. Usare tune2fs -c o -i per cambiare.

Qui toglieremo e rimettiamo il disco, per renderlo visibile in /media/EXT3, e per renderlo bootabile, visto il tipo di filesystem, useremo extlinux, facente parte del pacchetto syslinux

$ sudo extlinux /media/EXT3/
/media/EXT3/ is device /dev/sdb2

A questo punto creiamo un file extlinux.conf e copiamolo nella root del disco

PROMPT 0
TIMEOUT 600
DEFAULT vesamenu.c32

LABEL slax
MENU LABEL Slax Console mode
KERNEL vmlinuz
APPEND vga=769 initrd=initrd.gz ramdisk_size=6666 root=/dev/ram0 changes=slax/slaxsave.dat rw

LABEL normal
MENU LABEL Slax Normal mode
KERNEL vmlinuz
APPEND vga=normal initrd=initrd.gz ramdisk_size=6666 root=/dev/ram0 changes=slax/slaxsave.dat rw

LABEL xconf
MENU LABEL Slax Graphics mode (KDE)
KERNEL vmlinuz
APPEND vga=769 initrd=initrd.gz ramdisk_size=6666 root=/dev/ram0 rw changes=slax/slaxsave.dat autoexec=xconf;kdm

LABEL copy2ram
MENU LABEL Slax Graphics mode using Copy To RAM
KERNEL vmlinuz
APPEND vga=769 initrd=initrd.gz ramdisk_size=6666 root=/dev/ram0 rw changes=slax/slaxsave.dat copy2ram autoexec=xconf;kdm

LABEL startx
MENU LABEL Slax Graphics VESA mode (1024x768)
KERNEL vmlinuz
APPEND vga=769 initrd=initrd.gz ramdisk_size=6666 root=/dev/ram0 rw changes=slax/slaxsave.dat autoexec=kdm

LABEL memtest86
MENU LABEL Run Memtest utility
KERNEL mt86p

per salvare le modifiche si ricorre a un file slaxsave.dat estratto dal file slaxsave.zip presente nella dir /slax

$ cd /media/EXT3/slax
$ sudo unzip slaxsave.zip save512.zip
$ sudo unzip save512.zip

Se non vogliamo aspettare il riavvio, un primo test si può fare se abbiamo installato qemu, usando:
$ qemu -std-vga -no-kqemu -usb /dev/sdb2

Ma la vera potenza salta fuori, facendo il boot “vero”, sfruttando per esempio l’opzione copy2ram per far volare Slax😉


Info Antonio Doldo
www.toolinux.it - www.virtualboxes.org - adoldo.wordpress.com - Linux user & Android fan

3 Responses to Boot da disco/pendrive USB su Slax 6 con ext3

  1. Pingback: Top Posts « WordPress.com

  2. free penguin scrive:

    Ciao volevo informarvi che Free Penguin è diventato http://www.freepenguin.it e quindi magari potreste modificare il link presente nel sito!

    Grazie 1000

    Free Penguin

  3. Antonio Doldo scrive:

    @free penguin
    OK, aggiorno il blogroll…
    free penguin, free world, free life, free, freeeeee…….

Lascia un commento

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: