Utiliser le terminal pour obtenir la vitesse actuelle du ventilateur?

27

Je voudrais voir les vitesses actuelles des ventilateurs de mon MacBook et de mon iMac à l'aide du terminal. J'ai trouvé que la course spindumpalors cat /tmp/spindump.txt | grep "Fan speed"montrera, mais qui est très lent et intensive du processeur. Je voudrais un moyen plus rapide et plus efficace de le faire.

Je préfère ne pas installer de logiciel tiers, mais je le ferai si c'est le seul moyen.

Quelqu'un a-t-il des suggestions sur la façon dont je pourrais y parvenir?

Merci

Joseph
la source
2
Le fait est que, depuis Mavericks, Apple ne fournit pas un moyen d'interroger les informations gérées par SMC. Ainsi, la meilleure façon serait d'utiliser smcFanControl, qui est en réalité bien plus qu'un simple contrôle fac.
Max Ried
1
J'utilise smcFanControl, mais existe-t-il un moyen d'accéder à ses informations depuis le terminal? C'est ce qui m'intéresse le plus.
Joseph
Vous pouvez utiliser l' smcoutil de ligne de commande de smcFanControl pour obtenir la vitesse du ventilateur; github.com/hholtmann/smcFanControl/tree/master/smc-command
Graham Miln
Tu es presque là. spindump a une page de manuel ( man spindump) et vous pouvez définir le temps nécessaire à son exécution. La réponse est ci-dessous.
CousinCocaine

Réponses:

22

smcFanControl

Vous mentionnez dans vos commentaires avoir installé smcFanControl ; ce projet open source inclut l'outil de ligne de commande smc. Vous pouvez utiliser smcpour obtenir des informations sur la vitesse du ventilateur via Terminal.app:

smc -f

Voir la page de manuel de smc pour plus d'options.

Depuis Mac OS X 10.5, vous devez utiliser un logiciel tiers pour accéder aux informations sur la vitesse du ventilateur. Il semble qu'aucun outil, installé par défaut sur OS X, n'expose ces informations via le terminal.

Le projet open source Fan Control comprend un outil en ligne de commande qui fournit des informations sur la vitesse du ventilateur. Cet article, OS X: température actuelle du processeur en ligne de commande , parle du projet et de la façon d'extraire la vitesse du ventilateur:

smc -k TC0D -r | sed 's/.*bytes \(.*\))/\1/' |sed 's/\([0-9a-fA-F]*\)/0x\1/g' | perl -ne 'chomp; ($low,$high) = split(/ /); print (((hex($low)*256)+hex($high))/4/64); print "C\n";'

Évitez le spindump

spindumprequiert des privilèges d'administrateur et, lorsqu'il est exécuté manuellement, spindump échantillonne les piles d'utilisateurs et de noyau pour chaque processus du système. Il s'agit d'un processus coûteux en calcul, même lorsqu'il est exécuté pendant une seconde.

Alternatives

Il existe d'autres outils et applications, dont Temperature Monitor . Voir Puis-je obtenir la température du processeur et la vitesse du ventilateur à partir de la ligne de commande dans OS X?

Pré-Mac OS X 10.5

Cet article, obtenir des informations sur le capteur , montre comment utiliser ioregpour extraire les informations sur la vitesse du ventilateur avec:

ioreg -c IOHWSensor | grep -B3 -A11 '"type" = "fanspeed"'

L'article ci-dessus et le script qu'il contient ont été conçus pour Mac OS X 10.4.3.

Voir également:

Graham Miln
la source
1
Le moniteur de température de Bresink (que j'utilise) est gratuit pour lire la température, mais a besoin d'une licence pour lire d'autres capteurs (par exemple la vitesse du ventilateur).
Gilby
C'est bien, mais ne fonctionne que via la ligne de commande, pour trouver l'application allez sur:cd /Applications/smcFanControl.app/Contents/Resources/
dr.dimitru
3
brew install Caskroom/cask/smcfancontrolet son utilisation nécessite également un mot de passe.
Nakilon
7

Oneliner - donne une sortie après 1 seconde en utilisant spindump

SD=~/.spindump.txt;sudo rm $SD;sudo spindump 1 1 -file "$SD" ;grep "Fan speed" $SD

Chaque partie séparée a expliqué:

SD=~/.spindump.txt: créer une variable avec le journal .spindump.txt

sudo rm $SD: nettoyez votre fichier tmp en utilisant les droits sudo, car le fichier a été créé par sudo spindump.

sudo spindump 1 1 -file $SD: exécutez spindump en tant que root (il ne s'exécute qu'en tant que root) pendant 1 seconde dans 1 intervalle et affichez le fichier sur votre $ SD

grep "Fan speed" $SD: obtenez la ligne qui dit "Vitesse du ventilateur"

Il est très regrettable que nous ayons besoin des droits sudo pour exécuter ce script.


> SD=~/.spindump.txt;sudo rm $SD;sudo spindump 1 1 -file "$SD" ;grep "Fan speed" $SD

Password:
Sampling all processes for 1 seconds with 10 milliseconds of run time between samples
Focusing on launchd [1]
Sampling completed, processing symbols...
Spindump analysis written to file /Users/CousinCocaine/.spindump.txt
Fan speed:       2302 rpm
CousinCocaine
la source
J'utilise 10.8.5 sur un iMac et mon rapport de spindump n'inclut aucune mention de "Vitesse du ventilateur" ni même de "ventilateur".
aaaidan
J'utilise 10.9.1. Je ne trouve pas ma «version» de spindump, mais la vitesse de mon ventilateur est dans les 20 premières lignes.
CousinCocaine
êtes-vous sur un ordinateur portable ou de bureau?
aaaidan
@aaaidan J'utilise un Mac Mini (modèle matériel: Macmini5,3) et une rétine MBP (modèle matériel: MacBookPro11,1). Les deux ont la variable "Vitesse du ventilateur" dans leur sortie.
CousinCocaine
1
Ne trouvant pas cela fiable. sur mon Macbook, je dois retirer la partie tactile pour que cela fonctionne, mais le rm ne fonctionne pas. De plus, si je cours: sudo spindump 1 1 -file /tmp/spindump.txt > /dev/null 2>&1;grep "Fan speed" /tmp/spindump.txtun essai, ça marche, ensuite ça ne
marche
6

Sur Mojave, spindump ne semble pas lister la vitesse du ventilateur. A remarqué que la powermetrics le fait, cependant. Essayez de courir sudo powermetrics | grep Fansi vous êtes sur Mojave.

Supersheep
la source
J'ai juste essayé, mais je n'ai pas obtenu de sortie concernant la vitesse du ventilateur, la page de manuel n'indique rien non plus. Comment cela fonctionne-t-il exactement sur votre Mac?
nohillside
powermetrics ne prend que quelques secondes pour générer la vitesse du ventilateur, alors laissez-le fonctionner jusqu'à ce qu'il échantillonne le SMC. Dans la page de manuel de powermetrics sur 10.14.4, je vois ce qui suit dans la section Description de la sortie: "SMC: l'échantillonneur smc affiche les informations fournies par le contrôleur de gestion du système. Sur les plates-formes prises en charge, cela comprend la vitesse du ventilateur et les informations provenant de divers capteurs de température . " Mon système est un MacBookPro15,1 2018.
Supersheep
Ah, pour une raison quelconque, il ne parvient pas à lire les valeurs SMC sur mon Mac Mini ( unable to get smc values).
nohillside
2

J'ai donc récemment vérifié les commandes possibles avec le terminal (maintenez esc jusqu'à l'invite dans le terminal) et j'ai trouvé une commande qui peut vérifier le niveau thermique du processeur de la vitesse du ventilateur, etc. et la commande est "powermetrics" et nécessite sudo pour le faire. Si vous n'avez besoin que de la vitesse du ventilateur, vous pouvez inclure une option de smapling smc comme "powermetrics -s smc". Il se met à jour lentement, mais il peut être modifié en utilisant l'option -i et inclure un temps en millisecondes.

Jackson Chen
la source
0

J'ai un MBA avec des problèmes SMC et cette application résout mon problème. Le smcFanControl ne fonctionne pas pour moi et j'ai également essayé FanControl. Sous GNU / Linux, je peux définir les valeurs max et min via le terminal, donc si je le peux sous GNU / Linux, je dois faire de même dans un système Unix. Cette application est Macs Fan Control https://github.com/crystalidea/macs-fan-control/releases/download/v1.4.12/macsfancontrol.zip

J'espère aussi travailler pour toi

gnorkanburg
la source
-5

Cliquez trois fois sur ce qui suit, copiez-le et collez-le dans Terminal:

sudo spindump 1 1 -file /tmp/spindump.txt > /dev/null 2>&1;grep "Fan speed" /tmp/spindump.txt;sudo rm /tmp/spindump.txt

Il devrait produire la vitesse du ventilateur.

Greg
la source
3
Dans la question, il dit qu'il ne veut pas faire exactement cela.
Spotlight
3
De plus, la question a reçu une réponse complète l'année dernière.
Joseph
Je voudrais ajouter ma voix à @ Spotlight.
DA Vincent
2
@Greg - Bienvenue sur Ask Different. La communauté peut sembler un peu brutale parfois, ce qui peut être un peu rebutant pour de nouveaux utilisateurs comme vous. J'applaudis vos efforts pour contribuer et je voulais vous orienter vers notre centre d'aide: Comment répondre comme ressource pour rédiger des réponses qui attireront des vues et des votes. Ne laissez pas les votes négatifs sur votre première réponse vous dissuader de contribuer à l'avenir.
Allan