Parar el disco duro USB conectado a la Raspberry Pi cuando no se use | Algo de Linux

viernes, 28 de febrero de 2014

Parar el disco duro USB conectado a la Raspberry Pi cuando no se use

Si utilizáis vuestra Raspberry Pi como centro multimedia, posiblemente tendréis conectado un disco duro usb donde almacenáis los vídeos, la música y las imágenes. 

Si vuestro disco duro no tiene un sistema de control de "spin down" probablemente permanecerá girando durante todo el tiempo que esté conectado sin necesidad, reduciendo su vida útil y consumiendo energía de forma innecesaria.

Hdparm es una de esas herramientas que nos permitirá consultar y modificar parámetros del disco duro y que nosotros vamos a utilizar para pararlo cuando no se esté usando. Veamos cómo hacerlo:

Lo primero será conectarnos a nuestra Raspberry Pi, convertirnos en usuario administrador, e instalar hdparm si no lo tenemos instalado aún:

# apt-get update && apt-get -y install hdparm

Una vez instalado, suponiendo que vuestro duro es /dev/sda, si ejecutáis:

# hdparm -C /dev/sda

Obtendréis un mensaje como éste:

root@raspbmc:/# hdparm -C /dev/sda

/dev/sda:
 drive state is:  active/idle

Si  queréis parar el disco duro, poniéndolo en espera, no tenéis más que ejecutar:

# hdparm -y /dev/sda

Al ejecutar el comando os mostrará un mensaje como éste:

root@raspbmc:/# hdparm -y /dev/sda

/dev/sda:
 issuing standby command

Si ahora ejecutáis de nuevo el comando para consultar el estado, comprobaréis que el disco duro está en standby:

root@raspbmc:/# hdparm -C /dev/sda

/dev/sda:
 drive state is:  standby

Y me diréis: Vale, con todo esto paramos el disco duro de forma manual, pero, ¿cómo hacemos para que se pare de forma automática después de un tiempo de inactividad?

Para eso, podemos usar el parámetro -B:

root@raspbmc:/# hdparm -B valor /dev/sdX

Donde sustituiremos:
  • valor por un número entre 1-255
  • /dev/sdX por el que tengamos. En el ejemplo que estoy poniendo: /dev/sda
Ésto es lo que dice la ayuda acerca del valor especificado mediante el parámetro -B:
  • Si el valor indicado está entre 1-127, se permite spin-down.
  • Si el valor indicado está etre 128-254, no se permite spin-down.
  • El valor de 255 le dice a hdparm que desactive la gestión de energía avanzada en el disco duro, algo que no todo los discos soportan.
El tiempo de inactividad que se va a esperar antes de parar el disco duro es el resultado de multiplicar el valor indicado por 5. Esto quiere decir que si ejecutamos el comando:

root@raspbmc:/# hdparm -B 120 /dev/sda

Le estaremos diciendo a hdparm que pare el disco /dev/sda después de 120*5=600 segundos de inactividad, es decir: 10 minutos.

¿Y cómo hacemos para que los cambios se guarden permanentemente, de forma que la configuración permanezca después de apagar la Raspberry Pi? Pues bien. Para eso editamos el archivo /etc/hdparm.conf y nos situamos al final del mismo. Como veréis se encuentran comentados los parámetros de este comando y vienen algunos ejemplos de configuración. Añadimos lo siguiente:

/dev/sda {
        spindown_time = 120
}

Guardamos los cambios en el archivo, y, por último, reiniciamos el servicio:

root@raspbmc:/# /etc/init.d/hdparm restart

Publicado por primera vez en http://enavas.blogspot.com.es

1 comentario:

Carlos A. Cáliz dijo...

Perdon, tengo un problema he habilitado el standby en mi disco duro y quiero hacer un restart pero no se como hacerlo, he utilizado el comando

sudo hdparm -y /dev/sda

Agradecería una ayuda porque se ha quedado roque...