[sanniolug] Provare Knoppix personalizzata senza rimasterizzare

  • From: Massimiliano Mirra <mmirra@xxxxxxxxx>
  • To: sanniolug@xxxxxxxxxxxxx
  • Date: Tue, 29 Jul 2003 00:13:04 +0200

Quanto segue è ancora incompleto ma può tornare utile.  E' basato in
parte su esperimenti di Fabian Franz (riportati sulla mailing list
debian-knoppix), in parte su esperimenti miei.

##### START

* Per provare una Knoppix modificata, senza rimasterizzare

Posto che:

- Il root filesystem di Knoppix si trova in /mnt/knoppix, e
  /mnt/knoppix è mount point di /dev/hda10.  In altre parole, alla
  Knoppix personalizzata è dedicata tutta la partizione /dev/hda10.

- Il filesystem di /dev/hda10 è ext3.

- Si lavora da utente root.  

### Un piccolo adattamento alla Knoppix da rimasterizzare

cd /mnt/knoppix
echo "/dev/hda10 / ext3 defaults 0 1" >etc/fstab

### Creiamo il filesystem che servirà per la prima fase del boot

cd /mnt
mkdir initrd
# Un file di quattro mega...
dd if=/dev/zero of=initrd.img bs=4096k count=1
# ...un filesystem...
mke2fs -N5000 -F -m0 initrd.img
# Montiamolo
mount initrd.img initrd -o loop
# Creiamo una struttura minimale
mkdir initrd/bin initrd/dev initrd/lib initrd/mnt initrd/modules initrd/newroot
# Riempiamola
cp knoppix/bin/ash.static knoppix/bin/mount knoppix/bin/pivot_root initrd/bin
cp -a knoppix/dev/* initrd/dev
cp -L knoppix/lib/libc.so.6 knoppix/lib/ld-linux.so.2 initrd/lib
cp knoppix/lib/modules/2.4.20-xfs/kernel/fs/jbd/jbd.o initrd/modules
cp knoppix/lib/modules/2.4.20-xfs/kernel/fs/ext3/ext3.o initrd/modules
ln -s initrd/bin/ash.static initrd/bin/sh
# Creiamo il copione dello spettacolo :-)
vi initrd/linuxrc

#!/bin/sh
insmod modules/jbd.o
insmod modules/ext3.o
mount -t ext3 -o ro /dev/hda10 /newroot
cd newroot
pivot_root . initrd
exec usr/sbin/chroot . sbin/init 2 >dev/console <dev/console 2>&1

# Aggiungiamo la nostra impronta all'/etc/lilo.conf :-)

image=/mnt/knoppix/boot/vmlinuz-2.4.20-xfs
        label=knoppix-chroot
        append="hda=scsi hdb=scsi hdc=scsi hdd=scsi root=/dev/ram0 
init=/linuxrc rw"
        initrd=/mnt/initrd.img
        read-only

##### END


Other related posts: