Informazioni sui processi: i comandi ps e pstree

Questi due comandi visualizzano una lista dei processi attualmente in esecuzione sul sistema, secondo i criteri da voi stabiliti.

ps

Digitando questo comando senza alcun argomento, verranno mostrati solo i processi avviati da voi e collegati al terminale che voi state utilizzando:

		  $ ps
		  PID TTY          TIME CMD
		  18614 pts/3    00:00:00 bash
		  20173 pts/3    00:00:00 ps
		  

Come d'abitudine per molti programmi di utilità UNIX, ps dispone di un gran numero di opzioni, ve ne segnaliamo alcune tra le più comuni:

  • a: visualizza anche i processi avviati da altri utenti;

  • x: visualizza anche i processi che non hanno un terminale di controllo o che ne hanno uno diverso da quello che state usando;

  • u: visualizza per ciascun processo il nome dell'utente che lo ha avviato e l'ora in cui è partito.

Vi sono molte altre opzioni. Fate riferimento alla pagina di manuale ps(1) per ulteriori informazioni.

L'output di questo comando è suddiviso in due diversi campi: quello che vi interesserà di più è il campo PID, che contiene il numero identificativo del processo. Il campo CMD contiene il nome del comando eseguito. Un modo molto comune di lanciare ps è il seguente:

$ ps ax | less 

Questo vi dà una lista di tutti i processi attualmente in esecuzione, in maniera tale da permettervi di identificare uno o più processi che stanno causando problemi e quindi di terminarli.

pstree

Il comando pstree visualizza i processi sotto forma di struttura ad albero. Uno dei vantaggi è che potete immediatamente vedere qual è il processo padre di un altro processo: quando volete terminare un'intera serie di processi e tutti questi sono padre o figlio l'uno dell'altro, dovete semplicemente terminare il processo padre. Potete utilizzare l'opzione -p, che visualizza il PID di ciascun processo, e l'opzione -u che visualizza il nome dell'utente che ha avviato il processo. Poiché la struttura ad albero è generalmente lunga, può essere utile eseguire pstree in questo modo:

$ pstree -up | less 

Questo vi fornisce una visione schematica dell'intero albero dei processi.