# [RISOLTO] SATA Raid su VT8237

## Yota_VGA

Salve, a volte mi faccio vivo (con qualche problemino di turno  :Wink:  )

Allora, uso una scheda madre via da ormai parecchi mesi, ed ho usato un disco sata per un mesetto circa, ma ora mi ritrovo a voler intraprendere la via del raid ed ho qualche dubbio.

Ho dato un'occhiata a vari post, tra cui https://forums.gentoo.org/viewtopic-t-191640-highlight-vt8237+raid.html, che rimanda in particolare a https://forums.gentoo.org/viewtopic.php?t=128781, e con questo mi sono fatto un'idea di cosa mi serve, però ho ancora qualche cosa non particolarmente chiara. (ammetto di non aver letto con la massima attenzione cmq i post).

Da quel che ho capito (correggetemi se sbaglio) si tratta di un raid parzialmente assistido ta hadrware, e per accedervi ho bisogno del dmraid.

1) Il dmraid si trova sulla gentoo minimal? Ho volendo trovato una iso gentoo con dmraid girovagando, però se c'è già nella live risparmio tempo e cd  :Smile:  In caso ho anche cmq un knoppix già pronto, se basta  :Smile: 

La mia situazione è la seguente: Ho già installato windows xp sulla prima parte del raid (un raid 1), e vorrei mettere linux sulla seconda. ho già un'installazione gentoo (di un mesetto fa) da copiargli su para para, e questo non è un problema (basta un bel cp -a), però dovrò cambiare alcuni file di conf. In particolare non ho capito:

2) Come cambiare lilo.conf? Sinceramente vorrei evitare grub o lilo patchato (che ho trovato entrambi) perché uso una versione già patchata di lilo e non vorrei cambiarla. Se però non se ne può fare a meno posso anche cambiare. Considerate che ovviamente ho bisogno del dual boot (win/linux  :Wink:  ). Non tanto per me ma per mio fratello  :Very Happy: 

3) È sufficente usare quello script presente sul secondo link? Oppure è necessario fare altro?

4) Fstab va cambiato? E se si come?

5) Oltre all'opzione del kernel che cita il link (Device Drivers --> Multi-device support ) è necessario altro dalla vecchia configurazione (che cmq faceva funzionare i sata senza raid)?

Molte probabilmente saranno domande piuttosto banali, ma sebbene stia accumulando una discreta esperienza con gli unix (e linux in particolare) di raid non ho mai toccato nulla di nulla  :Smile: 

Grazie per le risposte che mi arriveranno e per la pasienza  :Wink: 

----------

## Yota_VGA

Ehm, visto proprio ora come editare fstab, la domanda 4 non vale più  :Wink: 

----------

## Yota_VGA

Qua c'è anche qualche informazione (e patch e cose così) inerenti al boot.

http://tienstra4.flatnet.tudelft.nl/~gerte/gen2dmraid

----------

## Yota_VGA

Ho provato l-iso data in dotazione, ho seguito le guide apposite ma ho un errore:

livecd root# dmraid -ay

via_eiibgigei already active

ERROR: dos: reading /dev/mapper/via_eiibgigei[Invalid argument]

A sto punto mi accontento MOMENTANEAMENTE di mettere in un pata che possiedo linux, ma come minimo ho bisogno del dual boot, e vorrei anche poter leggere il raid. In ogni caso sarebbe solo una soluzione momentanea, ma se qualcuno ha suggerimenti sono ben accetti  :Smile: 

----------

## Yota_VGA

(link) VIA VT8237 South Bridge, using VT6420 Serial ATA chip  fakeraid. libata's "sata_via" driver set provides beta-level support a/o 2004-02-25 (included in kernel v. 2.6.3). Recent 2.4.x drivers/ide code should support it, too. Proprietary drivers available.

da http://linuxmafia.com/faq/Hardware/sata.html

E difatti, fatta la prova, riesco a leggere tutto correttamente  :Smile: 

Ora rimane solo il boot. Per questo sono ancora in alto mare, vedremo  :Smile: 

----------

## Scen

Beh, l'unica modifica che devi fare nel bootloader, a mio avviso, è modificare il parametro del kernel

```

root=/dev/partizione_di_root

```

dove solitamente partizione_di_root è hdaX o sdaX

Nel tuo caso, essendo gentoo installato su un raid mirror hardware, dovresti capire come viene mappato il device; per esempio io ho un'installazione Gentoo su un RAID HW gestito da un controller Promise Fasttrack TX2000, e il device relativo è /dev/ataraid/disc0/disc.

Nel caso tuo non so, ma mi viene una domanda:

 *Yota_VGA wrote:*   

> E difatti, fatta la prova, riesco a leggere tutto correttamente

 

Accedendo a che device?  :Question: 

----------

## earcar

[MOD]Non facciamo del nostro post un blog, usiamo il pulsante EDIT per editare il post precedente[/MOD]

@MODs: scusate se mi sono permesso, ma è fastidiosissimo  :Wink: 

----------

## Yota_VGA

 *earcar wrote:*   

> [MOD]Non facciamo del nostro post un blog, usiamo il pulsante EDIT per editare il post precedente[/MOD]
> 
> @MODs: scusate se mi sono permesso, ma è fastidiosissimo 

 

hai ragione earcar, alla prossima eviterò  :Smile: 

Per quanto riguarda il resto ho risolto tutto. Mi è costata parecchia fatica ma alla fine era molto più semplice del previsto. Il raid viene rilevato (ho visto dai messaggi che da inizialmente il kernel) e viene messo in /dev/sda. Alla fine sono passato a grub, e non penso lo cambierò avendolo visto più da vicino, è davvero bello  :Very Happy: 

L'unico problema che avevo avuto inizialmente è che (non so se dipenda dalla mia cheda madre o meno) (hd0) è il disco di boot, e quindi cambia a seconda di quale disco di boot si sceglie. All'inizio mi ha causato un po' di problemi non aver capito quello ed h' avuto anche la necessità di editare device.map. In ogni caso ecco i miei files di conf per chi avesse un problema simile:

grub.conf:

```

default 0

timeout 3

splashimage=(hd0,2)/grub/splash.xpm.gz

title=windows

rootnoverify (hd0,0)

makeactive

chainloader +1

title=gentoo

root (hd0,2)

kernel /bzImage root=/dev/sda2 video=vesafb:mtrr,ywrap,1280x1024-32@75

```

device.map:

```

(fd0)   /dev/fd0

(hd0)   /dev/sda

(hd1)   /dev/hda

```

Un grazie cmq anche a Scen  :Very Happy: 

Grazie a tutti ed alla prossima  :Smile: 

Edit:

Mi correggo. La situazione è più rosea di quel che volevo fare momentaneamente ma non è apposto. Riesco a fare tranquillamente il boot, ma mentre windows è in raid linux rimane ancora in uno solo dei dischi.

Non capisco come mi sia sfuggito prima, in ogni caso a quanto pare stà tutto quanto su /dev/sda e /dev/sdb. Penso (visti i messaggi che vengono visualizzati al boot) che un device adatto per il raid ci sia e sia solo da scoprire quale, ma se provo con il contenuto di /dev/ataraid mi dice che non riesce ad aprire i device. Immagino quindi che non siano questi.

All'avvio mi da

```

Aug  5 19:45:01 sarin md: Autodetecting RAID arrays.

Aug  5 19:45:01 sarin md: autorun ...

Aug  5 19:45:01 sarin md: ... autorun DONE.

```

ma non riesco comunque ad accedere ne a /dev/md0 ne a /dev/md/0. Idee?

----------

## Yota_VGA

Finalmente ce l'ho fatta  :Very Happy: 

Per fare tutto ho usato il dmraid. Vi spiego subito come fare  :Smile: 

Faccio notare che il dmraid ancora è SPERIMENTALE. Non dovrebbe dare problemi ma NON C'È ALCUNA GARANZIA!

Non dovreste cmq avere problemi se non farete errori  :Smile: 

Per prima cosa serve dmraid e forse anche dmsetup, che trovate sul portage facendo

```

# emerge -v device-mapper dmraid

```

Quindi bisogna ricompilare il kernel con alcune opzioni.

Nel mio caso è via_eiibgigei. A questo punto è necessario creare i device all'avvio.

Attenzione, al primo riavvio potrebbe essere necessario disabilitare RC_DEVICE_TARBALL in /etc/conf.d/rc. Potrete riattivarlo in un secondo momento.

In Device Drivers -> Multi-device support bisogna abilitare il Device mapper support e poi le voci utili per il proprio raid (nel mio caso Mirror target) (non come moduli ma built-in ovviamente).

Dopodicché bisogna rilevare il nome del proprio raid:

```

# dmraid -t -ay

via_eiibgigei: 0 490234751 mirror core 2 64 nosync 2 /dev/sda 0 /dev/sd

#

```

Nel mio caso è via_eiibgigei. A questo punto è necessario creare i device all'avvio.

Attenzione, al primo riavvio potrebbe essere necessario disabilitare RC_DEVICE_TARBALL in /etc/conf.d/rc. Potrete riattivarlo in un secondo momento.

Per riconoscere all'avvio è sufficente a questo punto creare ed includere (con grub o lilo) un initrd e passare delle opzioni al kernel.

L'initrd viene generato con

```

# genkernel --dmraid initrd

```

e bisogna passare al kernel l'opzione dodmraid=nomedevice. Nel mio caso dodmraid=via_eiibgigei. Fatto questo non c'è altro da fare, troverete i device in /dev/mapper/, nel mio caso /dev/mapper/via_eiibgigei, /dev/mapper/via_eiibgigei1 ecc ecc ecc  :Smile: 

Buona raidata a tutti  :Very Happy: 

----------

