Est-ce que quelqu'un sait s'il existe un moyen élégant de dire à un lecteur USB externe de ne pas tomber en panne après une période d'inactivité? J'ai vu des solutions basées sur cron qui écrivent un fichier toutes les minutes, mais rien qui sent la belle élégance unixey. Il doit y avoir une commande hdparm ou scsi que je peux émettre (les lecteurs USB sont accessibles via le pilote sd dans OpenBSD) au lecteur pour lui dire de ne pas dormir. J'ai peur que ce soit probablement une fonctionnalité intégrée au contrôleur dans le boîtier, et en tant que tel, peu de choses peuvent le changer en dehors de l'extraction du lecteur de son boîtier et de le placer directement dans la machine, mais j'ai pensé que je demanderais, à tout hasard.
Idéalement, je recherche une solution OpenBSD, mais je sais qu'il y en a d'autres avec le même problème, donc toutes les solutions seront considérées pour la réponse.
Réponses:
Oui, il est généralement intégré au firmware. Certains fabricants de disques fournissent un outil de gestion basé sur MS Windows qui vous permettra de modifier divers paramètres, y compris la désactivation de la minuterie de veille ou de ralentissement. Si vous avez accès à une boîte Windows, il vaut peut-être la peine de poursuivre cet angle.
la source
Juste mes 2 cents ...
Il est plus que vrai que la rotation des disques diminue leur durée de vie. Des années d'expérience ont montré que le démarrage et l'arrêt du moteur à disque provoquent beaucoup plus de fatigue qu'un essorage 24/7. Tous mes disques avec un grand nombre de démarrages / arrêts ont des secteurs réalloués et tous mes disques qui tournent 10 ans 24/7 sont (croyez-le ou non) comme neufs. Après tout, les disques sont faits pour tourner et non pour tourner au ralenti, donc si votre priorité est moins de fatigue que la consommation d'énergie, n'hésitez pas à faire tourner vos disques 24/7.
J'ai un disque externe de 2 To qui tourne après 30 minutes d'inactivité. Le disque est censé être allumé 24h / 24 et 7j / 7 à des fins de sauvegarde et agir comme un petit NAS connecté à un Orange PI.
J'ai utilisé la règle udev suivante dans
(Cela n'a jamais fonctionné car le spin down est dans le firmware des disques)
Bien que le disque prenne en charge
J'ai écrit un petit processus démon qui peut s'exécuter au démarrage
qui écrit 10 fois dans des cicles la date et l'heure actuelles dans un fichier journal afin que le disque soit toujours allumé. N'hésitez pas à modifier à votre guise.
Les options de ligne de commande sont: le répertoire cible pour écrire awake.log et (éventuellement) le délai (300 par défaut)
par exemple
le code: (vous pouvez compiler avec gcc)
la source
Cette solution (pour Linux) de http://www.arrfab.net/blog/?p=107 a aidé pour un disque Seagate Portable de 1 To qui continuait de dormir:
Le lecteur est maintenant immédiatement réactif même lorsqu'il est laissé inactif pendant une heure. Cependant, je n'ai pas encore testé si le paramètre est enregistré lors des redémarrages, etc.
la source
J'ai trouvé que le cronjob suivant fonctionne pour moi.
* / 5 * * * * / bin / touch / dev / sdb &> / dev / null
Évidemment, mettez-le à jour avec le nom de périphérique de votre disque.
Vous pouvez également faire varier le temps en fonction de la durée pendant laquelle votre disque est inactif avant de s'éteindre.
la source
Le manuel pour Linux
hdparm
fournit les informations suivantes:Cela étant dit, il n'est toujours pas garanti que votre boîtier de disque prend en charge le relais de ces instructions vers le disque. La même référence mentionne que la possibilité d'utiliser hdparm avec un boîtier n'est possible qu'avec certains modèles "plus récents (2008 et versions ultérieures)" qui prennent en charge le système de traduction de commandes SCSI-ATA, également appelé "SAT". Je n'ai pas encore essayé de le faire sur autre chose qu'un disque de sauvegarde bon marché récent, un modèle HP SimpleSave. Il semble offrir une fonctionnalité de gestion de l'alimentation limitée.
Et bien sûr, cela suppose également que OpenBSD
hdparm
fonctionne de la même manière. Je ne connais pas du tout OpenBSD, je ne peux donc pas vous aider.la source
atactl
. Mais je ne sais pas si cela fonctionne sur les périphériques USB;atactl(8)
est référencé parwd(4)
(la page de manuel du pilote de disque IDE) mais pas parumass(4)
(la page de manuel du pilote de stockage USB).hdparm
pourrait être utilisé dans une boucle d'une manière ou d'une autre sans sudo pour éviter de dormir?hdparam
valeur par défaut pour-B [apm_setting]
?