J'utilise Ubuntu 12.04 sur un serveur domestique. Il y a 5 disques durs: un SSD avec le système d'exploitation et 4 disques durs (Samsung HD204UI) configurés en RAID5 à l'aide de mdadm.
Je n'ai pas besoin du RAID très souvent (disons environ une fois par jour en moyenne); il contient des données multimédias et quelques sauvegardes, j'ai donc décidé de mettre les disques en veille la plupart du temps.
J'ai configuré les disques pour qu'ils tournent automatiquement après 20 minutes en utilisant hdparm, ici à /dev/sda
titre d'exemple:
hdparm -S 240 /dev/sda
La sortie de la commande a confirmé ceci:
/dev/sdb:
setting standby to 240 (20 minutes)
Mais le problème est que le disque tourne après environ 5 secondes (au lieu de 20 minutes) après le dernier accès, et
hdparm -C /dev/sdb
affiche:
/dev/sdb:
drive state is: standby
Pourquoi le lecteur n'attend-il pas les 20 minutes comme configuré? Cela a-t-il quelque chose à voir avec la configuration RAID? (Je ne pense pas ...)
Ce délai très court est problématique car il s'agit d'un RAID5 et lorsque j'accède à un fichier, il est réparti par bloc autour des quatre disques. Étant donné que le lecteur 1 n'est pas nécessaire lors de la lecture du lecteur 2, il s'est endormi lorsqu'il sera utilisé la prochaine fois (après la lecture du lecteur 3). Les disques tournent donc de haut en bas tout le temps, ce qui entraîne un débit proche de zéro.
Pour les personnes préoccupées par la durée de vie de mes disques: ce ne sera pas un problème que les disques tournent de haut en bas une fois par jour en moyenne car je préfère économiser l'énergie et la chaleur plutôt que la santé des disques (j'utilise RAID5 et le contenu n'est pas pas très important).
la source
Réponses:
L'AHCI est-il activé dans votre BIOS? Sinon, essayez de l'allumer et de réessayer.
Si cela ne fonctionne toujours pas, vous devrez peut-être essayer quelque chose d'un peu plus compliqué, car
hdparm
il ne joue pas toujours bien avec les disques SATA, ce que je suppose que vous avez.Consultez cette page pour la solution relativement simple suivante qui utilise crontab:
Maintenant, ajoutez ceci au bas de votre crontab (remplacez sdx par le lecteur que vous souhaitez mettre en veille):
Bien sûr, avant de tenter quoi que ce soit, il est fortement conseillé d'effectuer une sauvegarde complète du contenu de vos disques durs.
la source
sg3-utils
)? C'est ça/usr/bin/sg_start --stop /dev/sdx
?Peut-être qu'une meilleure façon pourrait être:
hdparm -B 1 -Y / dev / device
hdparm -B 255 / dev / device
Le premier hdparm a immédiatement mis l'appareil en veille. Le second désactive APM, de sorte que le disque reste en mode veille jusqu'au prochain accès au disque.
la source