En aquest tema, aprendrem a gestionar processos en un sistema Linux. La gestió de processos és una habilitat essencial per a qualsevol administrador de sistemes, ja que permet controlar i optimitzar l'ús dels recursos del sistema.
Conceptes Clau
- Procés: Un programa en execució.
- PID (Process ID): Identificador únic d'un procés.
- PPID (Parent Process ID): Identificador del procés pare.
- Estat del procés: Pot ser en execució, en espera, aturat, etc.
- Prioritat del procés: Determina l'ordre d'execució dels processos.
Comandes Bàsiques per a la Gestió de Processos
ps
ps
La comanda ps
mostra una llista dels processos en execució.
a
: Mostra processos de tots els usuaris.u
: Mostra informació detallada dels processos.x
: Inclou processos que no tenen un terminal associat.
top
top
La comanda top
proporciona una vista en temps real dels processos en execució.
h
: Mostra l'ajuda.k
: Permet matar un procés.r
: Permet canviar la prioritat d'un procés.
htop
htop
htop
és una versió millorada de top
amb una interfície més amigable.
kill
kill
La comanda kill
s'utilitza per enviar senyals a un procés, normalment per acabar-lo.
-9
: Envia el senyal SIGKILL per forçar l'acabament del procés.
pkill
pkill
pkill
permet matar processos basant-se en el nom del procés.
nice
i renice
nice
i renice
nice
s'utilitza per establir la prioritat d'un procés en el moment de la seva execució.
renice
canvia la prioritat d'un procés en execució.
Exemples Pràctics
Exemple 1: Llistar Processos
Aquest exemple llista tots els processos relacionats amb apache2
.
Exemple 2: Matar un Procés
Aquest exemple mata el procés amb PID 1234.
Exemple 3: Canviar la Prioritat d'un Procés
Aquest exemple canvia la prioritat del procés amb PID 1234 a 10.
Exercicis Pràctics
Exercici 1: Llistar Processos
- Utilitza la comanda
ps
per llistar tots els processos en execució. - Filtra els processos per nom utilitzant
grep
.
Exercici 2: Matar un Procés
- Identifica un procés en execució amb
ps
otop
. - Mata el procés utilitzant
kill
.
Exercici 3: Canviar la Prioritat d'un Procés
- Executa un procés amb una prioritat específica utilitzant
nice
. - Canvia la prioritat d'un procés en execució utilitzant
renice
.
Solucions
Solució a l'Exercici 1
Solució a l'Exercici 2
Solució a l'Exercici 3
Errors Comuns i Consells
-
Error: No es pot matar un procés amb
kill
.- Solució: Assegura't d'utilitzar
sudo
si el procés pertany a un altre usuari o utilitzakill -9
per forçar l'acabament.
- Solució: Assegura't d'utilitzar
-
Error: No es troba el procés amb
ps
.- Solució: Utilitza
ps aux
per assegurar-te que estàs llistant tots els processos.
- Solució: Utilitza
Conclusió
La gestió de processos és una habilitat fonamental per a qualsevol administrador de sistemes Linux. Amb les comandes ps
, top
, htop
, kill
, pkill
, nice
i renice
, pots controlar i optimitzar l'ús dels recursos del sistema de manera eficient. Practica aquestes comandes per familiaritzar-te amb elles i millorar les teves habilitats en la gestió de processos.
Domini de Linux: De Principiant a Avançat
Mòdul 1: Introducció a Linux
- Què és Linux?
- Història de Linux
- Distribucions de Linux
- Instal·lant Linux
- Estructura del Sistema de Fitxers de Linux
Mòdul 2: Comandes Bàsiques de Linux
- Introducció a la Línia de Comandes
- Navegant pel Sistema de Fitxers
- Operacions amb Fitxers i Directoris
- Visualització i Edició de Fitxers
- Permisos i Propietat dels Fitxers
Mòdul 3: Habilitats Avançades de la Línia de Comandes
- Ús de Comodins i Expressions Regulars
- Piping i Redirecció
- Gestió de Processos
- Programació de Tasques amb Cron
- Comandes de Xarxa
Mòdul 4: Scripting de Shell
- Introducció al Scripting de Shell
- Variables i Tipus de Dades
- Estructures de Control
- Funcions i Biblioteques
- Depuració i Gestió d'Errors
Mòdul 5: Administració del Sistema
- Gestió d'Usuaris i Grups
- Gestió de Discs
- Gestió de Paquets
- Monitorització del Sistema i Optimització del Rendiment
- Còpia de Seguretat i Restauració
Mòdul 6: Xarxes i Seguretat
- Configuració de Xarxa
- Tallafocs i Seguretat
- SSH i Accés Remot
- Sistemes de Detecció d'Intrusions
- Assegurant Sistemes Linux
Mòdul 7: Temes Avançats
- Virtualització amb Linux
- Contenidors de Linux i Docker
- Automatització amb Ansible
- Optimització del Nucli de Linux
- Alta Disponibilitat i Balanceig de Càrrega