Pagina 1 di 2

Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: sabato 19 giugno 2010, 23:59
da tinos
Ciao, dopo circa 50 installazioni (tutte andate bene) di Ubuntu in dual boot con win su diversi pc, non sono ancora riuscito a capire perchè soltanto sul mio pc i due sistemi non possono essere avviati tramite grub!
È dalla versione 7.10 che sono in questa situazione! Finora facevo partire i due sistemi tramite avvio selettivo da bios, ma forse è arrivato il momento di risolvere e spero possa essere di aiuto anche ad altri.

Anche dopo quest'ultima installazione di Ubuntu, la versione 10.04, Win XP non si è avviato, restituendomi il classico errore:
Impossibile avviare Windows NT. Il seguente file è mancante o danneggiato:
Directory principale_Windows>\System32\ntoskrnl.exe
Reinstallare una copia del file sopra specificato”


Sembrerebbe corrotto il file boot.ini oltre al file specificato, ma non è così, ho già verificato ed inoltre
reinstallare i file di cui sopra non risolve un bel nulla, perciò prima di installare Ubuntu questa volta ho preso delle precauzioni, ho creato una copia di backup dell'intera partizione di win con Macrium Reflect.
Appena terminata l'installazione di Ubuntu e dopo aver ricevuto il messaggio d'errore di Win, ho proceduto a ripristinare la partizione di win con l'opzione:
"Replace with the Standard XP Master Boot Record"

Poichè questa operazione ha cancellato grub dall'MBR ora si avvia soltanto XP, quindi dovrei reinstallare Grub2 e dato che l'ottima guida presente nel Wiki prende in considerazione un solo hard disk installato e non due come nel mio caso, vorrei sapere come fare.

La situazione attuale dei miei hd:

Codice: Seleziona tutto

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

Disco /dev/sda: 500.1 GB, 500107862016 byte
255 testine, 63 settori/tracce, 60801 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0x0028b86a

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        6566    52741363+   7  HPFS/NTFS (sistema operativo XP Pro)
/dev/sda2            6567       60801   435642637+   7  HPFS/NTFS( partizione Dati)

Disco /dev/sdb: 320.1 GB, 320072933376 byte
255 testine, 63 settori/tracce, 38913 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0xbe9ebe9e

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3113    25005141   83  Linux (sistema operativo ubuntu "/ "root)
/dev/sdb2            3114       38594   285001132+  83  Linux ( home)
/dev/sdb3           38595       38913     2562367+  82  Linux swap / Solaris
san@tesla:~$ 
Forse dovrei prima montare /dev/sda e installare grub nel suo MBR, visto che è anche l'hd dov'è installato XP ed è anche il primo in ordine di boot nel bios, però riferendomi alla guida del wiki non saprei in che ordine impartire il comando.

Questa è la guida di cui parlo:
http://wiki.ubuntu-it.org/Amministrazio ... Ripristino

Io pensavo di procedere così, ma non essendone sicuro, se non và bene vi prego di correggermi:

Codice: Seleziona tutto

sudo mount /dev/sda /mnt
sudo mount /dev/sdb1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda
update-grub
exit
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
Grazie a tutti coloro che interverranno.

Ciao  :)

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 0:12
da jerico
coi 2 hd sinceramente non ho mai avuto a che fare. hai provato a settare nel bios,l'hd con ubuntu come primario e poi dare i comandi senza montare sda instalando grub in sdb?

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 0:18
da tinos
jerico ha scritto: coi 2 hd sinceramente non ho mai avuto a che fare. hai provato a settare nel bios,l'hd con ubuntu come primario e poi dare i comandi senza montare sda instalando grub in sdb?
per quel poco che ne so, se l'hd di win xp non lo metti come primo disco di avvio nel bios, questo non parte ed in ogni caso ora non potrei invertirli in quanto xp è stato installato prima di Ubuntu.

grazie comunque  :)

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 0:21
da jerico
si è vero.. col primo grub si potevano aggiungere i parametri di map per far credere a grub che xp era sul primo disco... col grub2 non ho mai provato

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 0:26
da jerico
forse può andare cosi

Codice: Seleziona tutto

sudo mount /dev/sdb1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sdb
update-grub
exit
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
poi setti nel bios il disco sdb come primo disco,avvii ubuntu e dai

Codice: Seleziona tutto

sudo update-grub

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 1:11
da tinos
jerico ha scritto: forse può andare cosi

Codice: Seleziona tutto

sudo mount /dev/sdb1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sdb
update-grub
exit
cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/
poi setti nel bios il disco sdb come primo disco,avvii ubuntu e dai

Codice: Seleziona tutto

sudo update-grub
Scusa se te lo chiedo, ma per me è molto importante capire.
Ho notato che nei comandi non c'è nessun riferimento a /dev/sda. Come fa grub a capire che c'è anche quest'altro hd da avviare. Senza contare che poi c'è sempre il problema che Xp vuole essere sempre il primo disco d'avvio al boot.
Quindi secondo te il problema risiede nel fatto che io abbia sempre sbagliato ad installare Grub nell'MBR di XP ed è per questo che avevo sempre quell'errore nell'avviare XP?

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: domenica 20 giugno 2010, 9:20
da patel
Premesso che è sempre meglio installare tutti i sistemi nello stesso disco ed utilizzare gli altri per i dati, io farei così:
1) stacchi il disco di XP
2) ripristini il grub nel disco di Ubuntu con http://wiki.ubuntu-it.org/Amministrazio ... Ripristino
3) riattacchi il disco di XP assicurandoti che il bios booti da quello di ubuntu
4) dai i comandi

Codice: Seleziona tutto

sudo grub-mkdevicemap
sudo update-grub
5) riavvii

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 1:59
da tinos
patel ha scritto: Premesso che è sempre meglio installare tutti i sistemi nello stesso disco ed utilizzare gli altri per i dati, io farei così:
1) stacchi il disco di XP
2) ripristini il grub nel disco di Ubuntu con http://wiki.ubuntu-it.org/Amministrazio ... Ripristino
3) riattacchi il disco di XP assicurandoti che il bios booti da quello di ubuntu
4) dai i comandi

Codice: Seleziona tutto

sudo grub-mkdevicemap
sudo update-grub
5) riavvii
Ciao  Patel,
dopo aver riattacato il disco di xp, i comandi che mi hai dato al punto 4, li devo dare utilizzando  il cd live, oppure da Ubuntu avviato normalmente?

Potresti togliermi questo dubbio che mi assilla da anni per favore? Utilizzando 2 hd bisogna rimappare per far credere a xp di essere il primo disco di boot e non bisogna installare Grub nel suo MBR?
Avevo persino pensato ad un guasto del disco, visto che ogni volta che installavo grub nell'MBR del disco di Xp questo non si avviava più.

Grazie infinite

Ciao  :)

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 6:18
da patel
tinos ha scritto: dopo aver riattacato il disco di xp, i comandi che mi hai dato al punto 4, li devo dare utilizzando  il cd live, oppure da Ubuntu avviato normalmente?
da Ubuntu avviato normalmente
Utilizzando 2 hd bisogna rimappare per far credere a xp di essere il primo disco di boot e non bisogna installare Grub nel suo MBR?
Col grub1 sicuramente, col 2 viene fatto automaticamente dai comandi sopra suggeriti.

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 17:09
da tinos
patel ha scritto:
tinos ha scritto: dopo aver riattacato il disco di xp, i comandi che mi hai dato al punto 4, li devo dare utilizzando  il cd live, oppure da Ubuntu avviato normalmente?
da Ubuntu avviato normalmente
L'operazione è andata a buon fine, Ubuntu si avvia correttamente tramite Grub, ha inserito correttamente anche XP nel Grub, ma purtroppo questo non si avvia, mi da sempre il solito errore:
Impossibile avviare Windows NT. Il seguente file è mancante o danneggiato:
Directory principale_Windows>\System32\ntoskrnl.exe
Reinstallare una copia del file sopra specificato”


Come primo disco di boot, nel bios ho messo il disco di Ubuntu e dopo il comando da te suggerito facendo:

Codice: Seleziona tutto

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

Disco /dev/sda: 500.1 GB, 500107862016 byte
255 testine, 63 settori/tracce, 60801 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0x0028b86a

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        6566    52741363+   7  HPFS/NTFS
/dev/sda2            6567       60801   435642637+   7  HPFS/NTFS

Disco /dev/sdb: 320.1 GB, 320072933376 byte
255 testine, 63 settori/tracce, 38913 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0xbe9ebe9e

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3113    25005141   83  Linux
/dev/sdb2            3114       38594   285001132+  83  Linux
/dev/sdb3           38595       38913     2562367+  82  Linux swap / Solaris
san@tesla:~$ 
Sembra corretto ha invertito /dev/sda con /dev/sdb.
Con i comandi che mi hai dato, nell'MBR di XP viene scritto qualcosa oppure no?

Per Xp non saprei cosa fare, in ogni caso qualsiasi cosa decida di fare mi sa che dovrò invertire l'ordine di boot nel bios, mettendo come primo il disco di XP e poi rifare la procedura fin quì. Hai suggerimenti in merito?

Ciao  :)

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 18:15
da patel
Stacca il disco di Ubuntu, ripristina il boot di win con http://www.pc-facile.com/guide/utilizzo ... /38979.htm, verifica che funzioni, poi riattacca l'altro e mettilo come primo boot sul bios.

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 19:04
da tinos
È strano, Xp si avvia se è l'unico hd presente, oppure se è il primo al boot nel bios.
Ho riprovato a reinserire i comandi per rimapparlo ma non è servito a nulla, quando questo è il secondo a boottare mi da quell'errore.

Se vuoi provo a fare il Fix MBR ma non credo di riuscire a risolvere (anche perchè xp ora funziona) ed  in passato mi sono ritrovato nella stessa identica situazione.

Cosa devo fare?

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 20:05
da patel
non serve a niente ripetere il fixmbr, evidentemente il grub2 non riesce a rimappare, soluzioni:
1) avviare Ubuntu ed installare il grub nel disco di win con sudo grub-install /dev/sdb e poi impostare sul bios il disco di win come primo boot
2) installare Ubuntu nello stesso disco di Win ed utilizzare l'altro per i dati
3) installare il grub1 al posto del 2 con http://www.chicchedicala.it/2009/12/09/ ... in-ubuntu/

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 22:27
da tinos
-Opterei per la soluzione n1.

-La seconda è sicuramente la più saggia, ma dato che uno dei due dischi dovrò sostituirlo fra qualche mese, lo terro presente per quell'occasione  (yes).

-La terza soluzione l'ho già sperimentata in passato con l'aiuto di un esperto di linux. In pratica aveva tentato tutto ciò che mi hai proposto tu finora, ricordo che aveva smanettato parecchio per rimappare il disco di Xp con diverse opzioni ed il risultato è stato lo stesso.

Optando per la soluzione n.1 però ora c'è un problema /dev/sdb ora è il disco di Ubuntu. Forse dovrei farlo da cd live?

Codice: Seleziona tutto

san@tesla:~$ sudo fdisk -l

Disco /dev/sdb: 320.1 GB, 320072933376 byte
255 testine, 63 settori/tracce, 38913 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0xbe9ebe9e

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3113    25005141   83  Linux
/dev/sdb2            3114       38594   285001132+  83  Linux
/dev/sdb3           38595       38913     2562367+  82  Linux swap / Solaris

Disco /dev/sda: 500.1 GB, 500107862016 byte
255 testine, 63 settori/tracce, 60801 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0x0028b86a

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        6566    52741363+   7  HPFS/NTFS
/dev/sda2            6567       60801   435642637+   7  HPFS/NTFS
san@tesla:~$ 
ciao

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 22:35
da patel
non dal cdlive, imposta il bios per partire da Ubuntu, sdb diventerà il disco di win e potrai avviare Ubuntu, una volta dato il comando rifai l'operazione inversa.

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: lunedì 21 giugno 2010, 23:32
da tinos
patel ha scritto: non dal cdlive, imposta il bios per partire da Ubuntu, sdb diventerà il disco di win e potrai avviare Ubuntu, una volta dato il comando rifai l'operazione inversa.
Breve riassunto della situazione attuale:

Il Primo disco di boot nel bios è il 320GB di Ubuntu ed è diventato sdb dopo il comando della rimappatura (era sda).
Il secondo disco nel bios è il 500GB di Win ed è diventato sda dopo la rimappatura (sudo grub-mkdevicemap sudo update-grub)

Quindi per installare Grub nel disco di win dovrei scrivere:
sudo grub-install /dev/sda

Dai uno sguardo al risultato di Fdisk -l

Codice: Seleziona tutto

san@tesla:~$ sudo fdisk -l

Disco /dev/sdb: 320.1 GB, 320072933376 byte
255 testine, 63 settori/tracce, 38913 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0xbe9ebe9e

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3113    25005141   83  Linux
/dev/sdb2            3114       38594   285001132+  83  Linux
/dev/sdb3           38595       38913     2562367+  82  Linux swap / Solaris

Disco /dev/sda: 500.1 GB, 500107862016 byte
255 testine, 63 settori/tracce, 60801 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0x0028b86a

Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        6566    52741363+   7  HPFS/NTFS
/dev/sda2            6567       60801   435642637+   7  HPFS/NTFS
san@tesla:~$ 
ciao

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: martedì 22 giugno 2010, 7:30
da patel
se hai avviato Ubuntu dal disco rigido e non dal cdlive il comando giusto è con sda (come hai detto tu).
Come vedi avere 2 sistemi su due dischi ingenera soltanto confusione.

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: martedì 22 giugno 2010, 22:41
da tinos
Questa è la sezione del mio Grub, che farebbe avviare XP dopo aver dato il comando grub-mkdevicemap, ti sembra corretto?

Codice: Seleziona tutto

menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod ext2
	set root='(hd1,1)'
	search --no-floppy --fs-uuid --set 56b5c0cc-f6dd-4d60-9274-e8fffd389c89
	linux16	/boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
	insmod ntfs
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set 88a4cd5fa4cd4ffc
	drivemap -s (hd0) ${root}
	chainloader +1
}
### END /etc/grub.d/30_os-prober ###
Invece questo lo avevo copiato in una discussione (che non riesco più a trovare) quì sul forum:

Codice: Seleziona tutto

echo "Adding Windows" >&2
cat << EOF
menuentry "Microsoft Windows (su /dev/sdb1)" {
set root=(hd1,1)
drivemap -s hd0 hd1
chainloader +1
}
EOF
Mi pare ci sia qualcosa che non và nel mio, manca hd0 hd1, ci sarebbe eventualmente il modo di scrivere a "mano" i valori corretti?

Comunque anche dopo aver fatto sudo grub-install /dev/sda ed aver installato nuovamente grub 2 nell'MBR di Win, Ubuntu si avvia (e mi sarei aspettato di avere due grub, visto che c'era anche su quello di Ubuntu), mentre con XP ho lo stesso identico errore (probabilmente XP non vuole niente nel suo MBR, altrimenti non parte):
impossibile avviare Windows NT. Il seguente file è mancante o danneggiato:
Directory principale_Windows>\System32\ntoskrnl.exe
Reinstallare una copia del file sopra specificato”


Per ora procederei così:
1) ripristino la partizione di XP come ho già fatto (vedi il mio primo post).
2) metto il disco di ubuntu come primario nel bios, tramite cd live gli reinstallo grub2 (senza scollegare il disco di XP).
3) ritentiamo la mappatura del disco di XP.

Sempre se, ritieni che la sezione della mappatura nel mio grub non sia corretta.
Atrimenti mi fermo al punto due  e userò supergrub per avviare "l'avviabile".

ciao

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: martedì 22 giugno 2010, 22:51
da patel
Torno a ripetere che è meglio installare tutti i sistemi nello stesso disco ed utilizzare gli altri per i dati.
Un'altra possibilità è installare il grub1 http://www.chicchedicala.it/2009/12/09/ ... in-ubuntu/ e farsi la mappatura manuale

Re: Reinstallare Grub2 avendo WIN e UBUNTU su due hard disk

Inviato: mercoledì 23 giugno 2010, 0:47
da tinos
pare che grub 1 non supporti il file system ext4:
http://tinyurl.com/36mx5gx

ho formattato la / e la home proprio in ext4, che sfiga!

Beh, almeno abbiamo provato.
Per adesso un grazie 1000 penso sia appena sufficente per dimostrarti la mia gratitudine, perciò  ti offro anche una birra (b2b) .

ciao  :)