Ecco come gestire i processi! – I parte
La gestione dei processi in un sistema GNU/Linux è essenziale ed importante al fine di amministrare tutto consapevolmente. In molti casi i processi nascono, vivono e muoiono senza alcun intervento esterno, ma in alcune occasioni si verificano delle anomalie che costringono l’amministratore di sistema ad un azione tempestiva.
Cosa si intende per processo?
Ogni programma, comando o script avviato nel sistema è un processo. Prima di mostrare gli strumenti di “monitoring” dei processi definiamo alcuni concetti:
- Tempo di vita: il tempo necessario di un processo per l’esecuzione. Per esempio per il comando ls o cd il tempo di esecuzione è cortissimo. Per quanto riguarda il tempo di esecuzione di un comando cp dipende dal quantitativo di dati da copiare e così via.
- ID del processo: quando un processo si avvia ad esso viene attribuito un numero o Process ID (PID).
- UID & GID: ad ogni processo viene associato l’utente (UID) e il gruppo (GID) che ha lanciato il processo.
- Processo Padre: il primo processo che avvia il kernel è il processo init che ha ovviamento un numero di PID uguale a 1. Tutti i processi successivi ad init sono considerati sotto-processi o figli.
- ID del processo padre: numero ID del padre che ha generato il processo o più figli con numero PID successivo.
Questi concetti sono importanti per una gestione approfondita dei processi.
GLI STRUMENTI DI MONITORING
Adesso, è il momento degli strumenti di “monitoring” e in particolare dei comandi o utility ps, pstree e top. Per quanto riguarda il primo comando e cioè ps, ad esso possono essere associate le seguenti opzioni:
| Opzione | Azione |
| -a | Visualizza i processi degli utenti correnti |
| -f | Formato esteso delle informazioni |
| -l | Formato “lungo” delle informazioni |
| -u | Formato “utente” delle informazioni |
| -w | Formato “Wide” delle informazioni |
| -x | Include i processi non legati ai terminali |
| -C cmd | Visualizza le istanze del comando cmd |
| -U utente | Visualizza i processi di un utente |
Inserendo da shell il comando ps senza alcuna opzione dovrebbero apparire una serie di processi appartenenti all’utente che ha avviato il comando e “legati” al suo terminale. Utilizzando una estensione più complessa del comando e cioè ps aux vengono visualizzati tutti i processi degli altri utenti e anche quelli non “legati” ai terminali. Se, per qualche ragione si è interessati ad un processo legato ad un comando si può utilizzare l’opzione -C come di seguito descritto:
# ps u -C cp
Al posto dell’opzione -C si può utilizzare anche il seguente comando per visualizzare tutti i processi legati al comando cp:
# ps aux | grep cp
Per ora, la prima parte è terminata, spero di avervi incuriosito, e naturalmente attendete la seconda parte che sarà molto più interessante!
Se desiderate altri articoli, per fare in modo che il sito continui a vivere, versate un piccolo contributo in Bitcoin al seguente indirizzo. Un contributo per scrivere di più al fine di migliorare la qualità degli articoli.
Indirizzo BTC: 3EJZiSmqRkoZ48ae2pYbKupMYQqoQvxdxe
