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
psLa 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
topLa 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
htophtop és una versió millorada de top amb una interfície més amigable.
kill
killLa 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
pkillpkill permet matar processos basant-se en el nom del procés.
nice i renice
nice i renicenice 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
psper 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
psotop. - 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
sudosi el procés pertany a un altre usuari o utilitzakill -9per forçar l'acabament.
- Solució: Assegura't d'utilitzar
-
Error: No es troba el procés amb
ps.- Solució: Utilitza
ps auxper 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
