Old:Dual Boot Linux-Windows

Da Guide@Debianizzati.Org.
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.


Introduzione

Beh, non tutti possono fare a meno di avere installato anche un sistema Windows sulla propria macchina e quindi spesso è necessario far convivere questi due OS.
Storicamente questa convivenza si è dimostrata spesso poco "pacifica", infatti a non pochi di noi è capitato di non poter accedere a questo o quel sistema operativo, ben sapendo che all'ultima accensione tutto funzionava per il meglio.
Di solito, per quella che è la mia esperienza in fatto di dual boot, posso "addossare" buona parte della colpa di questi malfunzionamenti alla poca apertura del bootloader di Windows rispetto agli altri sistemi operativi esistenti.
Per ovviare a questo tipo di problema è possibile percorrere diverse scelte:

  1. installare un bootloader più comprensivo (grub, lilo, gag, etc.) e gestire tutto tramite quello;
  2. usare il bootloader di Windows, per avviare anche gli altri OS a cui siamo interessati;

Questo articolo prova a spiegare in modo semplice come impostare ed utilizzare il secondo metodo.
Lo spunto e le nozioni riportate derivano dall'articolo di Rover presente a questo indirizzo.

Installeremo in sequenza, prima Windows e poi Linux: per il primo basterà seguire le varie schermate, mentre per il secondo occorrerà qualche accortezza in più.
Durante l'installazione della distro infatti, verrà richiesto di configurare un bootloader (di solito LILO o GRUB) e pertanto dovremo fare attenzione alla posizione in cui verrà posto tale software.
In altre parole, un bootloader può essere installato nell'inizio di un disco ( il famoso MBR, ovvero il Master Boot Record), in una partizione ben precisa o in un floppy.

Copia su floppy del MBR

Visto che siamo decisi a lasciare al bootloader di Windows l'onere di tutto il lavoro, è necessario per il momento scegliere la terza opzione (/dev/fd0), tenendo a mente di dover installare successivamente il bootloader sul disco. Una volta completata la procedura di installazione del sistema base ci verrà richiesto di riavviare il sistema, e noi utilizzeremo il disco floppy appena creato per rientrare nel nostro sistema.
Al login accediamo come superutente e provvediamo a configurare il bootloader sul disco fisso usando il comando grub-install e specificando la partizione del nostro disco, corrispondente alla / del sistema Linux.
Ad esempio, nel mio caso ho:

/dev/hda7 ---> /
/dev/hda6 ---> /home

quindi devo scegliere /dev/hda7.
Pertanto il comando sarà:

# grub-install /dev/hda7

A questo punto grub-install preleverà, dal disco floppy che abbiamo creato, i file di cui ha bisogno per clonarsi sul disco: è buona abitudine impostare il floppy in sola lettura per evitare modifiche dei file ed avere sempre una alternativa per far partire il proprio sistema Linux.
A questo punto possiamo disconnetterci come superutente (comando logout) e rientrare come utente semplice.
Dopo aver aperto una shell eseguite questo comando:

$ dd if=/dev/hda7 bs=512 count=1 of=/home/USER/linux.bin

dove USER è il vostro utente.
Questo comando crea un file chiamato linux.bin (ci servirà in seguito), contenente i primi 512 byte della nostra partizione /, la stessa in cui, guarda caso, abbiamo installato il bootloader.
Tale file ci servirà per istruire Windows ad avviare anche l'altro sistema operativo.
Sempre dalla shell, copiamo linux.bin su un floppy vuoto, precedentemente inserito nell'apposito lettore con

$ mcopy /home/USER/linux.bin a:

NB: mcopy fa parte del pacchetto degli mtools, nel caso non fosse installato e possibile usare i metodi standard di mount del device e di copia di un file.
Nel caso non si disponga di un drive floppy, e possibile usare un qualsiasi supporto utilizzabile in scrittura da Linux (una partizione di fat32, una pen drive, un cdrw, etc)

Modifica del file boot.ini

A questo punto dobbiamo riavviare il sistema: è da notare come Windows ancora non rilevi la presenza di Linux. Una volta loggati come utente Administrator o equivalente, possiamo dedicarci alle modifiche.

Il boot manager di Windows (almeno nelle versioni più recenti come 2000 o Xp) viene impostato nel file nascosto boot.ini, presente nella directory radice dove è installato il sistema, come ad esempio c:\ .
Una volta attivata la visualizzazione dei file nascosti e quella dei file di sistema, è possibile aprire boot.ini ed osservarne il contenuto.
Il file in questione si presenta originariamente così:

   [boot loader]
    timeout=15
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect


Per poter gestire Linux è sufficiente aggiungere la seguente riga:

c:\linux.bin="Linux"

personalizzabile sia nel nome del file (linux.bin) che nell'etichetta da visualizzare (Linux).
Preleviamo il file linux.bin che abbiamo prodotto con il comando dd e copiamolo nella directory c:\ .
A questo punto possiamo riavviare il sistema e scopriamo che non si avvia più automaticamente Windows, ma ci viene proposta anche la scelta di Linux!!!
Una volta selezionata quest'ultima voce, ci troviamo davanti il bootloader fornito dall'istallazione di Linux.

Ai più questa soluzione può sembrare contorta quanto inutile, ma a mio avviso consente di gestire Linux in modo decisamente più trasparente se è presente un dual boot con Windows, visto che quest'ultimo non dovrà essere "spodestato" dall'MBR per far posto al LILO o grub di turno.
E, finora, questo metodo non mi ha MAI abbandonato!




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

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