Home > Centos, Debian, Linux, Ubuntu > MultiCd per creare CD e DVD Multiboot in Linux

MultiCd per creare CD e DVD Multiboot in Linux

Riprendo un precedente post Creare un DVD, un CD o una chiave USB Multiboot  relativo a MultiCD un interessante script per  generare DVD e CD con una molteplicità di distribuzioni e utility da avviare direttamente grazie ad un comodo menu. Il vantaggio offerto da questo script non è da poco considerato che :  esistono molte distribuzioni linux  ottimizzate per compiti specifici o specializzate in ambiti particolari, vengono rilasciate con frequenza aggiornamenti di una distribuzione,  esistono diversi utili  tools avviabili da cd vedi antivirus, boot manager, etc.

multicd menu

multicd menu

Lo script Multicd  ( http://multicd.tuxfamily.org/ ), licenza MIT, come si legge nei sito dedicato ha i seguenti vantaggi:

  • Non è necessario avere un CD o DVD per ogni singola distribuzione ma spazio permettendo si possono appunto avere molte iso avviabili in un unico supporto 
  • Se le ISO sono già disponibili non è necessario riscaricarle. Lo script infatti è grado di scaricare
  • Al rilascio di una nuova versione di una distribuzione è sufficiente scaricare la nuova ISO e rilanciare lo scrpt per generare una nuova immagine muultiboot.
  • Aggiungo che grazie:
    • all’opzione -t o con qemu-kvm è possibile testate il multicd e tutte le iso installate prima del burning
    • a dd è posossibile trasferire la iso multiboot in una penna usb

Svantaggi:

  • Lo script opera con tante distribuzioni e utilities ma non con tutte. L’elenco è disponibile al seguente indirizzo MultiCD: Supported Distros.

Di seguito vengono presentati due possibili modi di utilizzo di multicd uno più semplice e uno po’ più articolato definito per differenziare “avanzato” ( nell’utilizzo avanzato indicato anche l’inserimento di utili tools live che può far comdo avere in un dvd in caso di emergenza) :

  • utilizzo base
  • utilizzo “avanzato”

L’approccio personlizzato fa ricorso intensivo a links simbolici per  contenere l’occupazione di spazio su disco, per consententire di inserire più versioni della stessa distro su DVD e per modificare il menu di avvio del multicd-dvd

Uso base di MultiCD

Avvertenza  qualora si intendano realizzare multiboot DVD consdierare che potrebbero anche occupare temporaneamente i 15GB di spazio disco.
Nel utilizzo di multicd in modo base creare una cartella ad hoc. Scaricare  e copiare lo script multicd nella cartella. Quindi copiare o generare un link simbolico alle distro e ai tools e lanciare lo script multicd.sh  Scaricare l‘ultima versione di sviluppo di multicd con git  Come installare Git client per Ubuntu

mkdir multicd
cd multicd 
git clone git://git.tuxfamily.org/gitroot/multicd/multicd.git

Copiare nella directory le iso che si intendono inserire nel CD/DVD multiboot. I files ISO devono talvolta essere rinominati secondo le indicazioni sul sito di multicd supported boot images.  Ad esempio per    Finnix → finnix.iso  viene indicato che il nome sicuramente funzionante è finnix.iso.

Ad esempio è possible copiare nella cartella multicd:

  •  systemrescuedcd-x86-3.6.0.iso
  • ubuntu-12.10-desktop-i386.iso

invece copiamo e rinomiamo

  • finnix-108.iso  in -> finnix.iso
  • super_grub2_disk_hybrid_1.98s.iso  1in -> super_grub2_disk_hybrid_1.98s1.img

Quindi rendere eseguibile lo script multicd.sh:

chmod +x multicd*.sh
./multicd.sh
o
sudo ./multicd.sh

Al primo avvio verrà scaricato syslinux.tar.gz

Lo script può essere eseguito più volte.
La iso multiboot.iso e tutte le distro contenute possono essere testate con

kvm -m 512 -boot d multicd.iso

E’ possibile anche avviare qemu automicamente utilizzano l’opzione -t cioè utilizzando

sudo ./multicd.sh

Utilizzo personalizzato di Multicd

Considerato che nella realizzazione di multiboot DVD si potrebbero raggiungere temporaneamente i 15GB creare una cartella in un partizione, anche separata, sufficientemente capiente. Ad es:

mount -t auto /dev/hda10 /media/dati
mkdir /media/dati/multicd
cd /media/dati/multicd

Scaricare l‘ultima versione di multicd con git  Come installare Git client per Ubuntu | maurizio siagri

git clone git://git.tuxfamily.org/gitroot/multicd/multicd.git

Installare dialog per  personalizzare il menu di avvio del multicd, colori, titoli…

  sudo apt-get install dialog

dialog consente anche di ridefinire i menu di avvio di alcune ditribuzioni quali ubuntu e mint.

Per inserire più versioni diverse di distribuzioni quali ubuntu e mint è preferibile che il nome dei files iso sia del tipo: xxxxx.ubuntu.iso. Tuttavia per evitare di rinominare i file .iso scaricati e risparmiare spazio Per le distro quali ubuntu è preferibile piuttosto che copiare le iso nella directory di multicd utilizzare dei symlinks.  Di seguito la preparazione di un dvd con diverse distro utilizzando esclusivamente symlinks.

ln -s ../../ISO/iso-tools/super_grub_disk_0.9799.iso  super_grub_disk_0.9799.img
ln -s ../../ISO/iso-tools/super_grub2_disk_hybrid_2.00s1-beta5.iso super_grub2_disk_hybrid_2.00s1-beta5.img
ln -s ../../ISO/iso-tools/super_grub_disk_hybrid-1.98s1.iso super_grub_disk_hybrid-1.98s1.img
ln -s ../../ISO/iso-tools/gparted-live-0.16.1-1-i486.iso gparted-live-0.16.1-1-i486.iso
ln -s ../../ISO/iso-tools/grub4dos-0.4.4/grub.exe grub.img
ln -s ../../ISO/iso-tools/systemrescuecd-x86-3.6.0.iso systemrescuecd-x86-3.6.0.iso
ln -s ../../ISO/slax/slax-6.1.2.iso slax-6.1.2.iso 
ln -s ../../ISO/iso-tools/finnix-108.iso finnix.iso
ln -s ../../ISO/suse/openSUSE-12.2-GNOME-LiveCD-i686.iso openSUSE-12.2-GNOME-LiveCD-i686.iso
ln -s ../../ISO/Ubuntu/ubuntu-12.04.1-server-amd64.iso  ubuntu-12.04.1-server-amd64.iso 
ln -s ../../ISO/Ubuntu/xubuntu-12.04.1-desktop-i386.iso xubuntu-12.04.1-desktop-i386.iso
ln -s ../../ISO/Ubuntu/raring-desktop-amd64.iso  raring-desktop-amd64.ubuntu.iso 
ln -s ../../ISO/Ubuntu/lubuntu-13.04-desktop-amd64+mac.iso  lubuntu-13.04-desktop-amd64+mac.ubuntu.iso

avviare come root e con l’opzione -i per modificare il menu di avvio

sudo ./multicd -i

La iso multiboot.iso e tutte le distro contenute possono essere testate avviando qemu-kvm  oppure utilizzando l’opzione -t di multicd oppure avviando kvm  con il comando:

kvm -m 512 -boot d multicd.iso

Nella fase di test è possibile via menu avviare le iso incluse nel multicd.iso. Di seguito le schermate di puppy 5.5 precise  xubuntu avviate direttamente dal menu.

multicd avvio puppy

multicd avvio puppy

puppy 5.5 via multicd

puppy 5.5 via multicd

xubuntu via multicd

Il file iso può essere masterizzato con brasero o Xfburn etc..

Creare un penna usb multiboot

Per creare una chiavetta USB multiboot contentente la iso prodotta con multicd in Linux è possibile varie soluzione una delle più semplici è utilzzare il comando dd :

dd if=multicd.iso of=/dev/sdh oflag=direct

per ulteriori informazioni su dd fare riferimetno al seguente post Clonare una penna usb – Salvare una iso su usb con dd.  E’ possibile usare anche programmi come UNetbootin.

Risorse:

Programmi per creare una chiavetta USBcon sistema operativo live LinuxLIve USb Creator, Unetbootin

Alternative windows xbootsardu, yumi.

ISO Distro e ISO Tools interessanti:

Nota:

Se compare l’errore:

cp: cannot stat ‘/tmp/syslinux-*/com32/modules/chain.c32’: No such file or directory

Di solito avviene la prima volta, risolvere semplicemnte riavviando lo script.

 ./multicd.sh

Di seguito messaggi a terminale nel caso specifico :

~/multicd/multicd$ sudo ./multicd.sh
[sudo] password for maurizio: 
Made a link named sysrcd.iso pointing to systemrescuecd-x86-3.6.0.iso (version 3.6.0)
multicd.sh 20121217
Extracting ISO images with mount; will build multicd.iso; UID 0.

SystemRescueCd
super_grub_disk_0.9799
Memtest86+

Continuing in 2 seconds - press Ctrl+C to cancel
Copying files for each plugin...
Copying SystemRescueCd...
Copying super_grub_disk_0.9799... Saved as 0.img.
Downloading SYSLINUX...
--2013-05-23 00:21:37--  https://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-4.06.tar.gz
Resolving www.kernel.org (www.kernel.org)... 198.145.20.140, 149.20.4.69
Connecting to www.kernel.org (www.kernel.org)|198.145.20.140|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6651601 (6,3M) [application/x-gzip]
Saving to: ‘syslinux.tar.gz’

100%[=====================================================================>] 6.651.601    651KB/s   in 11s    

2013-05-23 00:21:49 (594 KB/s) - ‘syslinux.tar.gz’ saved [6651601/6651601]

Unpacking and copying files...
cp: cannot stat ‘/tmp/syslinux-*/com32/modules/chain.c32’: No such file or directory

RIAVVIARE 
:~/multicd/multicd$ sudo ./multicd.sh
removed ‘sysrcd.iso’
removed ‘sysrcd.version’
Made a link named sysrcd.iso pointing to systemrescuecd-x86-3.6.0.iso (version 3.6.0)
multicd.sh 20121217
Extracting ISO images with mount; will build multicd.iso; UID 0.

SystemRescueCd
super_grub_disk_0.9799
Memtest86+

Continuing in 2 seconds - press Ctrl+C to cancel
Copying files for each plugin...
Copying SystemRescueCd...
Copying super_grub_disk_0.9799... Saved as 0.img.
Unpacking and copying SYSLINUX files...
Downloading memtest86+ 4.20 from memtest.org...
--2013-05-23 00:27:00--  http://memtest.org/download/4.20/memtest86+-4.20.bin.gz
Resolving memtest.org (memtest.org)... 217.70.182.162
Connecting to memtest.org (memtest.org)|217.70.182.162|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 64960 (63K) [application/x-gzip]
Saving to: ‘STDOUT’

100%[=====================================================================>] 64.960       178KB/s   in 0,4s   

2013-05-23 00:27:01 (178 KB/s) - written to stdout [64960/64960]

Writing isolinux.cfg...
Building CD image...
Warning: Creating ISO-9660:1999 (version 2) filesystem.
Warning: ISO-9660 filenames longer than 31 may cause buffer overflows in the OS.
Size of boot image is 4 sectors -> No emulation
  2.41% done, estimate finish Thu May 23 00:27:02 2013
  4.83% done, estimate finish Thu May 23 00:27:02 2013
  7.25% done, estimate finish Thu May 23 00:27:02 2013
  9.66% done, estimate finish Thu May 23 00:27:02 2013
 12.07% done, estimate finish Thu May 23 00:27:02 2013
 14.48% done, estimate finish Thu May 23 00:27:02 2013
 16.90% done, estimate finish Thu May 23 00:27:02 2013
 19.31% done, estimate finish Thu May 23 00:27:02 2013
 21.73% done, estimate finish Thu May 23 00:27:02 2013
 24.14% done, estimate finish Thu May 23 00:27:02 2013
 26.55% done, estimate finish Thu May 23 00:27:02 2013
 28.96% done, estimate finish Thu May 23 00:27:02 2013
 31.38% done, estimate finish Thu May 23 00:27:02 2013
 33.79% done, estimate finish Thu May 23 00:27:04 2013
 36.21% done, estimate finish Thu May 23 00:27:04 2013
 38.62% done, estimate finish Thu May 23 00:27:04 2013
 41.03% done, estimate finish Thu May 23 00:27:04 2013
 43.44% done, estimate finish Thu May 23 00:27:04 2013
 45.86% done, estimate finish Thu May 23 00:27:04 2013
 48.27% done, estimate finish Thu May 23 00:27:04 2013
 50.69% done, estimate finish Thu May 23 00:27:03 2013
 53.10% done, estimate finish Thu May 23 00:27:03 2013
 55.51% done, estimate finish Thu May 23 00:27:03 2013
 57.92% done, estimate finish Thu May 23 00:27:03 2013
 60.34% done, estimate finish Thu May 23 00:27:03 2013
 62.75% done, estimate finish Thu May 23 00:27:05 2013
 65.17% done, estimate finish Thu May 23 00:27:05 2013
 67.58% done, estimate finish Thu May 23 00:27:04 2013
 69.99% done, estimate finish Thu May 23 00:27:04 2013
 72.40% done, estimate finish Thu May 23 00:27:07 2013
 74.82% done, estimate finish Thu May 23 00:27:08 2013
 77.23% done, estimate finish Thu May 23 00:27:08 2013
 79.65% done, estimate finish Thu May 23 00:27:08 2013
 82.06% done, estimate finish Thu May 23 00:27:09 2013
 84.48% done, estimate finish Thu May 23 00:27:10 2013
 86.88% done, estimate finish Thu May 23 00:27:10 2013
 89.30% done, estimate finish Thu May 23 00:27:09 2013
 91.71% done, estimate finish Thu May 23 00:27:09 2013
 94.13% done, estimate finish Thu May 23 00:27:09 2013
 96.54% done, estimate finish Thu May 23 00:27:10 2013
 98.95% done, estimate finish Thu May 23 00:27:10 2013
Total translation table size: 2048
Total rockridge attributes bytes: 4073
Total directory bytes: 12288
Path table size(bytes): 84
Max brk space used 1d000
207174 extents written (404 MB)
Running isohybrid...
Cleaning current directory...
removed ‘sysrcd.iso’
removed ‘sysrcd.version’
Annunci
  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

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 hanno fatto clic su Mi Piace per questo: