Creare un Floppy boot per partizioni linux e windows

Creare un floppy in grado di avviare ogni partizione con GRUB

Questa guida è stata scritta per poter avviare un vecchio notebook con due partizioni: Linux e Windows 98. Utilizzeremo la distribuzione DSL (Damn Small Linux) perchè è una delle distribuzioni più leggere presenti nel mondo Linux. DSL è in grado di girare su vecchi notebook con 16MB di ram.
Munitevi di un'immagine ISO di DSL, per esempio la 4.0syslinux, e masterizzatela du un cd. Avviate il cd ed installate DSL su una partizione, se non riuscite a installare linux o non sapete come partizionare un hdd (Hard Disk Drive) vi suggerisco di leggere la guida "good hack". Avviate DSL e digitate quanto segue nel terminale:

$ sudo -s

Ora inserire un floppy disk formattato in FAT e digitate:

# mount /dev/fd0 /mnt/auto/floppy
# mkdir /mnt/auto/floppy/grub

Copiate i file di grub ed il menu di avvio:

# cp /boot/grub/stage* /mnt/auto/floppy/grub
# cp /boot/grub/menu.lst /mnt/auto/floppy/grub


Smontate il floppy disk con il seguente comando:

# umount /mnt/auto/floppy


Installiamo stage1 nel settore MBR (Master Boot Record) del floppy disk:

# grub


Una volta avviato grub digitate in ordine i seguenti comandi ignorando i messaggi che usciranno:

> root (fd0)
> setup (fd0)
> quit


Ora modifichiamo la configurazione di GRUB editando il file menu.lst, potete utilizzare l'editor di Linux o semplicemente bloco note su un altro pc con su Windows.
Per editare il file in Linux digitate da terminale:

# sudo -s
# mount /dev/fd0 /mnt/auto/floppy


Aprite emelfm e andate nella cartella "/mnt/auto/floppy/grub" e aprite il file menu.lst
Il file menu.lst dovrebbe essere simile a questo:

# This sets the default entry to boot.
# Remember that GRUB counts from 0, so 1 is the second entry.
default 0
# This sets the length of time in seconds that grub will wait for the user to select an OS
# before it boots the default on. I reccommend at least 15 seconds.
timeout 15
#Enter the entry for DSL here. Something like this.

title DSL
kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm nodma noscsi frugal
title DSL fb800x600
kernel /boot/linux24 root=/dev/hda5 quiet vga=788 noacpi noapm nodma noscsi frugal

title DSL fb1024x768
kernel /boot/linux24 root=/dev/hda5 quiet vga=791 noacpi noapm nodma noscsi frugal

title DSL fb1280x1024
#kernel /boot/linux24 root=/dev/hda5 quiet vga=794 noacpi noapm nodma noscsi frugal

title DSL with toram, mydsl, restore, hostname, and passwords
kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda5 restore=hda5 host=DSL1 secure

title DSL with XFree86
kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda5/xfree restore=hda6 host=DSL1 secure

title DSL with mydsl,
restore, persistentancy, hostname, and passwords

kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda3 restore=hda3 home=hda3 opt=hda3 host=DSL1 secure

title DSL Runlevel 2
kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi nodma frugal 2 base norestore

#title DSL Check filesystem(s)
kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi nodma frugal 2 base norestore legacy checkfs


Modificheremo il file nel seguente modo:
- inseriremo il carattere '#' all'inizio della riga con "defaul 0" - sotto "title dsl" dobbiamo aggiungere il comando "root (hd0,X)" dove X è un numero che si trova sottraendo il numero di hdaY y-1=x Y è il valore che attribuisce linux alla partizione in cui è installato o dovrà essere installato, ma grub sottrae di 1 questo valore, quindi un partizione che in linux compare conme hda7 per grub sarà (hd0,6).
- possiamo commentare le righe degli altri avvii di DSL inserendo il carattere "#" all'inizio della riga
- per far avviare Windows 98 dobbiamo aggiungere queste istruzioni:

title Windows 98
hide (hd0,0)
hide (hd0,1)
unhide (hd0,2)
rootnoverify (hd0,2)
chainloader +1
makeactive


Il vostro menu.lst dovrebbe somigliare a questo:

# This sets the default entry to boot.
# Remember that GRUB counts from 0, so 1 is the second entry.
#default 0
# This sets the length of time in seconds that grub will wait for the user to select an OS
# before it boots the default on.
I reccommend at least 15 seconds.
timeout 15
#Enter the entry for DSL here. Something like this.

title DSL
root (hd0,4)

kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm nodma noscsi frugal

#title DSL fb800x600
#kernel /boot/linux24 root=/dev/hda5 quiet vga=788 noacpi noapm nodma noscsi frugal

#title DSL fb1024x768
#kernel /boot/linux24 root=/dev/hda5 quiet vga=791 noacpi noapm nodma noscsi frugal

#title DSL fb1280x1024
#kernel /boot/linux24 root=/dev/hda5 quiet vga=794 noacpi noapm nodma noscsi frugal

#title DSL with toram, mydsl, restore, hostname, and passwords
#kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda5 restore=hda5 host=DSL1 secure

#title DSL with XFree86
#kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda5/xfree restore=hda6 host=DSL1 secure

#title DSL with mydsl, restore, persistentancy, hostname, and passwords
#kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi frugal dma toram mydsl=hda3 restore=hda3 home=hda3 opt=hda3 host=DSL1 secure

#title DSL Runlevel 2
#kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi nodma frugal 2 base norestore

#title DSL Check filesystem(s)
#kernel /boot/linux24 root=/dev/hda5 quiet vga=normal noacpi noapm noscsi nodma frugal 2 base norestore legacy checkfs

title Windows 98
hide (hd0,0)
hide (hd0,1)
unhide (hd0,2)
rootnoverify (hd0,2)
chainloader +1
makeactive

title Partition 2(floppy)
hide (hd0,0)
unhide (hd0,1)
hide (hd0,2)
chainloader (fd0) +1

title Partition 3(floppy)
hide (hd0,0)
hide (hd0,1)
unhide (hd0,2)
chainloader (fd0) +1


Salvate il file e se state lavorando su Linux aspettare un minuto affinchè il file venga salvato correttamente. Riavviare il pc con il dischetto e godetevi il vostro DSL linux. Nel caso non riusciste a creare il dischetto potete usare questa immagine che ho creato del floppy grub e modificare il menu.lst, è comunque consigliato crearlo con il vostro specifico linux.

[Download]questo file zip contiene:
-bootlinux.img (file per avviare il cd-rom di linux su vecchi pc che non dispongono del boot cd-rom)
-floppy image.exe ( programma per scrivere i file img)
-grub091dsl.img (l'immagine floppy del diso di grub che ho creato)
-recoveryPM8_disk_1.img
-recoveryPM8_disk_2.img ( dischi di emergenza di partition magic, utili per creare partizioni da dos)
-win95bootfloppy.img ( disco di boot di win95 con supporto ottico mscdex)