Questa è una cosa che penso che sia capitata a qualunque smanettone che cerca di installare un sistema dual-boot con Winzozz installandolo per ultimo.

In effetti Windows - strano ma vero - non riconosce la presenza di altri sistemi operativi e se installato dopo una qualsiasi distribuzione GNU/Linux se ne frega altamente della sua presenza e sovrascrive di netto l’MBR (Master Boot Record), ovvero quella piccola sezione del vostro disco rigido che, in parole povere, indica al vostro PC come caricare il sistema operativo.

Ovviare a questo è semplice! Basta installare GNU/Linux per ultimo!
Tuttavia non tutti ne sono al corrente. Specialmente chi è alle prime armi si potrebbe trovare in una situazione poco piacevole pensando che la sua installazione sia stata sovrascritta da Windows.
In realtà non è così, è ancora tutto al proprio posto, dobbiamo solo ripristinare il bootloader.

Prerequisiti

Dovete procurarvi un Live-CD di una qualunque distribuzione. Se avete installato GNU/Linux è molto probabile che lo abbiate fatto da Live-CD.
Se così non fosse potete recuperarne uno a vostro piacimento. Io vi consiglio naturalmente Ubuntu

Via!

Avviate la vostra distribuzione Live normalmente e attendete il caricamento completo del sistema operativo.
Una volta avviato aprite un terminale. Per prima cosa dovete ottenere i privilegi di root e farvi una idea ben chiara di come sono sistemate le partizioni del vostro hard disk:

sudo -s
fdisk -l

vi verranno cosi mostrate tutte le partizioni presenti sul vostro hard-disk e i loro corrispondenti devices (/dev/sda1 2 3 etc…)

Disco /dev/sda: 250.0 GB, 250059350016 byte
255 heads, 63 sectors/track, 30401 cylinders
Units = cilindri of 16065 * 512 = 8225280 bytes
Disk identifier: 0×40000000

Dispositivo Boot Start End Blocks Id System
/dev/sda1 1 1320 10602868+ 83 Linux
/dev/sda2 * 1322 7819 52195185 7 HPFS/NTFS
/dev/sda3 30076 30401 2618595 5 Esteso
/dev/sda4 7820 30075 178771320 83 Linux
/dev/sda5 30076 30401 2618563+ 82 Linux swap / Solaris

Nel mio caso la riga evidenziata corrisponde alla partizione di root che sarà quella che dovremo usare per ripristinare il nostro bootloader. Per comodità assumo che la partizione /dev/sda1 sia nel filesystem ext3 e che valga come root anche per voi.

Adesso dobbiamo montare questa partizione da qualche parte per cui eseguiamo i comandi:

mkdir -p /mnt
mount -t ext3 /dev/sda1 /mnt

E’ necessario montare anche il filesystem /dev e proc, i comandi sono simili:

mkdir -p /mnt/dev && mount --bind /dev/ /mnt/dev
mkdir -p /mnt/dev && mount -t proc proc /mnt/proc

Ora dobbiamo diventare in qualche modo amministratori del sistema operativo del quale dobbiamo ripristinare il bootloader:

chroot /mnt su -

In questo momento il sistema che dovete ripristinare è completamente operativo come se vi aveste fatto login. Non vi resta che eseguire i comandi per ripristinare il bootloader direttamente dalla shell.

Per quanto riguarda Lilo, il tutto è veramente banale. E’ sufficiente lanciare il comando “lilo” e verificare con “lilo -q” che tutto sia andato a buon fine.
Per quanto riguarda Grub invece serve un po’ più di attenzione: dovete tenere ben presente il disco e la partizione su cui è stato installato Linux, nel mio caso è /dev/sda1 il che corrisponde a (hd0,0).
Nel caso la vostra partizione fosse la terza sul seconddo disco sarebbe (hd1,2) e cosi via.
Adesso eseguite il comando “grub” , entrerete in una nuova shell, quella di grub, quindi eseguite sempre tenendo conto dei dati che avete ricavato su n° del disco e della partizione

root (hd0,0)
setup (hd0)
quit

Bene adesso dovrebbe essere tutto perfetto e potrete riavviare il vostro sistema Linux direttamente all’avvio tramite Grub

Tags: , , , , , , , , , ,
6 Risposte a “Ripristinare il bootloader GNU/Linux Grub/Lilo da Live-CD”
  1. Peppe scrive:

    Grazie di tutto… Ottimo

  2. Andrea scrive:

    grazie!

  3. roberto scrive:

    roby@roby:~$ sudo fdisk -l
    [sudo] password for roby:

    Disco /dev/sda: 160.0 GB, 160041885696 byte
    255 testine, 63 settori/tracce, 19457 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×79afdd3f

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sda1               1        1274    10233373+  12  Diagnostica Compaq
    /dev/sda2            1275        5453    33567817+  82  Linux swap / Solaris
    /dev/sda3            5454       10382    39592192+   5  Esteso
    /dev/sda4   *       10383       19458    72892416    7  HPFS/NTFS
    /dev/sda5            7926       10274    18868311   83  Linux
    /dev/sda6           10275       10382      867478+  82  Linux swap / Solaris
    /dev/sda7            6851        7873     8217184+  83  Linux
    /dev/sda8            7874        7925      417658+  82  Linux swap / Solaris
    /dev/sda9            5454        6785    10699227   83  Linux
    /dev/sda10           6786        6850      522081   82  Linux swap / Solaris

    Le voci nella tabella delle partizioni non sono nello stesso ordine del disco

    Disco /dev/sdb: 1000.2 GB, 1000204886016 byte
    255 testine, 63 settori/tracce, 121601 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×73b85bab

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1       31635   254108106    7  HPFS/NTFS

    Disco /dev/sdc: 500.1 GB, 500107862016 byte
    255 testine, 63 settori/tracce, 60801 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×161d4f2d

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdc1   *           1       19252   154641658+   7  HPFS/NTFS
    /dev/sdc2           19253       60801   333742342+   5  Esteso
    /dev/sdc5           34447       60140   206387023+  83  Linux
    /dev/sdc6           60141       60801     5309451   82  Linux swap / Solaris
    /dev/sdc7           25753       34086    66942792   83  Linux
    /dev/sdc8           34087       34446     2891668+  82  Linux swap / Solaris
    /dev/sdc9           19253       25480    50026347   83  Linux
    /dev/sdc10          25481       25752     2184808+  82  Linux swap / Solaris

    Le voci nella tabella delle partizioni non sono nello stesso ordine del disco

    Disco /dev/sdd: 500.1 GB, 500107862016 byte
    255 testine, 63 settori/tracce, 60801 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×94d7aacf

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdd1   *           1       60801   488384001    c  W95 FAT32 (LBA)
    roby@roby:~$

    roby@roby:~$ sudo fdisk -l
    [sudo] password for roby:

    Disco /dev/sda: 160.0 GB, 160041885696 byte
    255 testine, 63 settori/tracce, 19457 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×79afdd3f

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sda1               1        1274    10233373+  12  Diagnostica Compaq
    /dev/sda2            1275        5453    33567817+  82  Linux swap / Solaris
    /dev/sda3            5454       10382    39592192+   5  Esteso
    /dev/sda4   *       10383       19458    72892416    7  HPFS/NTFS
    /dev/sda5            7926       10274    18868311   83  Linux
    /dev/sda6           10275       10382      867478+  82  Linux swap / Solaris
    /dev/sda7            6851        7873     8217184+  83  Linux
    /dev/sda8            7874        7925      417658+  82  Linux swap / Solaris
    /dev/sda9            5454        6785    10699227   83  Linux
    /dev/sda10           6786        6850      522081   82  Linux swap / Solaris

    Le voci nella tabella delle partizioni non sono nello stesso ordine del disco

    Disco /dev/sdb: 1000.2 GB, 1000204886016 byte
    255 testine, 63 settori/tracce, 121601 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×73b85bab

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1       31635   254108106    7  HPFS/NTFS

    Disco /dev/sdc: 500.1 GB, 500107862016 byte
    255 testine, 63 settori/tracce, 60801 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×161d4f2d

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdc1   *           1       19252   154641658+   7  HPFS/NTFS
    /dev/sdc2           19253       60801   333742342+   5  Esteso
    /dev/sdc5           34447       60140   206387023+  83  Linux
    /dev/sdc6           60141       60801     5309451   82  Linux swap / Solaris
    /dev/sdc7           25753       34086    66942792   83  Linux
    /dev/sdc8           34087       34446     2891668+  82  Linux swap / Solaris
    /dev/sdc9           19253       25480    50026347   83  Linux
    /dev/sdc10          25481       25752     2184808+  82  Linux swap / Solaris

    Le voci nella tabella delle partizioni non sono nello stesso ordine del disco

    Disco /dev/sdd: 500.1 GB, 500107862016 byte
    255 testine, 63 settori/tracce, 60801 cilindri
    Unità = cilindri di 16065 * 512 = 8225280 byte
    Identificativo disco: 0×94d7aacf

    Dispositivo Boot      Start         End      Blocks   Id  System
    /dev/sdd1   *           1       60801   488384001    c  W95 FAT32 (LBA)
    roby@roby:~$

    Questa è la mia situazione dopo che incosciamente ho istallato Ubuntu credendo di essere capace a metterlo insieme a Vista che,con tutti i difetti ricordati da tutti, mi permetteva di usare molti programmi (acquistati).NON RIESCO PIÙ ,NEANCHE CON IL FORUM DI UBUNTU A FAR RIPARTIRE VISTA. Pensi che ho fatto casini irrecuperabili e, come mi è stato consigliato,ripartire da zero? Avendo acquistato il pc senza i dichi originali con i soli dvd di backup e di recovery non credo di poter ristallare Vista. Grazie per l’attenzione in anticipo,roberto.

  4. Dario scrive:

    Dio santo che casino di partizioni! Ti consiglio di ripartire da zero si anche perché con tutta quella roba non ci si capisce niente.

    Fai dei backup della roba più importante che ti serve e dopo trita tutto e riparti da capo.
    E’ la soluzione più semplice senza stare ad immattire troppo

  5. roberto scrive:

    L’avrei gia’ fatto se ne
    fossi capace : Vista non riesco a farlo partire in nessun modo a me conosciuto. I DVD di backup che ho fatto dopo l’acquisto mi danno errore “Type Mismatch” e anche il Recovery disk non va. Ti ringrazio molto per la solerte risposta ma ho paura di combinare ulteriori casini. Eventualmente devo formattare solo il primo disco o anche quelli esterni?

  6. Dario scrive:

    I dischi esterni lasciali perdere. Procurati il cd di Ubuntu, quello di Windows e Parted-Magic.

    Avvia il CD di Parted-Magic al boot e una volta entrato nell’interfaccia cancella tutte le partizioni sui dischi rigidi e se vuoi creane alcune a tuo piacimento per Windows (ntfs) e per Ubuntu (ext3 + 2GB Swap). Una volta portati a zero i tuoi dischi installa Windows, dopo aver installato Windows installa Ubuntu.

    Al termine dovresti avere il bootloader (Grub) con gia inserite le voci di Ubuntu e Windows

  7.  
Scrivi un Commento

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>