Puis-je voir les statistiques du système dans le terminal?

34

Le widget iStat Pro permet de surveiller différentes statistiques système telles que

  • l'utilisation du processeur
  • entrée / sortie de bande passante réseau
  • utilisation de la mémoire
  • ...

Comment afficher de telles statistiques système dans le terminal?

entrez la description de l'image ici

Gentmatt
la source

Réponses:

56

Selon ce que vous voulez voir, il y a plusieurs options au niveau du terminal:

  • top: affiche les processus en cours, l'utilisation de la mémoire et des statistiques similaires
  • iostat: affiche les statistiques sommaires d'E / S par terminal, périphérique et SPU
  • vm_stat: afficher les statistiques de la mémoire virtuelle Mach
  • dfet diskutil list: rapport sur l'espace disque utilisé et libre
  • fs_usage: affiche l'activité du fichier pour le disque et le réseau
  • nettop: afficher des informations mises à jour sur le réseau (un peu comme top pour net I / O)
  • w: afficher qui est connecté, ce qu’il fait et la charge du système
  • ifconfiget ipconfig: détails de l'interface réseau et du protocole IP

La plupart de ces commandes ont une très grande liste d'options. Il est probablement préférable de consulter les pages de manuel pour plus de détails.

Je compte généralement sur l’ top -u -s 10identification des processus monopolisés par le processeur et fs_usage -f filesys/ ou fs_usage -f networksur les processus générant beaucoup de charge disque / réseau.

nohillside
la source
@ JMY1000 LOL, j'aime bien l'idée d'un processus serrant la CPU :-) Merci pour l'édition.
nohillside
@patrix Ah, le bon vieux câlin de la mort.
JMY1000
6

La gemme ruby ​​iStats vous permet de visualiser la température du processeur via la ligne de commande.

Installation

$ gem install iStats

Usage

$ istats

Capture d'écran

Chris911
la source
4

Vous pouvez utiliser top. Il montrera l'utilisation du processeur et de la RAM avec tous les processus. Il vous montrera également les paquets réseau entrant / sortant et les données de disque lues / écrites.

Uko
la source
2
Et avec man topvous pouvez voir comment personnaliser la sortie.
Rene Larsen
3

Les commandes ci-dessus sont excellentes. Aussi, j'aime utiliser

$ du -ks *

Pour afficher la quantité d'espace disque utilisée par tous les dossiers situés sous mon répertoire actuel.

Cette commande répertorie les 10 meilleurs répertoires par ordre de taille:

$ du -sh * | sort -nr | head -10

Pour un outil de statistiques système global, j'aime les regards python mieux que top:

https://nicolargo.github.io/glances/

Voici comment l’installer sur Debian / Ubuntu:

$ sudo apt-get install glances

Voici comment l’installer sur CentOS / Red Hat:

# yum  install glances
utilisateur8128167
la source
1

Si vous rencontrez des problèmes de réseau, en particulier avec un serveur exposé à Internet, lsof (1) peut s'avérer extrêmement utile. Il répertorie tous les fichiers ouverts.

Par exemple, lsof | fgrep '/Library/WebServer/vous montrera tous les fichiers ouverts sur votre serveur Web. Je me sers beaucoup de cela pour trouver et interdire les "sangsues" et les "bots" qui réduisent ma bande passante en aspirant automatiquement fichier après fichier.

Jan Steinman
la source
1

Ma façon préférée de voir l'utilisation du processeur avec une seule commande qui retourne instantanément est

ps -axro pcpu | awk '{sum+=$1} END {print sum}'

-ax: tous les processus, y compris les processus non terminaux et ceux que vous ne possédez pas.

-r: trier par utilisation du processeur

-o pcpu: ne sort que le champ% cpu. % cpu correspond à une moyenne du processus d'une minute, mais sa moyenne sur la durée de vie du processus est inférieure à 1 minute.

awk: additionnez la première colonne de chaque ligne et imprimez la somme à la fin.

Il s’agit d’une mesure de processeur par cœur; vous pouvez donc obtenir jusqu’à 1 200 processeurs sur 12; vous n'êtes pas limité à 100.

jeremysprofile
la source
0

Voici deux commandes pour déterminer votre IP locale et publique:

IP locale

ipconfig getifaddr en1

C'est lors de l'utilisation du Wi-Fi. Pour une utilisation Ethernet en0.

IP publique

curl whatismyip.org
Gentmatt
la source
1
Sur les MacBook Air actuels (qui ne possèdent pas de port Ethernet), le code du périphérique Wi-Fi est en0. Vous pouvez trouver ce que c'est avec networksetup -listallhardwareports | grep -E '(Wi-Fi|AirPort)' -A 1 | grep -o "en.".
Lri