Old:DebianLive su usb installabile

Da Guide@Debianizzati.Org.
(Reindirizzamento da DebianLive su usb installabile)
Vai alla navigazione Vai alla ricerca
Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Intro

Lo scopo di questa guida è quello di creare una debian live su supporto usb con la possibilità di installarla su hd o altro supporto esterno, questa possibilità è implementata dal tool live-helper ma solo per live su cd/dvd, presumibilmente tale feature verrà aggiunta in futuro, nel frattempo con pochi passi è possibile assemblare la propria live su usb installabile, una sorta di coltellino svizzero da mettere nel portachiavi.


Si considerà:

  1. La creazione della live già avvenuta usando live-helper Debian_Live_Project;
  2. La live si trova su supporto usb in /dev/sdb1 montata su /media/disk;
  3. La directory usata da live-helper è /home/$USERNAME/mylive;
  4. Architettura x86
  5. Debian stabile (Lenny)

Installazione di Netinst

Viene usato un installer particolare che caricherà l'immagine iso della netinst, anch'essa presente su usb.

# cd /media/disk
# mkdir -p netinst/gtk
# cd netinst
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/hd-media/initrd.gz
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/hd-media/vmlinuz
# wget wget http://cdimage.debian.org/debian-cd/5.0.3/i386/iso-cd/debian-503-i386-netinst.iso
# cd /media/disk/netinst/gtk
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/hd-media/gtk/initrd.gz
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/hd-media/gtk/vmlinuz

Fix menu di syslinux

Occorre inserire delle voci nel menù del bootloader per permettere di caricare il d-i. Il file di configurazione principale è syslinux.cfg nel quale vendono richiamati altri file, quello da modificare è menu.cfg, presente nella directory syslinux.

label install
	menu label Install-txt
	kernel /netinst/vmlinuz
	append initrd=/netinst/initrd.gz vga=normal quiet

label installgtk
	menu label Graphical install
	kernel /netinst/gtk/vmlinuz
	append  video=vesa:ywrap,mtrr vga=788 initrd=/netinst/gtk/initrd.gz -- quiet 

All'avvio della live, digitando install partià la netinst in modalità testo, mentre digitando installgtk si entrerà in modalità grafica. Si sono considerate solo due modalità, chi avesse necessità di usare la modalità expert basterà aggiungere una nuova voce. Coloro che volessero avere i cheat code della netinst potrebbero aggiungerli modificando uno dei file di aiuto di syslinux: f1.txt, f2.txt, etc.


Su debian Lenny è presente live-helper v1.0.3-2 (syslinux v2:3.71+dfsg-5), il quale genera una configurazione per syslinux abbastanza scarna, che comprende solo la modalità senza menu (boot: [....]), nelle versione successive presenti su testing e Sid invece la modalità di default di syslinux è quella con i menù e relativi sottomenù, più user-friendly, si entra nella modalità boot premendo TAB, mentre digitando Esc si torna nella modalità menu. Le voci da aggiungere a menu.cfg sono leggermente diverse, basta guardare quelle già presenti per intuire le modifiche da fare.

Installazione dei firmware mancanti

Si tratta di firmware proprietari non compresi nel d-i.

# cd /media/disk/
# mkdir /media/disk/firmware
# wget http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/lenny/current/firmware.tar.gz
# tar -xf firmware.tar.gz -C firmware
# rm firmware.tar.gz

info [1]

Repository locale

Si costruisce un trivial repository di pacchetti non compresi nel d-i, per la creazione del pool dei pacchetti si utilizzano quelli scaricati da live-helper presenti nella directory /home/$USERNAME/mylive

# cd /media/disk
# mkdir -p local-repository/binary
# cd local-repository
# cp /home/$USERNAME/mylive/cache/packages_bootstrap/* /media/disk/local-repository/binary
# cp /home/$USERNAME/mylive/cache/packages_chroot/* /media/disk/local-repository/binary
# cp /home/$USERNAME/mylive/cache/packages_binary/* /media/disk/local-repository/binary
# dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz

Il repository locale non verrà visto dal d-i, solo in un secondo momento si potrà accedervi, dopo averlo aggiunto in /etc/apt/sources.list.

Il file readme.txt contiene la linea (sostituire MOUNT-POINT-USB con il path dove viene montato il dispositivo usb) da aggiungere alla lista dei repository, come promemoria per quanto detto sopra.

# echo "deb file:///MOUNT-POINT-USB/local-repository binary/" > readme.txt

trivial repository [2]




Guida scritta da: Fr4nc3sc0 Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized