La importancia de la eficiencia de todos los componentes es un hecho, y obviamente la eficiencia de un disco duro no es de menos, pues determina el tiempo que tarda este en leer un dato o escribirlo, cosa que no se nota con archivos pequeños, pero que se nota considerablemente en el tratamiento de archivos grandes. Generalmente es bastante perceptible por nuestra parte el saber si un disco actúa con la velocidad adecuada, pero a veces necesitamos datos más concretos, como saber con exactitud cuantos megabytes por segundo es capaz de leer y escribir.
Este proceso es bastante sencillo de realizar y la precisión con la que obtenemos el resultado es muy fiable, ayudándonos a hacernos una idea de le eficiencia de nuestro disco.
Requisitos
Los requisitos para realizar exitosamente este procedimiento son muy poco pero importantes. El primer requisito sería tener conocimiento del nombre de las unidades de disco instaladas en el equipo al igual que el tamaño de los sectores de éstas. Esta información se obtiene mediante un sencillo comando llamado fdisk, seguido del parámetro -l.
fdisk-l
En mi caso en concreto he obtenido el siguiente resultado referente a la única unidad de disco que tengo instalada que, como veis, se trata de /dev/sda y que contiene bloques de 512 bytes, un dato que no parece relevante, pero que tendrá cierta importancia más adelante..
Ahora que conocemos las características del disco instalado, tendremos que instalar una herramienta que posibilitará la medición de los tiempos de lectura del disco. Esta herramienta suele estar instalada por defecto en las últimas distribuciones, pero es preferible asegurarse. Dicha herramienta se denomina hdparm y se encuentra en los propios repositorios oficiales de las distribuciones Linux; es por eso que si deseamos instalar el paquete hdparm, simplemente tendríamos que escribir en la consola:
apt-get install hdparm
Velocidad de lectura
Comencemos con la velocidad de lectura. Esto se logra gracias la herramienta que recién acabamos de instalar; es decir mediante la herramienta hdparm. Con esta herramienta podremos medir la cantidad de MBs leídos por segundo, si bien es necesario ejecutarla varias veces y de ahí hacer una media, pues la velocidad de lectura no es un valor fijo, sino variable; un valor que obviamente no cambia drásticamente cada vez que se ejecuta el comando, pero que sí que puede variar entre un comando y otro.
El comando a partir del cual obtendríamos la velocidad de lectura sería:
hdparm -tT/dev/sda
Este sería para ejecutar el comando una única vez, cosa que no ofrece un valor 100% fidedigno tal y como he dicho antes... La mejor forma de obtener una conclusión fiable, sería ejecutando dicho comando 10 veces, para lo cual podemos modificar la línea anterior para dejarla de la siguiente forma:
for((i=1;i<=10;i+=1)); do hdparm -tT/dev/sda; done
Como podéis comprobar, a excepción de la primera lectura, que ha sido claramente más veloz que el resto, no hay una gran diferencia entre el resultado entre los comandos, con lo que podemos decir que el resultado obtenido es fiable.
Velocidad de escritura
Tan importante como la velocidad de lectura es la velocidad de escritura. Aquí, a diferencia de con el testeo de la lectura, no se usa el comando hdparm, sino que es necesario recurrir al comando dd, del cual ya he hablado con anterioridad. Este comando vuelca el contenido de un origen en un destino y muestra el tiempo invertido en dicha operación, con lo que es un método perfectamente válido para hacer la medición de velocidad de escritura.
Para la prueba en cuestión, lo que haremos será volcar cadenas de valores 0 en un fichero ficticio llamado test.dat. Esos ceros se introducirán en bloques de 512 (debido a que hemos obtenido dicho tamaño anteriormente mediante el comando fdisk) 1 millón de veces. Además, para que el comando dd muestre un tiempo de escritura preciso, nos veremos obligados a usar el parámetro conv=fdatasync. Esto lo haremos usando el comando de a continuación.
ddif=/dev/zero of=/tmp/test.dat bs=512count=1000000conv=fdatasync
En este caso el tiempo de escritura ha sido de 33,8 MB/s, una cifra no especialmente alta, pero no del todo mala.
Como podéis observar, la comprobación de la velocidad de nuestro disco duro es realmente sencilla y nos ofrece valores muy concretos que nos puede dar una idea muy acertada de la eficiencia de éste.
Espero que os haya resultado útil.
Saludos.