Advertisement
Installare Linux su un sistema con partizione di recovery e BIOS bacato. PDF Stampa E-mail
Scritto da GizMo   
domenica 11 marzo 2007
In questa mini FAQ prendero' in esame il problema che sorge cercando di installare Linux su certi notebook che hanno il restore del sistema operativo (Windows) in una partizione nascosta, che per colpa di BIOS bacati creano parecchi problemi se si tenta di installare Linux.

Oggi ho avuto a che fare per l'ennesima volta con uno di questi notebook Acer 5600AWLMi dal bios strabacatissimo, quindi ne ho aprofittato per scrivere questa mini-FAQ immaginando che se lo stesso problema si presentasse a un Newbye difficilmente ne uscirebbe fuori.

Acer 5600AWLMi - Partizione di Recovery, come funziona ?

Sostanzialmente il concetto e' semplice, all'inizio del disco fisso e' presente una partizione formattata in Fat16 o Fat32 ma marcata con id 0x12h (Compaq Diagnostics o simili) vista da Linux come "hda1". Dopo di essa vi e' la seconda partizione Fat32 o NTFS con Windows installato, vista da Linux come "hda2" con flag "bootable". Il notebook, normalmente, all'accensione esegue il boot dalla partizione con flag "bootable" ossia "hda2" dove risiede Windows tranne se nel momento dell'accensione viene premuto il tastino di "recovery" (a volte non e' un tasto dedicato ma una combinazione da eseguire sulla tastiera), in questo caso il BIOS esegue il boot dalla prima partizione "hda1" avviado il software che formatta Windows e ripristina la situazione di fabbrica.

Fino a qui nulla di cosi' strano se non fosse che spesso i BIOS di questi notebook possono creare delle noie se si tenta di formattare tutto per installare un altro Sistema Operativo, infatti capita che se noi andiamo a cancellare l'intero disco (compresa la partizione di Recovery che spesso divora piu' di 4/5 Gb di prezioso spazio) per installare Linux, al riavvio il BIOS tenti ancora di fare il boot dalla seconda partizione (quando e' facile che la bootabile sia la prima) o peggio marchi anche nuovamente la prima partizione con id 0x12h e setti il flag "bootable" sulla seconda impedendo l'avvio di Linux.

Se siete fortunati, entrando nel setup del BIOS del portatile e cercando un po' scoverete una voce per disabilitare questa funzionalita' (nei notebook acer la voce e': D2D Recovery) ripristinando un funzionamento standard della procedura di boot.

Se siete meno fortunati, come e' capitato a me con un Acer Aspire 5600AWLMi, anche disabilitando la voce "D2D Recovery" il bios continuera' a mettere il flag di boot su "hda2" e id 0x12h su "hda1" disabilitando di fatto solo il tasto per avviare il recovery. (nd: quando capiranno che non c'e' solo Windows ?). Un altro problema che ho avuto e' che non ho voluto eliminare l'installazione di Windows XP presente nel notebook (non e' mio) e mi sono limitato a ridimensionarne la partizione, questo ha sortito l'effetto che la partizione di Windows continuasse a essere segnata come la seconda, ossia "hda2" quindi il notebook continuava a partire sempre e solo con Windows.

Soluzione

Se volete formattare tutto:
Cancellate tutte le partizioni del sistema, poi iniziate creando per prima una micro-partizione primaria di 1 solo cilindro (circa 7 mega) e marchiatela con id 0x12h (dall'fdisk di Linux si fa in un attimo), questa apparira' come "hda1", dopo di che procedete con un normale partizionamento, trovate un buono spunto in questa guida, avendo cura che la partizione di boot di linux sia la 2^ ad essere creata ossia "hda2" e abbia flag "bootable", installate grub su "hda2" o non sul "master boot record" anche detto "mbr" (nd: opensuse 10.2 si accorge da sola della situazione e imposta grub per installarsi sulla seconda partizione senza che l'utente intervenga). Risolto, ora il vostro partizionamento coincide con quello che forzerebbe il BIOS e quindi tutto funziona regolarmente, ovviamente se mai tentaste di avviare la funziona di Recovery non funzionerebbe.

Se non volete formattare tutto:
Fate un backup preventivo di tutti i dati prima !!!
Eseguirete il ridimensionamento della partizione di windows con qualche programma tipo qtParted o Acronis Disk Director, Il concetto e' lo stesso del caso precedente, dovete creare una micro-partizione primaria all'inizio del disco, la 2^ partizione primaria (in ordine fisico) deve essere quella di boot di linux, la 3^ partizione primaria (sempre in ordine fisico) sara' quella di Windows e poi ci saranno le altre partizioni del sistema. Ora il problema e' che nonostante l'ordine fisico delle partizioni quella di windows continuera' a essere marcata come "hda2" e quindi il BIOS continuera' a mettere il bootable flag su di essa facendo partire solo Windows. In questo caso ci verra' in aiuto una funzionalita' estesa dell'fdisk di Linux, potete farlo ad esempio da Knoppix, eseguite:

fdisk /dev/hda

Premendo il tasto "p" e poi enter potrete osservare che la partizione Windows sara' "hda2" con un asterisco che indica il bootable flag, ora a noi interessa che la prima mini-partizione (il recovery fasullo) diventi "hda1" il boot di Linux diventi "hda2" e quindi Windows diventi "hda3". (nd: ricordo ancora qual e' il modello di partizionamento che adotto io)

Rimanete quindi dentro a fdisk premete il tasto "x" e poi invio, entrerete in modalita' per esperti, ora premente il tasto "f" (fix partition order) ovviamente seguito da invio, fdisk riordinera' la numerazione delle partizioni in base alla loro dislocazione fisica. Premete "r" per tornare alla modalita' normale, ora premendo "p" potrete osservare che le partizioni sono state rinumerate come si voleva.

Controllate che il tipo delle partizioni sia corretto, se non lo e' correggetelo premendo il tasto "t" seguito dal numero della partizione e dal codice corretto che ne identifica il tipo (83 per Linux, 12 per compaq recovery etc). Togliete ora il bootable flag dalla partizione Windows, premendo prima "a" e poi indicando il numero della partizione di Windows (3 per indicare hda3) e mettete lo stesso sulla partizione di boot di Linux, premendo "a" seguito da 2 (per indicare hda2). Ricontrollate che sia tutto in ordine ancora una volta, premendo il tasto "p". Il tutto potrebbe apparire come da questo screenshot:



Se e' tutto OK premete "w", fdisk scrivera' tutte le modifiche sulla tabella delle partizioni, riavviate il sistema e procedere con l'installazione di Linux.

Windows non si avvia piu' !!!

Questo capitera' se avete cambiato la numerazione delle partizioni, spostando la partizione di Windows da "hda2" a "hda3", niente paura e' molto facile correggere il problema, basta accedere in scrittura alla partizione di Windows da una knoppix o anche dal Linux che avete appena finito di installare ed editare il file boot.ini che si trova nella root del disco C di Windows facendolo apparire in questo modo:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect

Originariamente il file riportava: multi(0)disk(0)rdisk(0)partition(2) equivalente a hda2.
Se la partizione di Windows fosse in NTFS potreste avere dei problemi ad accedere in scrittura su di essa da Linux almeno che non installare prima tutti i pacchetti ntfs-3g, oppure potreste correggere il file boot.ini da Windows direttamente, prima di procedere con i cambiamenti ad esempio.

Variante: Acer 2493WMLi - Riportata da OnlyUS

La mia esperienza con un Acer Travelmate 2493WMLi ha evidenziato lo stesso problema trattato sopra, ma una variante mi ha costretto a sperimentare in cerca di una soluzione.

Il sistema operativo di fabbrica del mio portatile Vista Home Basic, l'hd un SATA e la tabella delle partizioni presenta id e file system differenti dall'esempio nella guida. Nello specifico, l'Id nel mio caso era 27 ed il file system Unkown.

Perci, dopo parecchi tentativi, ho trovato che la soluzione pi semplice anche la pi efficace: basta creare una banalissima partizione primaria all'inizio del disco da un cilindro in Fat16 o 32 ed il gioco fatto.

Segnala un errore o una miglioria per questa guida...
NuovoCerca
I commenti servono per il feedback e non saranno pubblicati, per le domande usate il forum!
Nome:
Website:
Titolo:
Security Image
Please input the anti-spam code that you can read in the image.

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.

Ultimo aggiornamento ( mercoled 13 febbraio 2008 )
 
< Prec.   Pros. >

Ads Ticker

Chi c'e' Online

Login

Banner