# Usare i nuovi drivers PATA del kernel 2.6.20

## VegetaSSJ5

Salve a tutti! Dal kernel 2.6.19 sono stati inclusi nel kernel linux i nuovi drivers SATA/PATA. Nel menu di configurazione del kernel vi si accede con il percorso

Device drivers --> Serial ATA (prod) and Parallel ATA (experimental) drivers

Per utilizzarli sono andato "a naso" visto che non ho trovato nessuno stralcio di indicazione su internet, per cui innanzitutto ho disabilitato tutti i vecchi drivers ATA, e poi ho inserito staticamente le voci (nel menu indicato qui sopra) indicate con ATA device support e AMD/NVidia PATA support (Experimental) (dato che ho un chipset nforce2 che gestisce il mio hd ide).

Tuttavia provando ad avviare il sistema con il kernel configurato in questo modo mi va in kernel panic dicendo Please append a correct "root=" boot option. Nel menu di configurazione di lilo la voce root Ã¨ rimasta com'Ã¨ sempre stata, ovvero root=/dev/hda2.

Come si riesce ad avviare il sistema utilizzando questi nuovi drivers?

Inoltre cosa introducono questi nuovi drivers rispetto ai vecchi?

Grazie.

----------

## zolar czakl

https://forums.gentoo.org/viewtopic-t-553008.html?sid=feeb073195157fd5d6cb26f39aba61df#4007385

Tutti i dischi diventano /dev/sd*.

----------

## VegetaSSJ5

 *zolar czakl wrote:*   

> https://forums.gentoo.org/viewtopic-t-553008.html?sid=feeb073195157fd5d6cb26f39aba61df#4007385
> 
> Tutti i dischi diventano /dev/sd*.

 

ok! perÃ² ho provato anche impostando root=/dev/sda2 ma ricevo sempre lo stesso errore!

----------

## crisandbea

 *VegetaSSJ5 wrote:*   

>  *zolar czakl wrote:*   https://forums.gentoo.org/viewtopic-t-553008.html?sid=feeb073195157fd5d6cb26f39aba61df#4007385
> 
> Tutti i dischi diventano /dev/sd*. 
> 
> ok! perÃ² ho provato anche impostando root=/dev/sda2 ma ricevo sempre lo stesso errore!

 

entrare con un liveCd è verificare come ti viene riconosciuto???   :Wink: 

----------

## VegetaSSJ5

si ma dovrei entrare con un live cd che usa questi nuovi drivers e non quelli vecchi. quale live cd usa appunto questi drivers nuovi? al momento ho sottomano la knoppix 5.1.1, puÃ² andar bene?

----------

## djinnZ

 *VegetaSSJ5 wrote:*   

> ok! perÃ² ho provato anche impostando root=/dev/sda2 ma ricevo sempre lo stesso errore!

 

Ma hai impostato root=/dev/sda2 in grub/lilo o in fstab?

Prova così: imposta in fstab /dev/disk/by-label/<label del disco di root> e nella linea di comando /dev/sda2. Così puoi sempre tenere il kernel vecchio tra l'altro.

----------

## riverdragon

 *djinnZ wrote:*   

> Prova così: imposta in fstab /dev/disk/by-label/<label del disco di root> e nella linea di comando /dev/sda2. Così puoi sempre tenere il kernel vecchio tra l'altro.

 

Io ho solo by-id, by-path e by-uuid... ma sembra proprio una figata!

Domanda, ma i supporti usb che vengono ora montati su /dev/sda dove finiscono? /dev/sdc?

----------

## noppy

ho provato quel driver per chipset con il kernel 2.6.19 su amd64 e non funzionava nulla percio' avevo optato per il vecchio pata , e non e' l'unico problema riscontrato , sempre su amd64 dal kernel 2.6.19 (il 18 non l'ho provato , funziona di sicuro dal 17 in giu) non mi va piu' il supporto i2o per il controller scsi raid e sempre dal 18 in su , pero' su x86 , non funziona piu' correttamente il controller sata vitesse .

Devo ancora provare i kernel 2.6.20 (sia sotto amd64 che sotto x86) pero' ho poche speranze

----------

## djinnZ

si vede che non hai mai pensato di impostare le label (tune2fs, reiserfstune, xfs_admin etc.).

Le unità USB vengono accodate alle ata sempre che non decidi di scrivere una regola di udev.

Vedi che se esistono due partizioni con la stessa label il by-label viene disabilitato (e non vedi più nessuna delle due) e viene aggiornato solo all'avvio (su questo devo investigare prima o poi) quindi per montare le usb non conviene.

by-uuid non te lo consiglio perchè la uuid viene assegnata casualmente (se non diversamente specificato) ed è poco pratica ma in alternativa il by-path non è male, ricorda solo che devi usare gli escape anche in fstab se non ricordo male.

Comunque con .19 la nuova libata non mi funzionava per nulla, con .20 non ho ancora provato ma non sono tanto fiducioso. Nei messaggi del kernel riesci a vedere se ti ha riconosciuto i dischi? In caso negativo ti conviene usare la nuova libata solo per le unità sata e lasciare il pata nella vecchia libreria (o la hanno tolta di mezzo?)

----------

## VegetaSSJ5

ragazzi la mia situazione Ã¨ questa:

```
localhost ~ # ls -al /dev/disk/by-id/

totale 0

drwxr-xr-x 2 root root 140 21 apr 14:49 .

drwxr-xr-x 5 root root 100 21 apr 14:49 ..

lrwxrwxrwx 1 root root   9 21 apr 14:49 ata-Maxtor_6L200P0_L40DD00H -> ../../hda

lrwxrwxrwx 1 root root  10 21 apr 14:49 ata-Maxtor_6L200P0_L40DD00H-part1 -> ../../hda1

lrwxrwxrwx 1 root root  10 21 apr 14:49 ata-Maxtor_6L200P0_L40DD00H-part2 -> ../../hda2

lrwxrwxrwx 1 root root  10 21 apr 14:49 ata-Maxtor_6L200P0_L40DD00H-part3 -> ../../hda3

lrwxrwxrwx 1 root root  10 21 apr 14:49 ata-Maxtor_6L200P0_L40DD00H-part4 -> ../../hda4
```

hda1 -> win

hda2 -> root

hda3 -> swap

hda4 -> dati

come va impostata la variabile root=... in /etc/lilo.conf? e come va impostata la riga per la partizione di root in /etc/fstab?

----------

## crisandbea

puoi vederlo qui  e qui

ciao

----------

## riverdragon

Qualche tip sulla base della mia esperienza appena fatta:

Ove possibile è meglio usare i label, che rimangono costanti; per le partizioni vfat si deve usare mlabel dagli mtools e sistemare /etc/mtools/mtools.conf, per le partizioni ntfs non so.

La swap non è etichettabile, che io sappia, così come il drive cd-dvd, bisogna usare le variabili nella cartella by-path e by-id ma (!!!) con i vecchi driver la partizione era identificata con pci-0000:00:1f.1-ide-0:0-part6 (by-path) e ide-ATA_FUJITSU_MHV2100_NT01T5725RMW-part6 (by-id) mentre con i nuovi la stessa partizione è diventata pci-0000:00:1f.1-scsi-0:0:0:0-part6 e scsi-SATA_FUJITSU_MHV2100_NT01T5725RMW-part6 quindi fstab va modificato di conseguenza.

In fstab le righe vanno inserite senza caratteri di escape.

Problemino attuale (leggermente OT), sul desktop vedo doppie le icone dei volumi montati.

----------

## djinnZ

Non ti seguo. Hai riavviato con il vecchio kernel? (immagino di si)

I link in condizioni normali dovrebbero essere cambiati in sda*.

Comunque in lilo.conf  metti la 

```
<root=/dev/sda2>/<root=/dev/hda2>
```

 che viene montata in ro all'inizio (se usi il ramdisk invece è root=/dev/ram newroot=/dev/<hda2/sda2>) in fstab la root che viene rimontata rw dall'rc quindi

```
/dev/disk/by-id/ata-Maxtor_6L200P0_L40DD00H-part2 / <fs type> <opt> <pass>
```

.

Verifica che il disco venga rilevato dal kernel, se è sda te lo deve dire. Dato che la nuova libata non funziona benissimo (per i device ata, per i sata è sempre la stessa) è possibile che non venga riconosciuto correttamente.

----------

## djinnZ

 *riverdragon wrote:*   

> La swap non è etichettabile, che io sappia, così come il drive cd-dvd

 

è etichettabile con -v1 -L label ma se imposti la cancellazione della swap in rc.conf viene ricreata senza label e con un nuovo uuid ad ogni boot.

il cd mi pare che funzionicchia (non sempre) ma prenderebbe sempre la label del cd che trova inserito al boot quindi non serve proprio a niente.

----------

## riverdragon

Non riesco a far riconoscere il drive dvd.

Ho aggiunto il supporto per il chipset ich (ho un centrino duo), e lasciato quello per i cdrom ATAPI, ma non viene proprio visto. Qualcuno ha qualche idea?

Non riuscendo a capire da dove possa provenire il problema delle doppie icone sul desktop (sono su gnome) sono tornato al vecchio e funzionante 2.6.19.

----------

## flocchini

io mi tengo il 2.6.20 ma le vecchie librerie x le porte ide, i driver nuovi mi creano un sacco di casini e basta quindi x ora nada.

----------

## VegetaSSJ5

 *flocchini wrote:*   

> io mi tengo il 2.6.20 ma le vecchie librerie x le porte ide, i driver nuovi mi creano un sacco di casini e basta quindi x ora nada.

 

idem...  :Laughing: 

----------

## mambro

Ma tutte quelle cose che prima faceva hdparm ora chi le fa?

Prima avevo questo per hdparm

```

hda_args="-d1 -c1 -m8"

hdb_args="-d1 -c1 -m16"

```

C'è bisogno di fare qualcosa o le opzioni le setta già il kernel?

Ah e per i cdrom servono i drivers vecchi?

----------

## Cazzantonio

mi pare che l'ultima versione di hdparm funzioni con i sata... non ne sono sicuro tuttavia.

----------

## mambro

mmm ho l'ultima versione ma pare nn funzionare

```

mambro@terra ~ $ eix -s hdparm

[I] sys-apps/hdparm

     Available versions:  6.3 6.6 6.9 6.9-r1

     Installed versions:  6.9-r1(21:24:03 01/05/2007)

     Homepage:            http://sourceforge.net/projects/hdparm/

     Description:         Utility to change hard drive performance parameters

mambro@terra ~ $ su

Password: 

terra mambro # hdparm /dev/sda

/dev/sda:

 IO_support   =  0 (default 16-bit)

 readonly     =  0 (off)

 readahead    = 256 (on)

 geometry     = 2482/255/63, sectors = 39876480, start = 0

terra mambro # hdparm -d1 /dev/sda

/dev/sda:

 setting using_dma to 1 (on)

 HDIO_SET_DMA failed: Inappropriate ioctl for device

```

----------

## mambro

Sono tornato al vecchio. Riproverò meglio fra un paio di kernel   :Wink: 

----------

## riverdragon

Con il kernel 2.6.22 ho provato ad abilitare nuovamente le nuove librerie, e ora funziona (sembra) tutto, quindi vi scrivo un paio di appunti che potrebbero tornarvi utili.

In fstab è meglio tralasciare i link alle partizioni tramite /dev/disk/by-{label,id,uuid} in quanto causano un "doppio montaggio" delle partizioni; il termine non è corretto, ma il sistema rileva il punto di montaggio specificato e ne crea un secondo quando scopre che sdaX è montabile. In gnome ciò mi causava il raddoppio delle icone dei volumi sul desktop, specificare sdaX le ha riportate "alla normalità".

Il drive dvd è visto come /dev/sr0; in fstab è bene specificare questo device per far montare automaticamente i dischi a hal o si incorre nel problema precedentemente descritto; in /etc/conf.d/local.start ho aggiunto

```
# crea i link per il lettore dvd

ln -s /dev/sr0 /dev/dvd

ln -s /dev/sr0 /dev/dvdrw

ln -s /dev/sr0 /dev/cdrom

ln -s /dev/sr0 /dev/cdrom0
```

per far funzionare tutte le applicazioni che cercano nei posti specificati: ora infatti l'unico link che ho trovato è /dev/dvd2.

Ricordatevi di modificare il link alla partizione in grub!  :Laughing:  

----------

