Newsgroup: it.comp.os.linux.development
Titolo: Creazione minidistro su floppy !!! Dove sbaglio???

So che la cosa si può fare utilizzando una distro vecchia, 
dalla redhat 5.0 fino alle mandrake 8.1.
Chi sa dove si trova il problema ???
Grazie.
1)Compilare kernel con:
386
loopback device support
ramdisk
Creare file bzImage
2)Installare busybox
3)mkdir /NGM2
cd <directory di busybox>/_install
cp -dpR * /NGM2/root
cd /NGM2/root
mkdir dev
mkdir etc
mkdir home
mkdir lib
mkdir mnt
mkdir proc
mkdir root
mkdir tmp
mkdir var
4)Ho creato ogni device in /NGM2/root/dev
cd /dev
cp -dpR console /NGM2/root/dev
console cua0 cua1 cua2 cua3 fd0 hda hda1 hda2 hda3 hda4 hda5 hda6 hda7 hda8 hda9 hdb hdb1 hdb2 hdb3 hdb4 hdb5 hdb6 hdb7 hdb8 hdb9 hdc hdc1 hdc2 hdc3 hdc4 hdc5 hdc6 hdc7 hdc8 hdc9 hdd hdd1 hdd2 hdd3 hdd4 hdd5 hdd6 hdd7 hdd8 hdd9 kmem null ppp ram0 ram1 ram2 ram3 ram4 ram5 ram6 ram7 ram8 ram9 tty tty0 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 ttyS0 ttyS1 zero
5)La directory /etc contiene i seguenti files:
fstab informazioni per il mount delle partizioni
group elenco dei gruppi
hosts associazioni nomi host con IP
inittab file di configurazione di init
it-lmc.map definizione della tastiera italiana
ld.so.cache cache delle librerie
ld.so.conf configurazione delle librerie
login.defs file di configurazione di login
modules.conf file di configurazione dei moduli
mtab partizioni montate
pam.conf configurazione di PAM
passwd elenco degli utenti
profile file di configurazione personalizzata
protocols elenco dei protocolli di rete
rc.M script di configurazione dei run-levels
rcH script eseguito all'uscita del sistema
rcS script di configurazione del sistema
services elenco dei servizi di rete
syslog.conf file di configurazione di syslogd
Nel file /etc/inittab vi ho messo:
id:2:initdefault:
si::sysinit:/etc/rcS
rc:2345:wait:/etc/rc.M
rh:0:wait:/etc/rcH
1:2345:respawn:/sbin/mingetty --noclear tty1
2:23:respawn:/sbin/mingetty --noclear tty2
3:2:respawn:/sbin/mingetty --noclear tty3
ca::ctrlaltdel:/sbin/shutdown -n -t5 -a -r now
Nel file /etc/rcS vi ho messo:
#!/bin/sh
/bin/mount -av
/bin/mount -o remount,rw /dev/ram0 /
/sbin/syslogd -m0
/sbin/klogd
/bin/hostname ngm2
Nel file syslog.conf vi ho messo:
*.* /var/log/messages
Il file /etc/fstab contiene le seguenti righe:
proc /proc proc defaults 0 0
/dev/ram0 / ext2 defaults,noauto 0 0
/dev/fd0 /mnt/floppy auto default,user,noauto 0 0
Il file /etc/rc.M:
#!/bin/sh
/bin/loadkeys /etc/it-lmc.map
Il file rcH contiene le seguenti istruzioni:
#!/bin/sh
umount -va
echo "Grazie !!!"
echo "Panther"
echo "
http://www.tivedotonico.it
"
Il file /etc/passwd contiene:
root::0:0:root:/root:/bin/sh
Il file /etc/group contiene:
root::0:root
Il file pam.conf, ha il seguente contenuto:
OTHER auth required /lib/security/pam_permit.so
OTHER account required /lib/security/pam_permit.so
OTHER password required /lib/security/pam_permit.so
OTHER session required /lib/security/pam_permit.so
Il file login.defs contiene la definizione di variabili utilizzate dal programma login:
FAIL_DELAY 3
LOGIN_RETRIES 3
Il file hosts contiene:
127.0.0.1 localhost
6)La directory /lib contiene tutti i files di libreria di Linux, i 2 files rossi devono assolutamente essere presenti.
ld-2.2.4.so
ld-linux.so.2
libc-2.2.4.so
libc.so.6
libcom_err.so.2
libcom_err.so.2.0
libcrypt-2.2.4.so
libcrypt.so.1
libdl-2.2.4.so
libdl.so.2
libe2p.so.2
libe2p.so.2.3
libext2fs.so.2
libext2fs.so.2.4
libnss_files-2.2.4.so
libnss_files.so.2
libpam.so
libpam.so.0
libpam.so.0.75
libpam_misc.so
libpam_misc.so.0
libpam_misc.so.0.75
libtermcap.so.2
libtermcap.so.2.0.8
libuuid.so.1
libuuid.so.1.2
### La directory /proc deve essere creata vuota.
### La directory /tmp deve essere creata vuota.
### La directory /root deve essere creata vuota.
### La directory /home deve essere creata vuota.
### La directory /var deve essere creata vuota.
### Le directory /bin /sbin /usr/bin /usr/sbin /usr/personal contengono i programmi che possono essere eseguiti nella minidistribuzione creati da busybox (ls -al)
7)Di seguito trovate la pare per il floppy di boot.
Prendersi un kernel es. 2.4.19 e ricompilarlo scegliendo,
i386, niente scsi, nessun loadable module support, ram 16384
con math emulation, mtrr, synmetric multi-processing.
Scegliere schede di rete isa e pci, file-system msdos,vfat, iso,
Joliet e nessun usb.
Ricompilare il kernel con:
make dep && make clean && make bzImage.
Formattare un floppy così:
badblocks /dev/fd0H1440 && fdformat /dev/fd0H1440 && mkfs -t msdos /dev/fd0
Renderlo avviabile con syslinux (dovreste già trovarlo installato).
syslinux -s /dev/fd0
Montare il floppy:
mount -t msdos /dev/fd0 /mnt/floppy
Copiare il file bzImage sul floppy:
cp /usr/src/linux-2.4.19/arch/i386/boot/bzImage /mnt/floppy
Configurare il file bzImage nel floppy:
cd /mnt/floppy
rdev -R /mnt/floppy/bzImage 1
rdev -r /mnt/floppy/bzImage 0
rdev -v /mnt/floppy/bzImage -1
rdev /mnt/floppy/bzImage /dev/ram0
Dentro /mnt/floppy creare il file syslinux.cfg con vi:
vi syslinux.cfg
e scrivervi all'interno
DEFAULT bzImage
APPEND vga=normal noinitrd load_ramdisk=1 prompt_ramdisk=1 ramdisk_size=16384 root=/dev/fd0 disksize=1.44
TIMEOUT 0
DISPLAY boot.txt
PROMPT 1
F1 f1.txt
F2 f2.txt
Salvare ed uscire (Esc:wq!)
Sempre dentro /mnt/floppy creare il file boot.txt, f1.txt e f2.txt con l'editor vi:
Scrivervi all'interno ciò che volete, stessa cosa con i file f1.txt e f2.txt
Smontare il floppy con:
cd / && umount /mnt/floppy
Il floppy di boot è pronto.
8)Creare il floppy di root:
mkdir /mnt/myram
dd if=/dev/zero of=/dev/ram0 bs=1k count=4096
mke2fs -vm 0 /dev/ram0 4096
mount /dev/ram0 /mnt/myram
cd /NGM2/root/
cp -dpR * /mnt/myram
umount /mnt/myram
cd /NGM2/
dd if=/dev/ram0 bs=1k count=4096|gzip -9v >root.gz
cp root.gz /dev/fd0

 
-- 
Vega (alpha Lyrae)