Posso visualizzare le statistiche di sistema nel Terminale?


34

Il widget iStat Pro consente di monitorare diverse statistiche di sistema come

  • uso della CPU
  • larghezza di banda di rete in / out
  • utilizzo della memoria
  • ...

Come posso visualizzare tali statistiche di sistema nel Terminale?

inserisci qui la descrizione dell'immagine

Risposte:


56

A seconda di ciò che vuoi vedere, ci sono diverse opzioni a livello di Terminale:

  • top: mostra i processi in esecuzione, l'utilizzo della memoria e statistiche simili
  • iostat: mostra le statistiche di riepilogo I / O per terminale, dispositivo e SPU
  • vm_stat: mostra le statistiche della memoria virtuale di Mach
  • dfe diskutil list: report sullo spazio su disco utilizzato e gratuito
  • fs_usage: mostra l'attività del file sia per il disco che per la rete
  • nettop: mostra informazioni aggiornate sulla rete (un po 'come top per I / O di rete)
  • w: visualizza chi ha effettuato l'accesso, cosa sta facendo e carica il sistema
  • ifconfige ipconfig: dettagli dell'interfaccia di rete e del protocollo IP

La maggior parte di questi comandi ha un enorme elenco di opzioni, probabilmente è meglio consultare le pagine man per i dettagli.

Di solito mi affido top -u -s 10per identificare i processi di hogging della CPU e fs_usage -f filesys/ fs_usage -f networkper identificare i processi che generano molto carico su disco / rete.


@ JMY1000 LOL, in realtà mi piace l'idea di un processo che abbraccia la CPU :-) Grazie per la modifica.
Nohillside

@patrix Ah, il buon vecchio abbraccio della morte.
JMY1000,


4

È possibile utilizzare top. Mostrerà l'utilizzo di CPU e RAM insieme a tutti i processi. Ti mostrerà anche i pacchetti di rete in / out e i dati dei dischi letti / scritti.


2
E con man topte puoi vedere come personalizzare l'output.
Rene Larsen,

3

Quanto sopra sono ottimi comandi. Inoltre, mi piace usare

$ du -ks *

Per mostrare quanto spazio su disco stanno usando tutte le cartelle sotto la mia directory corrente.

Questo comando elenca le prime 10 directory in ordine di dimensione:

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

Per uno strumento di statistiche di sistema generale, mi piace lo sguardo di Python meglio di quello superiore:

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

Ecco come installarlo su Debian / Ubuntu:

$ sudo apt-get install glances

Ecco come installarlo su CentOS / Red Hat:

# yum  install glances

1

Se si verificano problemi di rete, in particolare con un server esposto a Internet, lsof (1) può essere estremamente utile. Elenca tutti i file aperti.

Ad esempio, lsof | fgrep '/Library/WebServer/ti mostrerà tutti i file aperti sul tuo server web. Ho usato molto questo per trovare e vietare "sanguisughe" e "robot" che stanno riducendo la mia larghezza di banda succhiando automaticamente file su file.


1

Il mio modo preferito di vedere l'utilizzo della CPU con un singolo comando che ritorna immediatamente è

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

-ax: tutti i processi, inclusi i processi non terminali e quelli che non possiedi.

-r: ordina per utilizzo della cpu

-o pcpu: genera solo il campo% cpu. % cpu è una media di 1 minuto del processo, ma sarà media per tutta la durata del processo se la sua durata è <1min.

awk: somma la prima colonna in ogni riga e stampa la somma alla fine.

Questa è una metrica CPU per core, quindi su una CPU 12 core puoi ottenere fino a 1200; non sei limitato a 100.


0

Ecco due comandi per determinare il tuo IP locale e pubblico:

IP locale

ipconfig getifaddr en1

Questo è quando si utilizza il Wi-Fi. Per uso Ethernet en0.

IP pubblico

curl whatismyip.org

1
Negli attuali MacBook Air (che non dispongono di una porta Ethernet) il codice del dispositivo Wi-Fi è en0. Puoi scoprire di cosa si tratta networksetup -listallhardwareports | grep -E '(Wi-Fi|AirPort)' -A 1 | grep -o "en.".
Lri,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.