(Solucionado) Diferencias de geometria entre GRUB y Ubuntu/BIOS?

Imagen de sesies
0 puntos

Hola a todos,

Me presento, soy nuevo en esto de Ubuntu y llevo varios meses trasteando con él y sin necesidad de arrancar el "otro" SO....

Os cuento mi "pequeño" problema. Desde que instalé Ubuntu (6.10) me daba la sensación que el rendimiento de mi ordenador (pentium IV a 2.4 Ghz) había descendido así que me puse a buscar razones y llegué a la conclusión (gracias a este foro que ya me ha ayudado en otras ocasiones) de que el disco duro donde está instalado ubuntu (Seagate ST340823A) no tenía activado el DMA

$ sudo hdparm /dev/hdb
Password:

/dev/hdb:
multcount = 0 (off)
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 65535/16/63, sectors = 78165361, start = 0

así que siguiendo las instrucciones de otros posts en este foro intenté activarlo, primero hice un test de velocidad:

$ sudo hdparm -tT /dev/hdb
Password:

/dev/hdb:
Timing cached reads: 1592 MB in 2.00 seconds = 795.95 MB/sec
Timing buffered disk reads: 8 MB in 3.03 seconds = 2.64 MB/sec

despues activé el DMA con:

$ sudo hdparm -d1 /dev/hdb

/dev/hdb:
setting using_dma to 1 (on)
using_dma = 1 (on)

después active la transferencia de 32 bits y la lectura de varios sectores en la misma interrupcion con:

$ sudo hdparm -c3 -m16 /dev/hdb

/dev/hdb:
setting 32-bit IO_support flag to 3
setting multcount to 16
multcount = 16 (on)
IO_support = 3 (32-bit w/sync)

Volví a realizar el test de velocidad y mejoró:

$ sudo hdparm -tT /dev/hdb

/dev/hdb:
Timing cached reads: 1564 MB in 2.00 seconds = 780.39 MB/sec
Timing buffered disk reads: 90 MB in 3.03 seconds = 29.68 MB/sec

Ejecute para comprobar lo siguiente:

$ sudo hdparm -i /dev/hdb

/dev/hdb:

Model=ST340823A, FwRev=3.07, SerialNo=7EF1H73Q
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=1024kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78165360
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4

* signifies the current active mode

Para que los cambios fueran permanentes, siguiendo las instrucciones edité el fichero /etc/hdparm.conf añadiendo lo siguiente:

/dev/hdb {
dma = on
mult_sect_io = 16
io32_support = 3
}

Reinicié el equipo y aquí viene mi problema, el DMA en el disco duro no aparece activado. Investigando un poco comprobé los siguientes mensajes en el arranque (mensajes que supuse eran errores debidos a sectores defectuosos del disco duro) y que se producen desde que instalé Ubuntu:

[17179622.632000] hdb: task_in_intr: error=0x10 { SectorIdNotFound }, LBAsect=78 230639, sector=78165360
[17179622.632000] ide: failed opcode was: unknown
[17179622.804000] hdb: task_in_intr: status=0x59 { DriveReady SeekComplete DataR equest Error }

estas lineas aparecen repetidas veces como si estuviera reintentado algo y además aparece lo siguiente:

[17179631.172000] ide: failed opcode was: unknown
[17179631.312000] hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
[17179631.312000] hdb: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=781653 60, sector=78165360
[17179631.312000] ide: failed opcode was: unknown
[17179631.312000] hdb: DMA disabled
[17179631.648000] ide0: reset: success

 

Así que al final buscando el significado de estos errores encontré a alguien con el mismo problema que yo pero que no sabía como solucionarlo, siento mucho que el enlace esté en francés pero viene a decir que el GRUB no detecta correctamente la geometría de mi disco duro:

http://www.developpez.net/forums/showthread.php?t=475405

Entonces encontré otra solución en http://www.ubuntu-es.org/index.php?q=node/1308 proporcionada por Chabivi y por un momento ví la luz así que amplié la información con http://lwn.net/Articles/86835/ y tampoco pude continuar al decirme que

$ sudo sfdisk -d /dev/hdb > MyPartitionTable.txt

$ cat MyPartitionTable.txt
# tabla de particiones de /dev/hdb
unit: sectors

/dev/hdb1 : start= 63, size= 24579387, Id= c
/dev/hdb2 : start= 24579450, size= 51327675, Id=83, bootable
/dev/hdb3 : start= 75907125, size= 2249100, Id= 5
/dev/hdb4 : start= 0, size= 0, Id= 0
/dev/hdb5 : start= 75907188, size= 2249037, Id=82

$ sudo cat MyPartitionTable.txt | sfdisk --no-reread --force -H255 /dev/hdb
/dev/hdb: Permiso denegado

sfdisk: No se puede abrir /dev/hdb para lectura-escritura

Al darme este error ya no se que hacer. Si a alguien le ha pasado algo parecido le agradecería que me orientara porque ya no sé por donde más puedo buscar.

 

Gracias a todos los que hayais llegado hasta aquí...

 

 

 

Imagen de JuanCampos
+1
0
-1

Leer tu mensaje a sido para mi una fuente de aprendizaje sobre como manejar el hard via consola.

Impresionante.

Claro que he probado algunas de las opciones que pones

sudo hdparm /dev/sda

/dev/sda:
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 30401/255/63, sectors = 488397168, start = 0
juan@juan-desktop:~$ sudo hdparm -tT /dev/sda

/dev/sda:
Timing cached reads: 1642 MB in 2.00 seconds = 820.65 MB/sec
Timing buffered disk reads: 236 MB in 3.02 seconds = 78.22 MB/sec

 

Pero al tener un HD sata no se si se puede dañar el disco al activar el dma o al modificar la velocidad de transferencia ??

Un saludo

 

Juan

 

 

Ubuntu 7.10 ( 686) en un AMD 64 Bits
Vamos a cambiar el mundo

+1
0
-1

Ahora uso maverik 64
Vamos a cambiar el mundo

Imagen de Julius-Caesar
+1
0
-1

No puedo ayudarte pero, un pequeño comentario:

 

En el último comando que pones, creo que cometes un error, omites sudo...

 

$ sudo cat MyPartitionTable.txt | sudo sfdisk --no-reread --force -H255 /dev/hdb

 

Por eso te da la respuesta:

 

/dev/hdb: Permiso denegado

sfdisk: No se puede abrir /dev/hdb para lectura-escritura

 

 

+1
0
-1
Imagen de Goyo
+1
0
-1

En efecto el problema que se ve inmediatamente es ese, aunque creo que el primer sudo (para hacer cat) no hace falta. Puede ser un poco lioso mezclar sudo y tuberías, en caso de no aclararse basta hacerse root de verdad y luego escribir los comandos pelados, sin sudo:

$ sudo su
# cat MyPartitionTable.txt | sfdisk --no-reread --force -H255 /dev/hdb
# exit

No olvidarse del exit para abandonar la consola de root, que no debe permanecer abierta más de lo imprescindible por si las moscas... 


Equipo de moderadores
Normas

Documentación
+1
0
-1
Imagen de sesies
+1
0
-1

Estoy por apostar que el problema es ese, el mal uso de sudo.

Gracias Goyo, lo probaré y os comentaré el resultado. 

+1
0
-1
Imagen de tHatdUde
+1
0
-1

Hola sesies, he leido el post y me he puesto a comprobar si tenía activado dma en mi disco duro y resulta que tenemos el mismo o muy parecido, pero sin que yo haya cambiado nada ya lo tengo activado

$ sudo hdparm -i /dev/sda

/dev/sda:

 Model=ST340823A, FwRev=3.11, SerialNo=7EF2A1XD
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=unknown, BuffSize=512kB, MaxMultSect=16, MultSect=?16?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78165360
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1,2,3,4,5

 * signifies the current active mode

 

$ sudo hdparm -tT /dev/sda

/dev/sda:
 Timing cached reads: 1568 MB in  2.00 seconds = 783.79 MB/sec
 Timing buffered disk reads: 90 MB in  3.03 seconds =  29.67 MB/sec

He comprobado el fichero /etc/hdparm.conf y están todas las líneas comentadas excepto una que dice quiet, asi que parece que no deben ir por ahí los tiros.

No entiendo de este tema pero si sabes de algún otro fichero que influya me dices y lo posteo para comparar a ver si sacamos qué es lo que está mal.

+1
0
-1
Imagen de sesies
+1
0
-1

Gracias, lo tendré en cuenta.

+1
0
-1
Imagen de sesies
+1
0
-1

Hola tHatdUde

La única diferencia que veo entre nuestro discos duros es la revisión del firmware, el tuyo es más moderno 3.11 mientras que el mio es 3.07, además de que tú lo tienes como sd y yo como hd, igual tiene algo que ver. 

podrías  enviarme el resultado del siguiente comando?

$ cat /proc/ide/sda/geometry 

A mí  $ cat /proc/ide/sda/geometry me devuelve lo siguiente:

physical     16383/16/63
logical      65535/16/63

y del siguiente otro?

$ sudo hdparm /dev/sda

a mi $ sudo hdparm /dev/hdb me devuelve

dev/hdb:
 multcount    =  0 (off)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 65535/16/63, sectors = 78165361, start = 0
 

Muchas gracias 

+1
0
-1
Imagen de tHatdUde
+1
0
-1

Hola sesies, el directorio /proc/ide/ solo contiene un fichero llamado drivers, de modo que el primer comando resulta: No existe el fichero o directorio

$ sudo hdparm /dev/sdc

/dev/sdc:
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 4865/255/63, sectors = 78165360, start = 0

Tengo 4 discos duros y al reiniciar a veces se intercambian /dev/sda con /dev/sdc y /dev/sdb con /dev/sdd, por eso ahora es sdc el que ayer era sda (esto causaba que no se montasen en el inicio varios de ellos asi lo solucioné poniendolos en fstab por UUID y así ningún problema)

 

Mira el último comentario de este link https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/110636 es posible que el problema venga de un conflicto de drivers ide y sata

+1
0
-1
Imagen de sesies
+1
0
-1

Hola tHatdUde

He probado lo que decía el último comentario del link pero tampoco ha funcionado. 

También he probado añadiendo

command_line {
    hdparm -d1 -c3 -m16 /dev/hdb
}

en /etc/hdparm.conf esperando que se ejecutara después de arrancar pero tampoco he tenido suerte.

 Por cierto mi versión de kernel es 2.6.15-27-386.

Muchas gracias.

 


+1
0
-1
Imagen de Goyo
+1
0
-1

Lo que me recuerda... ¿por qué no pruebas una versión más reciente?


Equipo de moderadores
Normas

Documentación
+1
0
-1
Imagen de sesies
+1
0
-1

 Por cierto mi versión de kernel es 2.6.15-27-386.
 
Buceando por internet encontré algún sitio que decía que había problemas con las librerías ide de ciertas versiones del kernel y que versiones superiores utilizaban la librería libata que solucionaba los problemas con los discos duros Seagate.
 
Había pensado en cambiar de version de kernel pero se me plantean varias dudas:
- yo tengo instalada una que acaba en 386 y mi equipo es un pentium iv, ¿no debería instalar una 686?
- ¿qué versión me recomendarías?
- ¿puede actualizarse el kernel sin perder las configuraciones de la tarjeta nvidia y sobre todo (que me costó un montón que funcionara) de la wifi usb c54ru de conceptronic?

Gracias.

+1
0
-1
Imagen de Goyo
+1
0
-1

Hombre, yo me refería a actualizar la distribución. Los controladores que instalaras aparte de los que vienen con la distribución tendrías que volver a instalarlos.

Pero para usar una versión posterior del kernel sin actualizar la distribución supongo que tendrías que compilarlo junto con todos los módulos.


Equipo de moderadores
Normas

Documentación
+1
0
-1
Imagen de sesies
+1
0
-1

Perdona pero es que estoy un poco perdido. Yo tengo instalado Ubuntu 6.10 (Dapper Drake)

Cuando dices actualizar la distribución ¿te refieres a que instale las actualizaciones que tenga disponibles en el equipo que se han descargado de internet (las que aparecen al lado del reloj) o a que me descargue por ejemplo Ubuntu 7.10 y actualice con ese CD (si es que es posible actualizar)?

De todas formas, antes de dar ese paso, voy a intentar configurar algo para que en el inicio se ejecuten los comandos necesarios para activar el DMA del disco duro.

 Gracias una vez más.

+1
0
-1
Imagen de Goyo
+1
0
-1

Me refería a lo segundo, sobre todo porque si hay alguna novedad importante en el kernel no no vendrá en las actualizaciones para la Dapper (que es 6.6, no 6.10).


Equipo de moderadores
Normas

Documentación
+1
0
-1
Imagen de jaleos
+1
0
-1

(Un poco de offtopic, no he podido reprimirme)

Así se expone una pregunta, enseñando. :)

Un saludo 

 

-----------------------------------------------------------------------------------------------------------------------------------------------------

Un poco de GRUB y Super Grub Disk

http://jaleos.wordpress.com/

 

+1
0
-1

-----------------------------------------------------------------------------------------------------------------------------------------------------

Un poco de GRUB y Super Grub Disk

http://jaleos.wordpress.com/

DualCore Intel Core

Imagen de Julius-Caesar
+1
0
-1

Mira lo que dice el manual de hdparm respecto de -m (multiple sector I/O):

 

"Some drives claim to support multiple mode, but lose data at some settings. Under
 rare circumstances, such failures can result in massive filesystem corruption."

"BUGS:

As noted above, the -m sectcount should be used with caution at first, preferably
on a read-only filesystem. Most drives work well with these features, but a few
drive/controller combinations are not 100% compatible.
Filesystem corruption may
result. Backup everything before experimenting."

--------------------------------------------------------------------------------

Por otra parte, a ver si lo he entendido...

 

Los ajustes por defecto de tu D.D.:

 multcount = 0 (off)
 IO_support = 0 (default 16-bit)
 using_dma = 0 (off)

--------------------------------------------------------------------------------

1- Has hecho esto:

    $ sudo hdparm -c3 -m16 -d1 /dev/hdb

2- Has editado "/etc/hdparm.conf":

    /dev/hdb {
    dma = on
    mult_sect_io = 16
    io32_support = 3
    }

3- ¿Y es a partir de aquí cuando vienen los problemas?

--------------------------------------------------------------------------------

SOLUCIÓN (la que se me ocurre):

 

1- $ sudo hdparm -c0 -m0 -d1 -X69 /dev/hdb

     Nota: -X69 => UltraDMA-5

2- $ sudo hdparm -tT /dev/hdb

    (Repítelo 3 o 4 veces y cierra antes todos los programas abiertos)

3- Edita "/etc/hdparm.conf":

    /dev/hdb {
    mult_sect_io = 0
    io32_support = 0
    dma = on
    transfer_mode = 69

    }

--------------------------------------------------------------------------------

 

+1
0
-1
Imagen de sesies
+1
0
-1

Gracias a todos los que me habeis orientado.

El disco duro funciona perfectamente con los comandos 1 y 2 y se nota la mejora en el rendimiento. El problema es que cuando arranca Ubuntu me salen unos errores que rebuscando indican que no se puede puede activar el dma del disco duro y le pone una configuracion por defecto (con lo cual no han servido para nada, debería hacer que se ejecutaran una vez arrancado el sistema). Parece ser que el Grub detecta una geometría del disco duro de cilindros, cabezas y sectores distinta a los procesos de arranque de Ubuntu/BIOS (que no tengo ni idea de como funcionan) pero dan lugar a que el arranque sea engañado y no encuentre unos determinados sectores. De ahí viene mi interés por el comando sfdisk y por la "recolocacion" de la tabla de sectores en el disco.

Julius-Caesar, probaré lo que me dices aunque creo que no tiene que ver con mi problema, porque probablemente cuando vuelva a arrancar Ubuntu me reinicie las opciones del disco por defecto.

Probablemente mi fallo esté en el uso de sudo con los pipes. Cuando llegue a casa despues de trabajar lo volveré a probar y os cuento.

 Gracias de nuevo. 

 

 

+1
0
-1
Imagen de sesies
+1
0
-1

He probado el comando, esta vez bien escrito con sudo y el resultado ha sido:

$ cat MyPartitionTable.txt | sudo sfdisk --no-reread --force -H255 /dev/hdb

Disco /dev/hdb: 77545 cilindros, 255 cabezas, 63 sectores/pista
Situación anterior:
Unidades = cilindros de 8225280 bytes, bloques de 1024 bytes, contando desde 0

Disp. Inic. Princ. Fin Nºcil Nºbloq. Id Sistema
/dev/hdb1 0+ 1529 1530- 12289693+ c W95 FAT32 (LBA)
/dev/hdb2 * 1530 4724 3195 25663837+ 83 Linux
/dev/hdb3 4725 4864 140 1124550 5 Extendida
/dev/hdb4 0 - 0 0 0 Vacía
/dev/hdb5 4725+ 4864 140- 1124518+ 82 Linux swap / Solaris
Situación nueva:
Unidades = sectores de 512 bytes, contando desde 0

Disp. Inicio Principio Fin Nº sect. Id Sistema
/dev/hdb1 63 24579449 24579387 c W95 FAT32 (LBA)
/dev/hdb2 * 24579450 75907124 51327675 83 Linux
/dev/hdb3 75907125 78156224 2249100 5 Extendida
/dev/hdb4 0 - 0 0 Vacía
/dev/hdb5 75907188 78156224 2249037 82 Linux swap / Solaris
La nueva tabla de particiones se ha escrito correctamente

Volviendo a leer la tabla de particiones...
BLKRRPART: Dispositivo ó recurso ocupado

Si ha creado o modificado una partición DOS, como /dev/foo7, utilice dd(1)
para poner a cero los 512 primeros bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(Véase fdisk(8).)

y como podeis ver me ha modificado la tabla de particiones he reiniciado pero el DMA sigue sin estar activo.

Pero he encontrado un dato curioso que indicaban googleando por ahí con algun disco duro Seagate y es el siguiente, existe un sector "fantasma", fijaros en la salida de los dos siguientes comandos y fijaros en lo resaltado en negrita.

Primer comando:

$ sudo hdparm /dev/hdb

/dev/hdb:
multcount = 0 (off)
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 65535/16/63, sectors = 78165361, start = 0

y segundo comando:

$ sudo hdparm -i /dev/hdb

/dev/hdb:

Model=ST340823A, FwRev=3.07, SerialNo=7EF1H73Q
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=1024kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78165360
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4

* signifies the current active mode

Ahora sí que ya no sé que hacer. A ver si a alguno de vosotros se os ocurre algo.

Y muchas gracias por vuestro tiempo. 

+1
0
-1
Imagen de Julius-Caesar
+1
0
-1

Pues esto es lo mío:

--------------------------------------------------------------------------------
$ sudo hdparm /dev/sda

/dev/sda:
 IO_support    =  0 (default 16-bit)
 readonly        =  0 (off)
 readahead     = 256 (on)
 geometry       = 19457/255/63, sectors = 312581808, start = 0
--------------------------------------------------------------------------------
$ sudo hdparm -i /dev/sda

/dev/sda:
 Model=SAMSUNG HM160JI, FwRev=AD100-12, SerialNo=S0XBJ10P426107
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=34902, SectSize=554, ECCbytes=4
 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=?8?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 0:  ATA/ATAPI-1,2,3,4,5,6,7

 * signifies the current active mode
--------------------------------------------------------------------------------
$ sudo hdparm -I /dev/sda

/dev/sda:
ATA device, with non-removable media
        Model Number:        SAMSUNG HM160JI                        
        Serial Number:         S0XBJ10P426107
        Firmware Revision:  AD100-12
Standards:
        Used: ATA/ATAPI-7 T13 1532D revision 0
        Supported: 7 6 5 4
Configuration:
        Logical         max     current
        cylinders       16383   16383
        heads                  16         16
        sectors/track      63         63
        --
        CHS  current addressable sectors:    16514064
        LBA       user addressable sectors:  268435455
        LBA48  user addressable sectors:  312581808
        device size with M = 1024*1024:      152627 MBytes
        device size with M = 1000*1000:      160041 MBytes (160 GB)
--------------------------------------------------------------------------------

+1
0
-1
Imagen de Julius-Caesar
+1
0
-1

Prueba a ejecutar esto a ver qué sale:

$ sudo hdparm -I /dev/sda

 

Y a modo de nota interesante:

"Some operating systems ignore the geometry reported by BIOS. Among these operating
 systems are GNU/Linux, Mac OS X, OS/2.
 Operating systems that are sensitive to BIOS-reported geometry include DOS,
 Windows NT/2000/XP/Vista and Solaris."

 

 

+1
0
-1
Imagen de sesies
+1
0
-1

 Hola Julius-Caesar,  ahí va lo que me pides

--------------------------------------------------------------------

$ sudo hdparm -I /dev/hdb

/dev/hdb:

ATA device, with non-removable media
        Model Number:       ST340823A
        Serial Number:      7EF1H73Q
        Firmware Revision:  3.07
Standards:
        Supported: 4 3 2 1
        Likely used: 6
Configuration:
        Logical         max     current
        cylinders       16383   16383
        heads           16      16
        sectors/track   63      63
        --
        CHS current addressable sectors:   16514064
        LBA    user addressable sectors:   78165360
        device size with M = 1024*1024:       38166 MBytes
        device size with M = 1000*1000:       40020 MBytes (40 GB)
Capabilities:
        LBA, IORDY(can be disabled)
        Buffer size: 1024.0kB   Queue depth: 1
        Standby timer values: spec'd by Standard
        R/W multiple sector transfer: Max = 16  Current = ?
        Recommended acoustic management value: 128, current value: 128
        DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5
             Cycle time: min=120ns recommended=120ns
        PIO: pio0 pio1 pio2 pio3 pio4
             Cycle time: no flow control=240ns  IORDY flow control=120ns
Commands/features:
        Enabled Supported:
           *    READ BUFFER cmd
           *    WRITE BUFFER cmd
           *    Host Protected Area feature set
           *    Look-ahead
           *    Write cache
           *    Power Management feature set
                Security Mode feature set
           *    SMART feature set
           *    Automatic Acoustic Management feature set
           *    SET MAX security extension
           *    DOWNLOAD MICROCODE cmd
Security:
        Master password revision code = 65534
                supported
        not     enabled
        not     locked
        not     frozen
        not     expired: security count
        not     supported: enhanced erase
HW reset results:
        CBLID- above Vih
        Device num = 1
Checksum: correct

-------------------------------------------------------------------- 

Por cierto he encontrado información en https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.15/+bug/26119

Gracias 

 

+1
0
-1
Imagen de JuanCampos
+1
0
-1

  get/set acoustic management (0-254, 128: quiet, 254: fast)
¿ Para que sirve la linea anterior 

He mirado en Google y no consigo ver para que sirve ?

en mi caso aparece  

Recommended acoustic management value: 254, current value: 0
 

He probado con  sudo hdparm -M /dev/sda 254    y ..

/dev/sda:
 acoustic      = not supported
254: No such file or directory

 

Gracias  

Ubuntu 7.10 ( 686) en un AMD 64 Bits
Vamos a cambiar el mundo

+1
0
-1

Ahora uso maverik 64
Vamos a cambiar el mundo

Imagen de Julius-Caesar
+1
0
-1

"He probado con  sudo hdparm -M /dev/sda 254 y..."

Hombre, eso está mal escrito, lo correcto es esto:

$ sudo hdparm -M254 /dev/sda

  /dev/sda:
   setting acoustic management to 254
   acoustic      = 254 (128=quiet ... 254=fast)

$ sudo hdparm -M128 /dev/sda

  /dev/sda:
   setting acoustic management to 128
   acoustic      = 128 (128=quiet ... 254=fast)

$ sudo hdparm -M0 /dev/sda

  /dev/sda:
   setting acoustic management to 0
   acoustic      =  0 (128=quiet ... 254=fast)

 

Pero ten en cuenta que el disco duro (Samsung) de mi portátil soporta el AAM
(Automatic Acoustic Management).

¿Para qué sirve?. Pues en un ordenador de escritorio, para nada. En un portátil
sirve para reducir el "ruido" que hace el D.D. en funcionamiento, pero creo que
a expensas de reducir su rendimiento pues, la manera de que haga menos ruido es
hacer que gire más despacito (o eso creo).

 

 

+1
0
-1
Imagen de JuanCampos
+1
0
-1

Evidentemente aplique mal la orden en consola.

 sudo hdparm -M254 /dev/sda

/dev/sda:
 setting acoustic management to 254
 HDIO_DRIVE_CMD:ACOUSTIC failed: Input/output error
 acoustic      = not supported

Bien , ya SE para que sirve y veo que mi HD no lo soporta.

Gracias 

 

 

Ubuntu 7.10 ( 686) en un AMD 64 Bits
Vamos a cambiar el mundo

+1
0
-1

Ahora uso maverik 64
Vamos a cambiar el mundo

Imagen de Julius-Caesar
+1
0
-1

https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.15/+bug/26119

 

Parece que ahí lo dice todo, un bug del kernel.

 

Lo malo es que según se comenta, ni siquiera te serviría Ubuntu Gutsy Gibbon (kernel 2.6.22-14)

 

 

+1
0
-1
Imagen de sesies
+1
0
-1

Entonces, lo que me queda es buscar información sobre cómo incluir las instrucciones que activan el DMA del disco para que se ejecuten automáticamente una vez que arranque el equipo.

Muchas gracias Julius-Caesar.

+1
0
-1
Imagen de Julius-Caesar
+1
0
-1

Quizá te sirva agregar "hdparm -c3 -m16 -d1 /dev/hdb" en alguno de estos lugares:

/etc/rc.d/rc.local
/etc/rc.local

Ahí hay scripts que se autoejecutan en cada inicio.

 

Ah, y ten en cuenta una cosa, creo haber leído en alguna parte que quizá cuando
se detecta algún fallo/error en un disco duro, la controladora desactiva el DMA.

No estoy seguro de esto último.

Suerte.

 

+1
0
-1
Imagen de sesies
+1
0
-1

Muchas gracias por orientarme.

Lo probaré por la tarde/noche tan pronto llegue a casa y comentaré el resultado. Sólo me preocupa si ese comando se ejecuturá porque normalmente necesita sudo delante.

En cuanto a lo último que me dices, creo que es lo que me está pasando, el gestor de arranque intenta acceder a un sector del disco inexistente y devuelve un error que reinicializa la controladora ide a un "modo seguro"... 

 

 

+1
0
-1
Imagen de Julius-Caesar
+1
0
-1

Acabo de recordar algo. Yo tengo "metidos" unos comandos en cierto sitio para
cambiar la MAC de mi WiFi en cada reinicio:

 $ sudo gedit /etc/init.d/bootmisc.sh

 Tengo esto justo al final, después de los dos puntos:

  # Cambio la MAC de mi WiFi (eth1)
  ifconfig eth1 down
  ifconfig eth1 hw ether 00:1B:77:14:28:56
  ifconfig eth1 up

Te puede servir. Aunque claro, esto es Gutsy Gibbon, no sé si el archivo "bootmisc.sh"
existirá en tu versión de Ubuntu.

+1
0
-1
Imagen de sesies
+1
0
-1

El nombre de ese fichero me gusta más...

Ojalá mi Dapper Drake lo tenga y funcione. Ya te contaré.

Una vez más, gracias. 

+1
0
-1
Imagen de sesies
+1
0
-1

Ya está solucionado.

Edité como me dijiste bootmisc.sh y añadí lo que está en negrita: 


$ sudo gedit /etc/init.d/bootmisc.sh

[ -z "$DELAYLOGIN" ] && DELAYLOGIN=yes
[ -z "$EDITMOTD" ] && EDITMOTD=yes
[ -f /etc/default/rcS ] && . /etc/default/rcS

# Activar DMA, transferencia de 32 bits y la lectura de varios sectores en la misma interrupcion
hdparm -d1 -c3 -m16 /dev/hdb

do_start () {
    #
    #    Put a nologin file in /etc to prevent people from logging in
    #    before system startup is complete.

 


Lo puse ahí porque no me gustaba mucho ponerlo después de los dos puntos y funciona correctamente.

 

Ahora tengo:


$ sudo hdparm /dev/hdb

/dev/hdb:
 multcount    = 16 (on)
 IO_support   =  3 (32-bit w/sync)
 unmaskirq    =  0 (off)
 using_dma    =  1 (on)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 65535/16/63, sectors = 78165361, start = 0

 


Y el test de transferencia del disco duro ya es aceptable

 


$ sudo hdparm -tT /dev/hdb

/dev/hdb:
 Timing cached reads:   1632 MB in  2.00 seconds = 815.95 MB/sec
 Timing buffered disk reads:   90 MB in  3.02 seconds =  29.84 MB/sec


Muchísimas gracias a todos (porque no era fácil llegar al final del post) y en especial a Julius-Caesar por haber dado con el "apaño" necesario para que me sienta un poco más cómodo con mi Ubuntu.

 

 

 

+1
0
-1
Imagen de Julius-Caesar
+1
0
-1

Pues nada, que me alegro. Ya nos "veremos" con otro problemilla por aquí.

 

Nos vemos.

 

Julius para los amigos.

 

+1
0
-1