# GENTOO e boot di winzoz che non va (strano). [RISOLTO]

## adam_z

Finalmente ho installato GENTOO (dal cd di installazione) nell'HD secondario.

Nell'HD principale (master del primo canale IDE) ho ancora WINXP.

Con LILO ho fatto il menù di boot per poter scegliere quale sistema far partire.

GENTOO va di brutto, WINXP no.

Aggiungo che WINXP era già installato sul PC prima di GENTOO.

Ditemi cosa volete sapere per risolvere il problema che proverò a fornirvelo.

CIAO

GRAZIE in anticipo.Last edited by adam_z on Sat Feb 18, 2006 3:12 pm; edited 1 time in total

----------

## pistodj

prova a postare la config di lilo e il file fstab!

----------

## Tùrin_Mormegil

teoricamente la sezione di lilo riguardante windows dovrebbe essere circa così:

```

other=/dev/hda1

label=windows

boot-as=0x80

```

visto che windows vuole essere installato solo su hda1

----------

## adam_z

allora ho seguito molto fedelmente il manuale di installazione (senza rete) di gentoo:

LILO.CONF

#

boot=/dev/hda

prompt

timeout=150

default=gentoo

#

image=/boot/kernel-2.6.11-gentoo-r3

  label=gentoo

  read-only

  root=/dev/hda3

#

image=/dev/hdb1

  label=windows

#

----------

## RexRocker

 *adam_z wrote:*   

> allora ho seguito molto fedelmente il manuale di installazione (senza rete) di gentoo:
> 
> LILO.CONF
> 
> #
> ...

 

ehm ma se hai linux sul secondo HDD e win sul primo il lilo è sbagliato, mi domando come faccia a partirti linux a questo punto.

se ho capito bene la tua conf dovresti avere

```

image=/boot/kernel-2.6.11-gentoo-r3

  label=gentoo

  read-only

  root=/dev/hdbX

#

image=/dev/hdaX

  label=windows

```

proprio perchè linux è nel secondo HDD (quindi hdb se è il secondary master) e winxp sul primo (il primary master). La conf di lilo che hai messo è corretta perchè è quella del manuale di installazione ma secondo me devi cambiarla alle tue esigenze. Oppure se hai linux in hda3 allora forse winxp è sparito  :Smile: . 

Prova a dare un 

```
fdisk /dev/hda
```

 e una stampa della tabella delle partizioni (-p mi pare che sia l'opzione).

ciao

Rex

----------

## Ic3M4n

 *Tùrin_Mormegil wrote:*   

> visto che windows vuole essere installato solo su hda1

 

questa poi... da dove salta fuori?

io l'ho sempre avuto in punti differenti ed è sempre andato (si fa per dire) bene. diciamo che è sempre partito.

@adam_z: il bbcode esiste per migliorare la leggibilità dei vari post, cerchiamo di utilizzarlo per favore.

 *RexRocker wrote:*   

> Oppure se hai linux in hda3 allora forse winxp è sparito .

 

in effetti sembra proprio che sia così...

----------

## adam_z

allora:

sull'HD principale c'è solo winzoz e funge.

sull'HD secondario c'è linux e funge.

per cambiare da l'uno all'altro uso il bios (scambiando il disco da cui far partire il sistema operativo).

Quando metto HD secondario parte GENTOO o meglio LILO e mi da le due scelte. Se scelgo GENTOO tutto OK. Se scelgo WINZOZ invece si blocca.

Più sopra "Turin-Morgmegil"  nel codice ha una riga in più "boot-as=0x80". A cosa serve?

----------

## RexRocker

adam_z postami quello che ti ho chiesto quando avii linux plz  :Smile: 

senza avere la tua tabella delle partizioni si fa fatica ad aiutarti.

Ripeto: il tuo lilo non ha errori, è lo stesso che ho io (+ o -), pero tutti i device /dev/hdXX per capirci) cambiano a seconda del sistema, senza avere la tabella delle partizioni è difficile aiutarti.

ciao

Rex

----------

## Ic3M4n

 *adam_z wrote:*   

> 
> 
> per cambiare da l'uno all'altro uso il bios (scambiando il disco da cui far partire il sistema operativo).
> 
> 

 

il problema potresti averlo in questo punto, teoricamente sarebbe più semplice lasciare la scelta dell'os da far partire al bootloader piuttosto che al bios.

----------

## adam_z

Premetto: nel bios scelgo di far partire dal disco fisso e poi scelgo quale dei due. Ho disattivato sia A: che CDROM e/o altro. Se disattivo anche la partenza da HD non so cosa potrebbe accadere. Forse bootta dall'HD master (e quindi WINZOZ).

x REXROCKER:

hda è partizionato come da manuale: 1 - boot; 2 - swap; 3 - root; + 4 extended (suddiviso in 5,6,7 -> solo per dati e per ora tutto vuoto).

hdb è partizionato: 1 - WINZOZ; 2 - primaria (era per un altro SO che ora non c'è più e ci sono dati); 3 - ext (dati).

Qualunque cosa chiedete. Spero di aver risposto a tutti.

Ancora GRAZIE.

----------

## bandreabis

Scusa ma hai seguito il suggerimento di Turin?

Se non ti fidi, sappi che per partire windows vuole essere sul HD di boot (che sia hda o hdc - come sul mio pc - poco gli cale), e con quella impostazione gli fai credere di essere lui sul HD di boot.

E' un po' più chiaro?

Andrea

----------

## ProT-0-TypE

perchè lo chiami winzoz se lo usi? che fai sputi nel piatto da cui mangi?   :Laughing: 

Ma la stora che win deve stare nella prima partizione del primo disco è una ca22ata o no? (mi sa molto di ca22ata ma non ho mai verificato..)

----------

## bandreabis

Grazie a LILO o GRUB, che sia ca@@ata o non poco importa alla fine....   :Laughing: 

----------

## BaNdit400

Non potresti far partire Gentoo chiamando LILO o Grub direttamente dall'NT OS Loader? Un meccanismo simile viene messo in pratica con i sistemi Windows 95/98/Me in dual boot con i sistemi Windows NT/2000/XP.

Supponiamo di avere LILO configurato in questo modo nella sezione generale

```
# Parametri generali di avvio

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

prompt

timeout=50

lba32

default=2.6.11.11
```

e supponiamo di voler inserire il codice dell'os loader non nel settore di avvio o non nell'MBR, bensì in un file

```
# Parametri generali di avvio

boot=/bootsect.lnx

map=/boot/map

install=/boot/boot.b

prompt

timeout=50

lba32

default=2.6.11.11
```

Andiamo quindi a preparare il file necessario con il comando

```
dd if=/dev/zero of=/bootsect.lnx count=1 bs=512
```

dopodiché lo andrai a riempire con il codice dell'os loader installato

```
lilo -v
```

quindi salva il tuo bootsect.lnx direttamente nella partizione dove è presente il sistema di boot di NT/2000/XP, ovvero nella partizione (generalmente C:\) dove sono presenti i file ntldr e ntdetect.com.

Adesso prova ad editare il file C:\boot.ini. Per far questo da riga di comando devi prima di tutto cambiare gli attributi del file

```
attrib -s -r -h +a c:\boot.ini
```

e quindi editarlo. La sua struttura sarà più o meno qualcosa del genere (posto il mio...)

```
[boot loader]

timeout=59

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

multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows Server 2003 Standard" /fastdetect
```

e la modificherai aggiungendo una riga con puntamento il codice di boot di Gentoo

```
[boot loader]

timeout=59

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

multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows Server 2003 Standard" /fastdetect

C:\Bootsect.lnx="Gentoo Linux 2005.0"
```

Salva il file e ripristina gli attributi

```
attrib +s +r +h -a c:\boot.ini
```

quindi riavvia e...''tendo'' a garantire il risultato!!   :Very Happy:   :Very Happy:   :Very Happy: 

Rimango in ascolto per domande e chiarimenti (nel mio piccolo, se riesco...)   :Wink: 

Wide Open

Gianluca ''BaNdit400''

----------

## bandreabis

Il metodo più veloce direi...   :Shocked: 

----------

## BaNdit400

 *bandreabis wrote:*   

> Il metodo più veloce direi...  

 

Forse no, anche se a ben vedere sono giusto qualche comando e pochi minuti di lavoro...   :Cool: 

Wide Open

Gianluca ''BaNdit400''

----------

## adam_z

x BANDERABIS

Ho provato ad aggiungere la linea "boot-as=0x80" ma quando vado ad ricompilare lilo.conf con il comando /sbin/lilo mi dice che c'è un errore proprio in quella linea.

x BANDIT400

sono riuscito a crare il file bootsect.lnx poi con il comando "lilo -v" non so se mi ha dato un errore (cosa dovrebbe fare ?).

PROBLEMA: non riesco a copiare questo file nel disco partizionato con NTFS. neanche da root mi permette di scrivere sul quel FS. Mi sai aiutare?

----------

## BaNdit400

 *adam_z wrote:*   

> sono riuscito a crare il file bootsect.lnx poi con il comando "lilo -v" non so se mi ha dato un errore (cosa dovrebbe fare ?).

 

Semplicemente scrive 512 Kb di codice che normalmente andrebbero a finire o nell'MBR o nel settore di avvio. Se ti ha dato uno o più errori allora c'è un problema con la configurazione di lilo, dovresti prima controllare in /etc/lilo.conf se è tutto ok.

 *adam_z wrote:*   

> PROBLEMA: non riesco a copiare questo file nel disco partizionato con NTFS. neanche da root mi permette di scrivere sul quel FS. Mi sai aiutare?

 

Copia il file su una pen disk, su un floppy disk o su una share di un PC in rete. Quindi ripristina il tutto per far partire Windows (dal CD di installazione dovresti attivare la console di ripristino per sistemare il sistema NT OS Loader) e quindi copia lì il tuo file e modifica il boot.ini. Considera che ciò che ti ho proposto si appoggia ''totalmente'' sull'NT OS Loader quindi lo devi avere in perfetta efficienza.

Wide Open

Gianluca ''BaNdit400''

EDIT [08/09/2005, 11:40]: Oggi mi buttano fuori da qui se continuo di questo passo...   :Very Happy:   :Very Happy:   :Very Happy: 

Se non sai come ripristinare il sistema di avvio di Windows XP segui quanto qui riportato:

http://support.microsoft.com/?kbid=314058

Inserisci il CD di installazione di Windows e fai il boot da quello; quindi nella schermata iniziale premere F10 o R per il ripristino.

I comandi che a te servono sono:

```
FIXBOOT

fixboot nome unità:

Questo comando consente di scrivere il nuovo codice del settore di avvio di Windows sulla partizione di sistema. Nella sintassi del comando nome unità indica la lettera dell'unità in cui verrà scritto il settore di avvio. Mediante questo comando è possibile riparare i danni nel settore di avvio di Windows. Con questo comando viene ignorata l'impostazione predefinita che consente la scrittura sulla partizione di avvio del sistema. Il comando fixboot funziona solo su piattaforme x86.
```

```
FIXMBR

fixmbr nome periferica

Utilizzare questo comando per ripristinare il record di avvio principale (MBR) nella partizione di avvio. Nella sintassi del comando nome periferica indica un nome facoltativo di periferica che consente di specificare la periferica per la quale è necessario un nuovo record di avvio principale. Utilizzare questo comando se il record di avvio principale è stato danneggiato da un virus ed è impossibile avviare Windows.

```

Che gli altri mi perdonino...  :Embarassed: 

----------

## adam_z

non ho problemi con WINZOZ (prima avevo due SO e tutoo andava OK poi uno l'ho tolto e spero che sia ancora tutto OK).

Solo che non riesco a copiare il file da linux-gentoo all'HA partizionato con NTFS (nonostante che usi root e i privilegi della directory NTFS siano drwx------).

Adesso riprovo tutto da capo e uso un FD come mi hai suggerito. Solo una cosa, dopo il FD dove salvo bootscet.lnx lo riuscirò a leggere con XP? (te lo chiedo perchè quando uso XP non mi vede l'HD partizionato da linux).

----------

## BaNdit400

 *adam_z wrote:*   

> non ho problemi con WINZOZ (prima avevo due SO e tutoo andava OK poi uno l'ho tolto e spero che sia ancora tutto OK).
> 
> Solo che non riesco a copiare il file da linux-gentoo all'HA partizionato con NTFS (nonostante che usi root e i privilegi della directory NTFS siano drwx------).

 

Aspetta, non vorrei dire una baggianata, ma il supporto ad NTFS di default è in sola lettura e la scrittura è possibile con limiti evidentissimi e con notevoli pericoli per l'integrità del file system.

 *adam_z wrote:*   

> Adesso riprovo tutto da capo e uso un FD come mi hai suggerito. Solo una cosa, dopo il FD dove salvo bootscet.lnx lo riuscirò a leggere con XP? (te lo chiedo perchè quando uso XP non mi vede l'HD partizionato da linux).

 

Formatta il floppy con un file system FAT (FAT16 se non erro), se non ti trovi con Linux fallo da Windows. In Linux inserisci un floppy e digita

```
mkdosfs /dev/fd0u1440
```

e poi montalo con il comando 

```
 mount -t vfat /dev/fd0u1440 /mnt/floppy/
```

copia il file con un bel

```
cp /bootsect.lnx /mnt/floppy/
```

e poi smonta il floppy

```
umount /mnt/floppy
```

così facendo il tuo floppy disk verrà letto anche dall'OS concorrente...   :Very Happy:   :Very Happy:   :Very Happy: 

Wide Open

Gianluca ''BaNdit400''

----------

## adam_z

per ora sto usando la versione di GENTOO dal CD (quella senza rete per intenderci).

E mi sembrava di aver letto da qualche parte o mentre installavo il tutto (forse nelle impostazioni del kernel) che era supportato il NTFS anche per la scrittura (senza più problemi). Mi sbaglio?

Comunque sono riuscito con un vecchissimo dischetto a portare il file in XP.

DUBBI:

dopo il comando dd....

mi dici di digitare il comando "lilo -v" -> cosa dovrebbe fare esattamente? Perchè in risposta mi dice che l'HD 0x81 (quello di GENTOO) ha parametri differenti nel kernel e nel bios (in uno ha 65535-16-63; nell'altro 1024-255-63). Poi mi dice added GENTOO; added WINDOWS; e infine che il file /boot/boot.0300 esiste già.

Tutto OK?

----------

## BaNdit400

 *adam_z wrote:*   

> per ora sto usando la versione di GENTOO dal CD (quella senza rete per intenderci).
> 
> E mi sembrava di aver letto da qualche parte o mentre installavo il tutto (forse nelle impostazioni del kernel) che era supportato il NTFS anche per la scrittura (senza più problemi). Mi sbaglio?

 

Non so che dirti, mi cogli impreparato...   :Rolling Eyes: 

 *adam_z wrote:*   

> Comunque sono riuscito con un vecchissimo dischetto a portare il file in XP.

 

Olé...   :Wink: 

 *adam_z wrote:*   

> 
> 
> DUBBI:
> 
> dopo il comando dd....
> ...

 

Non credo, mi sa che c'è qualcosa di troppo: quando accendi il PC al boot si deve avviare l'NT OS Loader ed in questo devono apparire le varie opzioni di Windows più l'opzione di avvio di Linux. Scegliendo Linux, poi, ti si avvia LILO e da lì  Linux. Non vedo, quindi, a cosa serva una voce ''Windows'' nella configurazione di LILO. Per la geometria del disco forse manca un banale lba32.

Wide Open

Gianluca ''BaNdit400''

EDIT [09/09/2005, 08:55]: Il tuo /etc/lilo.conf è questo, giusto?

```
#

boot=/dev/hda

prompt

timeout=150

default=gentoo

#

image=/boot/kernel-2.6.11-gentoo-r3

label=gentoo

read-only

root=/dev/hda3

#

image=/dev/hdb1

label=windows

#
```

e con la configurazione che stiamo cercando di imporre dovrebbe essere modificato così:

```
#

boot=/bootsect.lnx

prompt

timeout=50

default=gentoo

lba32

#

image=/boot/kernel-2.6.11-gentoo-r3

label=gentoo

read-only

root=/dev/hda3

#

```

controlla solo la ''root'' del sistema operativo 

 *Quote:*   

> Finalmente ho installato GENTOO (dal cd di installazione) nell'HD secondario...

 

in quanto così i conti non mi tornano...

----------

## adam_z

ho rifatto tutto da capo.

- modificato il file /etc/lilo.conf anche con l'opzione lba32 -> ma continua a darmi il WARNING che Kernel e BIOS hanno parametri di geometria differenti per l'HD 0x81.

- comando "dd ..." -> OK

- comando "lilo -v" -> ecco il risultato preciso:

Reading boot sector from /bootsect.lnx

WARNING Kernel & BIOS return different geometries

  Kernel 65535 cyl,   16 heads, 63 sectors

  BIOS     1024     , 255          , 63

Using MENU secondary loader

Calling map_insert_data

Boot image: /boot/Kernel-2.6.11-gentoo-r3

Writing boot sector

/boot/boot.0000 exist - no boot sector backup copy made

- poi ho copiato bootsect.lnx su dischetto e quindi su C:

- modificato BOOT.INI

- ora riavvio e spero bene.

NB: /etc/lilo.conf -> ho modificato anche il parametro del disco: per GENTOO non è più hda ma hdb (perchè partendo dal disco di WIN dovrebbe essere così). Prim quando caricavo GENTOO scambiavo i dischi dal BIOS. Giusto?

----------

## adam_z

SEI UN MITO!   :Very Happy: 

=========

Soltanto una cosa: in lilo.conf ho dovuto (con enorme difficoltà) rimettere hda3 -> come partizione di root.

GENTO vede i dischi hda -> LINUX

.............................hdb -> WINZOZ

anche se da BIOS e da collegamenti sono quello di WINZOZ il master e quello di GENTOO lo slave.

Sai il perchè? (forse perchè quando ho installato GENTOO avevo scollegato quello di WINZOZ per non fare casini.).

NB: rifacendo lilo -v con le ultime modifiche non mi da più il warning sulle geometrie differenti!

----------

## BaNdit400

 *adam_z wrote:*   

> ...GENTO vede i dischi hda -> LINUX
> 
> .............................hdb -> WINZOZ...

 

Strano...  :Confused: 

 *adam_z wrote:*   

> ...anche se da BIOS e da collegamenti sono quello di WINZOZ il master e quello di GENTOO lo slave...

 

Più che altro mi interesserebbe sapere come sono disposti i ponticelli su i due hard disk (MASTER - SLAVE - CABLE SELECT)...

 *adam_z wrote:*   

> NB: rifacendo lilo -v con le ultime modifiche non mi da più il warning sulle geometrie differenti!

 

Meglio così   :Very Happy: 

Wide Open

Gianluca ''BaNdit400''

----------

## adam_z

i ponticelli li ho messi su entrambi su cable select (così per non fare casini).

poi il disco di WINZOZ è attaccato al primo connettore (quello a metà cavo)

il disco di GENTOO è attaccato al connettore all'estremità del cavo.

Quindi in linea teorica il mio ragionamento era giusto di mettere linux su hdb non scambiando più i dischi da bios?

----------

## BaNdit400

 *adam_z wrote:*   

> i ponticelli li ho messi su entrambi su cable select (così per non fare casini).

 

Ed invece mi sa che il problema è proprio lì....   :Confused: 

 *adam_z wrote:*   

> poi il disco di WINZOZ è attaccato al primo connettore (quello a metà cavo)
> 
> il disco di GENTOO è attaccato al connettore all'estremità del cavo.

 

Esatto: le periferiche UATA hanno una priorità sulle connessioni elettriche sul bus. Il cavo 80 pin *DEVE* essere installato con il connettore blu sulla scheda madre, il connettore nero sul master ed il connettore grigio sullo slave. Il sistema ''cable select'' funziona in quanto il controller riesce a discriminare la posizione della periferica sulla piattina ed in virtù di essa le assegna il titolo di master o slave. Il primo connettore, quello a metà cavo, è quello grigio equivalente allo slave: quindi quel disco è /dev/hdb. L'altro, invece, è installato sull'ultimo connettore, quello nero, corrispondente al master: quindi quel disco è /dev/hda (in accordo alla configurazione di Gentoo).

 *adam_z wrote:*   

> 
> 
> Quindi in linea teorica il mio ragionamento era giusto di mettere linux su hdb non scambiando più i dischi da bios?

 

Se tutto funziona lascia così   :Very Happy: 

Alla prima reinstallazione di Windows, però, prova a imporre i ruoli alle periferiche (master o slave, non cable select) e collegale sulla piattina in funzione dei ruoli assegnati.

Per curiosità: posta il contenuto di /etc/fstab e di C:\boot.ini...mi sorge il sospetto che il reparto dischi del tuo PC è un po' incasinato...  :Mr. Green: 

Wide Open

Gianluca ''BaNdit400''

----------

## adam_z

non mi ero accorto di questa tua richiesta....

comunque hai ragione -> è molto incasinato.

----------

## SilverXXX

Il prolema in realtà è un filino diverso...... Windows se è su un hd non primario non fa il boot.

----------

