Forcer l'arrêt d'un HDD et le rallumer sur demande.

Forcer l'arrêt d'un HDD et le rallumer sur demande. - Divers - Linux et OS Alternatifs

Marsh Posté le 23-01-2012 à 13:14:44    

Salut.  :hello:  
Bon je ne sais pas dans quelle catégorie mettre mon sujet là.
ça touche un peu au hardware sous Linux mais pas que.
 
Bref, j'explique en clair :
 
j'ai trois disques, dont un qui contient mon Ubuntu, les deux autres contiennent des partoches Windows & des données.
 
Je n'accède pas souvent à ces disques depuis Linux.
 
Je souhaite donc les "éteindre" complètement : pas d'écritures, têtes au repos, pas de rotation des plateaux,
afin d'économiser un peu sur leur durée de vie, en bruit, température, etc.
Et j'aimerai bien que ce soit automatique au boot de la machine (voire qu'ils ne se mettent pas du tout en route au boot, sans pour autant les débrancher physiquement).
 
Mais le truc c'est que j'aimerai bien, si tout à coup je souhaite y enregistrer ou lire quelque chose, les rallumer à la demande (commande?)
puis les ré-éteindre ensuite.
 
Et il faudrait que je sois le seul à pouvoir les "allumer", i.e. qu'aucun processus système ou autre ne puisse les remettre en route.
 
 
  Merci.
:jap:


Message édité par Swiss_Knight le 23-01-2012 à 13:59:34

---------------
Hergestellt in der Schweiz.
Reply

Marsh Posté le 23-01-2012 à 13:14:44   

Reply

Marsh Posté le 23-01-2012 à 13:58:17    

drapal, la question m'intéresse.


---------------
Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h
Reply

Marsh Posté le 23-01-2012 à 18:55:05    

Salut, je ne pense pas qu'il soit possible d'empecher le démarrage d'un hdd au boot, par contre il existe une commande permettant l'arret total d'un hdd:
 
hdparm -Y /dev/sdX
 
On peut les rallumer, mais jsais plus comment, je le faisais fut une période...
Ptet la même commande, on m'avait expliqué tout ça sur... hfr :D
 
Bref, installe hdparm et lit la page de man ou google, tu trouveras facilement ;)

Message cité 2 fois
Message édité par Mac Gyver 974 le 23-01-2012 à 18:57:18
Reply

Marsh Posté le 23-01-2012 à 21:30:44    

Mac Gyver 974 a écrit :


On peut les rallumer, mais jsais plus comment, je le faisais fut une période...


 
C'est automatique au moindre accès.
Perso, j'utilise plutôt le timer de mise en veille (hdparm -S) pour les disques de stockage.
 
Effectivement, tu ne peux pas empêcher le hdd de s'initialiser au boot; c'est une fonction qui doit être supporté au niveau du firmware du contrôleur sur lequel le disque est branché. Ca existait, en son temps, sur certains contrôleurs SCSI mais je n'ai jamais vu ça sur du matos grand public.

Reply

Marsh Posté le 25-01-2012 à 13:41:01    

Mac Gyver 974 a écrit :

Salut, je ne pense pas qu'il soit possible d'empecher le démarrage d'un hdd au boot, par contre il existe une commande permettant l'arret total d'un hdd:

 

hdparm -Y /dev/sdX

 

On peut les rallumer, mais jsais plus comment, je le faisais fut une période...
Ptet la même commande, on m'avait expliqué tout ça sur... hfr :D

 

Bref, installe hdparm et lit la page de man ou google, tu trouveras facilement ;)

 

Merci, ça marche plutôt bien, j'entends effectivement le disque s'arrêter complètement.
Reste plus qu'à essayer d'automatiser tout ça au boot.
J'ai pas vraiment compris le paramètre -S , et pour l'avoir essayé avec un timer de 5 sec. il ne s'est rien passé dans la minute qui a suivi.

 

Mais j'ai un léger problème avec hdparm -Y : je ne sais pas ci c'est suite au changement de ma CM ou si mes disques sont en AHCI (je viens de tester en IDE, c'est la même chose), mais ils redémarrent tout seul assez rapidement après être entrés en sommeil, peut-être entre 1 et 2 minutes après.

 

Existe-t-il un moyen de connaître exactement quel processus ou ce qui les réveille ??

 

Ne peut-on pas forcer l'extinction pour de bon, i.e., le réveil ne se fait que par l'utilisateur ?


Message édité par Swiss_Knight le 25-01-2012 à 13:48:43

---------------
Hergestellt in der Schweiz.
Reply

Marsh Posté le 25-01-2012 à 14:38:29    

Comme t'es en ntfs et que c'est un système de fichiers monté en userspace, il est possible (grosse supposition) que fuse accède aux partitions régulièrement.
 
Certaines actions provoquent le réveil des hdd dés qu'une énumération des partitions est requise (ex: mise à jour d'initramfs ou boîte de dialogues d'ouverture de fichiers sous kde).
Tant que j'en suis dans les hypothèses, le fait de démonter la partition devrait la faire disparaître aux yeux des programmes et donc, empêcher le réveil du hdd. S'il y a un moyen (aucune idée) de lire le statut "en veille" du hdd on doit pouvoir scripter le montage/démontage du hdd. Il y a p'tet même moyen qu'udev le fasse.

Reply

Marsh Posté le 25-01-2012 à 15:52:42    

On va finir par y arriver, enfin j'espère, parce que je comprends pas grand chose à tout ça, mais je m'efforce.
 
Est-ce qu'on peut faire quelque chose avec ces commandes* :
 
fuser -m /dev/sdaX (X=[1,3,4,5,6]) qui renvoie, par exemple si je suis entrain d'écouter un fichier de musique situé sur /dev/sda6 avec totem :

/dev/sda6:           10835


ps auxw|grep 538 :

swissknight  10835 17.7  0.9 213684 40744 ?        Sl   15:39   0:45 totem /media/E_/swissknight/Musique/RocknRoll.mp3


 
je suis tombé sur cette dernière commande ici : http://ocaoimh.ie/2008/02/13/how-t [...] e-is-busy/ en fouinant un peu le web sur ce qu'est un "système de fichier en userspace" pour me renseigner sur tout ça.
 
Dans ma tête c'est plein d'idées mais je sais pas coder avec le language interne de linux (il porte un nom en fait ?) donc c'est pas évident :
il faudrait faire en sorte de suivre (logger dans un fichier) les processus qui accèdent à toutes les partitions de /dev/sda  [1 -> 6] et de noter dans le fichier dès qu'il y en a un qui utilise une de ces partitions, peut-être qu'on peut trouver le coupable s'il y s'agit d'un processus.
 
Pour le reste, toutes mes partitions du disque sont démontées avant que je lance hdparm -Y sur ce disque.  :sweat:  
C'est bizarre ce "problème".
 

Spoiler :

*navré si je détaille des commandes que vous connaissez sans doute, mais c'est aussi pour que je puisse comprendre ce que j'ai fait si je relis mes posts d'ici plusieurs mois


 


---------------
Hergestellt in der Schweiz.
Reply

Marsh Posté le 25-01-2012 à 16:44:44    

Swiss_Knight a écrit :


Dans ma tête c'est plein d'idées mais je sais pas coder avec le language interne de linux (il porte un nom en fait ?) donc c'est pas évident :
il faudrait faire en sorte de suivre (logger dans un fichier) les processus qui accèdent à toutes les partitions de /dev/sda  [1 -> 6] et de noter dans le fichier dès qu'il y en a un qui utilise une de ces partitions, peut-être qu'on peut trouver le coupable s'il y s'agit d'un processus.
 
Pour le reste, toutes mes partitions du disque sont démontées avant que je lance hdparm -Y sur ce disque.  :sweat:  
C'est bizarre ce "problème".


 
Si tes partitions sont démontées / pas montées du tout, alors c'est probablement une histoire d'irq partagé.
 
PS: pour ta culture générale, le "langage de linux" dont tu parles s'appelle généralement shell. Il y a des variantes avec des syntaxes similaires mais pas identiques et donc pas 100% compatibles entre elles (sh, bash, ash, pour les plus courantes)

Reply

Marsh Posté le 26-01-2012 à 00:06:07    

Merci pour la culture. ça fait plaisir  ;)  :jap:

 

Comment je peux voir ces histoires d'IRQ ?

 

Et puis si ça peut aider quelqu'un, voilà un morceau de mon dmesg :

[ 6211.430608] ata3.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6
[ 6211.430617] ata3.00: waking up from sleep
[ 6211.430630] ata3: hard resetting link
[ 6211.912378] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 6211.913573] ata3.00: configured for UDMA/133
[ 6211.913592] ata3: EH complete
[ 6216.794769] ata4.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6
[ 6216.794773] ata4.00: waking up from sleep
[ 6216.794777] ata4: hard resetting link
[ 6217.276065] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 6217.277406] ata4.00: configured for UDMA/133
[ 6217.277423] ata4: EH complete


 :??:  -> exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6

 

J'ai aussi désactivé dans les préférences nautilus "media_automount". Sans succès.

 

Et, je ne sais pas si ça a un quelconque rapport, aussi, dans mon fichier /etc/smartd.conf : il y avait cette unique ligne de non commentée :

DEVICESCAN -n standby,q -m root -M exec /usr/share/smartmontools/smartd-runner


Mais sans la partie -n standby,q, que j'ai rajoutée par la suite. Sans succès non plus. (et je ne sais pas si la syntaxe est correcte).

 

:(

Message cité 2 fois
Message édité par Swiss_Knight le 26-01-2012 à 00:21:10

---------------
Hergestellt in der Schweiz.
Reply

Marsh Posté le 26-01-2012 à 00:12:35    

[:homdex] drapal, pour ma culture perso.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 26-01-2012 à 00:12:35   

Reply

Marsh Posté le 26-01-2012 à 09:03:09    

Swiss_Knight a écrit :


Comment je peux voir ces histoires d'IRQ ?
 
Et puis si ça peut aider quelqu'un, voilà un morceau de mon dmesg :

[ 6211.430608] ata3.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6
[ 6211.430617] ata3.00: waking up from sleep
[ 6211.430630] ata3: hard resetting link
[ 6211.912378] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 6211.913573] ata3.00: configured for UDMA/133
[ 6211.913592] ata3: EH complete
[ 6216.794769] ata4.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6
[ 6216.794773] ata4.00: waking up from sleep
[ 6216.794777] ata4: hard resetting link
[ 6217.276065] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 6217.277406] ata4.00: configured for UDMA/133
[ 6217.277423] ata4: EH complete


 :??:  -> exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x6
 
J'ai aussi désactivé dans les préférences nautilus "media_automount". Sans succès.
 
Et, je ne sais pas si ça a un quelconque rapport, aussi, dans mon fichier /etc/smartd.conf : il y avait cette unique ligne de non commentée :

DEVICESCAN -n standby,q -m root -M exec /usr/share/smartmontools/smartd-runner


Mais sans la partie -n standby,q, que j'ai rajoutée par la suite. Sans succès non plus. (et je ne sais pas si la syntaxe est correcte).
 
 :(


 
Pour vérifier un éventuel irq partagé avec ton contrôleur sata, tu peux faire un  
cat /proc/interrupts
Dans l'éventualité où il partage son irq, tu peux peut-être (ça dépend du périph et de son driver) activer les MSi pour un ou plusieurs modules.
 
Ton log dmesg me semble normal pour une sortie de veille. Pour moi, le code SErr 0x0 signifie que la sortie de veille s'est déroulée sans erreur mais si tu veux être sûr, va falloir faire des recherches.

Reply

Marsh Posté le 02-04-2012 à 02:36:02    

Swiss_Knight a écrit :


Et, je ne sais pas si ça a un quelconque rapport, aussi, dans mon fichier /etc/smartd.conf : il y avait cette unique ligne de non commentée :

DEVICESCAN -n standby,q -m root -M exec /usr/share/smartmontools/smartd-runner


Mais sans la partie -n standby,q, que j'ai rajoutée par la suite. Sans succès non plus. (et je ne sais pas si la syntaxe est correcte).
 
 :(


 
Le mieux c'est de vérifier qu'il n'y a pas un processus smart qui tourne en permanence (pour voir si ça vient de là).
 
Ca peut aussi venir d'un processus qui relève les températures via smart toutes les n secondes.
 


---------------
Legalize it @HFR
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed