Diferencia entre revisiones de «Procesos»

De Guía Ubuntu
Saltar a: navegación, buscar
(Retoques varios, suprimo enlace por otro (esta caído o desaparecido))
(Reformateado)
 
(No se muestran 12 ediciones intermedias realizadas por 7 usuarios)
Línea 5: Línea 5:
 
Para ver los procesos y sus estados existen diversas aplicaciones.  
 
Para ver los procesos y sus estados existen diversas aplicaciones.  
  
*Con interface gráfica: '''gnome-system-monitor'''
+
=== Mediante interface gráfica: '''gnome-system-monitor''' ===
 +
 
 +
[[Imagen:Monitor-del-sistema.jpg|center|thumb|''Fig.1'' Monitor del sistema (pestaña Servicios)]]
 +
 
 
Es una utilidad de gnome que muestra los procesos y permite monitorizar el estado del sistema.
 
Es una utilidad de gnome que muestra los procesos y permite monitorizar el estado del sistema.
 
Para ejecutar la aplicación hay que ir a '''Sistema -> Administración -> Monitor del sistema''' o basta con introducir en el terminal:
 
Para ejecutar la aplicación hay que ir a '''Sistema -> Administración -> Monitor del sistema''' o basta con introducir en el terminal:
Línea 11: Línea 14:
 
  $ sudo gnome-system-monitor  
 
  $ sudo gnome-system-monitor  
  
*En consola o Terminal: '''ps'''
+
=== En consola o Terminal ===
 +
====El comando '''top'''====
 +
Es el equivalente al ''Monitor del sistema'' en la línea de comandos. Muestra una lista de procesos que se pueden ordenar de diferentes formas.
 +
 
 +
$ sudo top
 +
 
 +
Permite realizar diferentes acciones sobre cada uno de ellos como ''[[#Finalizar un proceso| matarlo]]'' o cambiar su prioridad. Para más información [[Terminal#Órdenes|leer la página del manual]] de '''top'''.
 +
 
 +
====El comando '''ps'''====
 
El comando '''ps''' es el mejor modo de mostrar los procesos que se encuentran activos. Para ver todos los procesos activos con todos los detalles basta con abrir un terminal y teclear:
 
El comando '''ps''' es el mejor modo de mostrar los procesos que se encuentran activos. Para ver todos los procesos activos con todos los detalles basta con abrir un terminal y teclear:
  
Línea 20: Línea 31:
 
  UID        PID  PPID  C    SZ  RSS PSR STIME TTY          TIME CMD
 
  UID        PID  PPID  C    SZ  RSS PSR STIME TTY          TIME CMD
  
== Finalizar un proceso ==
+
Otra forma de listarlos es mediante:
  
*Utilizando '''gnome-system-monitor'''
+
$ sudo ps -AL
Basta con seleccionar el proceso a finalizar y presionar el botón: '''finalizar proceso'''
+
  
*En consola o Terminal utilizando el comando '''kill'''.
+
Para más información, [[Terminal#Órdenes|leer la página del manual]].
Para finalizar un proceso mediante la consola, es preciso conocer el número de identificación del proceso ('''PID'''). Para conocer el número basta con:
+
  
1. Listar los procesos:
+
== Finalizar un proceso ==
 +
{{Advertencia|Finalizar un proceso activo puede llevar a pérdidas de información y/o a la inestabilidad del sistema si no se conoce el proceso que se finaliza.}}
 +
===Utilizando el [[#Mostrando los procesos|monitor del sistema]].===
 +
Basta con ir a la pestaña de procesos, seleccionar el proceso a finalizar y presionar el botón: '''finalizar proceso'''.
  
$ sudo ps -AL
 
  
2. Buscar el proceso a finalizar y memorizar el número de la columna '''PID'''.
+
===En consola o Terminal utilizando el comando '''kill''' y '''killall'''.===
 +
Para finalizar un proceso mediante la consola, es preciso conocer el número de identificación del proceso ('''PID'''). Para conocer el número basta con [[#El comando ps|listar los procesos]].
 +
 
 +
[[#El comando ps|Listados los procesos]], buscar el proceso a finalizar y memorizar el número de la columna '''PID'''.
  
 
Una vez conocido el '''PID''' basta con ejecutar en un terminal:
 
Una vez conocido el '''PID''' basta con ejecutar en un terminal:
Línea 40: Línea 54:
 
Es conveniente comprobar que el proceso ha finalizado y ya no se encuentra en ejecución.
 
Es conveniente comprobar que el proceso ha finalizado y ya no se encuentra en ejecución.
  
== El concepto "carga del sistema" (''Load Average'') ==
+
Puede suceder en ocasiones que algún proceso no finalice luego de haber ejecutado kill. En estos casos se puede intentar finalizarlos con el comando kill y una señal "mas fuerte" que fuerza a los procesos a terminar mas allá de su voluntad:
  
La carga del sistema es la media de trabajos en cola durante un tiempo determinado. En Linux estos tiempos son 1, 5 y 15 minutos. En otras palabras, la carga del sistema para un minuto N es el número de procesos compitiendo por el uso de la CPU en un momento dado, promediada sobre los N minutos.
+
$ sudo kill -9 [PID]
  
La carga mínima de un sistema es de 0 y la máxima es ilimitada, aunque raramente excede de 20, e incluso más de 10 es poco usual. Sin embargo he administrado sistemas en los que algún proceso se ha ido demasiado, ¡¡¡llegando a una carga de 80!! Una carga de 1 ó 2 es lo típico. Menos de 1 es lo ideal.
+
Suele ocurrir que al listar los procesos activos el que se desea finalizar tiene distintas instancias abiertas, es decir, dispone de varias '''PID''' y para finalizarlo se necesitaría utilizar varias veces el comando kill. El comando '''killall''' se utiliza para finalizar todos los procesos que abre un comando. Como se puede suponer, al disponer de distintas '''PID''' no es ésta la que se le debe indicar al comando '''killall''' sino el nombre del proceso. Este nombre viene dado en el listado de procesos como '''CMD'''; entonces:
  
Para ver la carga de nuestro sistema podemos usar el comando '''top''':
+
$ sudo killall [CMD]
 +
 
 +
===Mediante el comando '''xkill'''.===
 +
El comando '''xkill''' es una utilidad para forzar el [[Sistema X Window|Servidor X]] a cerrar conexiones. Este comando se puede utilizar como el comando '''kill''':
 +
 
 +
$ sudo xkill -id  [PID]
 +
 
 +
La ventaja de este comando es que se puede utilizar sin necesidad de '''PID''', ya que si se introduce en el terminal:
 +
 
 +
$ xkill
 +
 
 +
El cursor se cambiará a una calavera y la aplicación ''matará'' (finalizará) el proceso que controle la ventana donde se haga click con la calavera.
 +
 
 +
== Pausar un proceso ==
 +
Para pausar un proceso, es preciso conocer el número de identificación del proceso ('''PID'''). Para conocer el número basta con [[#El comando ps|listar los procesos]].
 +
 
 +
[[#El comando ps|Listados los procesos]], buscar el proceso a pausar y memorizar el número de la columna '''PID'''.
 +
 
 +
Una vez conocido el '''PID''' basta con ejecutar en un terminal:
 +
 
 +
$ sudo kill -STOP [PID]
 +
 
 +
Para reanudarlo basta con teclear:
 +
 +
$ sudo kill -CONT [PID]
 +
 
 +
{{nota|Si el proceso a pausar es del usuario y no del sistema, no es necesario el empleo del comando '''sudo'''}}
 +
 
 +
 +
== El concepto "carga promedio del sistema" (''Load Average'') ==
 +
 
 +
La carga promedio del sistema es la media de trabajos en cola durante un tiempo determinado. En Linux estos tiempos son 1, 5 y 15 minutos. En otras palabras, la carga promedio del sistema para un minuto N es el número de procesos compitiendo por el uso de la CPU en un momento dado, promediada sobre los N minutos.
 +
 
 +
La carga promedio mínima de un sistema es de 0 y la máxima es ilimitada, aunque raramente excede de 20, e incluso más de 10 es poco usual. Sin embargo he administrado sistemas en los que algún proceso se ha ido demasiado, ¡llegando a una carga promedio de 80! Una carga promedio de 1 ó 2 es lo típico. Menor de 1 es lo ideal.
 +
 
 +
Para ver la carga promedio de nuestro sistema podemos usar el comando '''top''':
  
 
  $ top
 
  $ top
  
Que muestra algo similar a esto (al final de la primera línea se ven los tres números de la carga):
+
Que muestra algo similar a ésto (al final de la primera línea se ven los tres números de la carga promedio):
  
 
  top - 11:11:42 up  2:22,  5 users,  load average: 0.08, 0.36, 0.61
 
  top - 11:11:42 up  2:22,  5 users,  load average: 0.08, 0.36, 0.61
Línea 66: Línea 115:
 
     3 root      10  -5    0    0    0 S  0.0  0.0  0:00.20 events/0
 
     3 root      10  -5    0    0    0 S  0.0  0.0  0:00.20 events/0
 
     4 root      10  -5    0    0    0 S  0.0  0.0  0:00.02 khelper
 
     4 root      10  -5    0    0    0 S  0.0  0.0  0:00.02 khelper
 +
 +
 +
== Ver también ==
 +
 +
*[[Habilitar el Monitor del sistema|Habilitar el Monitor del sistema con la combinación Ctrl+Alt+Supr]]
  
 
== Enlaces externos ==
 
== Enlaces externos ==
  
* [http://www.zonasiete.org/manual/ch11.html ''Procesos''], parte de [http://www.zonasiete.org/manual/index.html ''Manual Linux eminentemente práctico de ZonaSiete.ORG'']
+
* [http://www.zonasiete.org/manual/ch11.html Procesos], parte de [http://www.zonasiete.org/manual/index.html ''Manual Linux eminentemente práctico de ZonaSiete.ORG'']
* [http://www.teamquest.com/resources/gunther/ldavg1.shtml ''UNIX® Load Average Part 1: How It Works''], en inglés.
+
* [http://www.teamquest.com/resources/gunther/ldavg1.shtml UNIX® Load Average Part 1: How It Works], en inglés.
  
 
[[Categoría:Conoce tu sistema]]
 
[[Categoría:Conoce tu sistema]]

Última revisión de 01:33 24 nov 2007

Un proceso es un programa o servicio normalmente en estado de ejecución o que esta siendo utilizado por Ubuntu. Por ejemplo, si estas navegando con Firefox, tendrás un proceso en ejecución en el mismo momento en tu sistema.

Mostrando los procesos

Para ver los procesos y sus estados existen diversas aplicaciones.

Mediante interface gráfica: gnome-system-monitor

Fig.1 Monitor del sistema (pestaña Servicios)

Es una utilidad de gnome que muestra los procesos y permite monitorizar el estado del sistema. Para ejecutar la aplicación hay que ir a Sistema -> Administración -> Monitor del sistema o basta con introducir en el terminal:

$ sudo gnome-system-monitor 

En consola o Terminal

El comando top

Es el equivalente al Monitor del sistema en la línea de comandos. Muestra una lista de procesos que se pueden ordenar de diferentes formas.

$ sudo top

Permite realizar diferentes acciones sobre cada uno de ellos como matarlo o cambiar su prioridad. Para más información leer la página del manual de top.

El comando ps

El comando ps es el mejor modo de mostrar los procesos que se encuentran activos. Para ver todos los procesos activos con todos los detalles basta con abrir un terminal y teclear:

$ sudo ps -AF

Esto mostrará un listado con la siguiente información:

UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD

Otra forma de listarlos es mediante:

$ sudo ps -AL

Para más información, leer la página del manual.

Finalizar un proceso

Nota advertencia.png Finalizar un proceso activo puede llevar a pérdidas de información y/o a la inestabilidad del sistema si no se conoce el proceso que se finaliza.

Utilizando el monitor del sistema.

Basta con ir a la pestaña de procesos, seleccionar el proceso a finalizar y presionar el botón: finalizar proceso.


En consola o Terminal utilizando el comando kill y killall.

Para finalizar un proceso mediante la consola, es preciso conocer el número de identificación del proceso (PID). Para conocer el número basta con listar los procesos.

Listados los procesos, buscar el proceso a finalizar y memorizar el número de la columna PID.

Una vez conocido el PID basta con ejecutar en un terminal:

$ sudo kill [PID]

Es conveniente comprobar que el proceso ha finalizado y ya no se encuentra en ejecución.

Puede suceder en ocasiones que algún proceso no finalice luego de haber ejecutado kill. En estos casos se puede intentar finalizarlos con el comando kill y una señal "mas fuerte" que fuerza a los procesos a terminar mas allá de su voluntad:

$ sudo kill -9 [PID]

Suele ocurrir que al listar los procesos activos el que se desea finalizar tiene distintas instancias abiertas, es decir, dispone de varias PID y para finalizarlo se necesitaría utilizar varias veces el comando kill. El comando killall se utiliza para finalizar todos los procesos que abre un comando. Como se puede suponer, al disponer de distintas PID no es ésta la que se le debe indicar al comando killall sino el nombre del proceso. Este nombre viene dado en el listado de procesos como CMD; entonces:

$ sudo killall [CMD]

Mediante el comando xkill.

El comando xkill es una utilidad para forzar el Servidor X a cerrar conexiones. Este comando se puede utilizar como el comando kill:

$ sudo xkill -id  [PID]

La ventaja de este comando es que se puede utilizar sin necesidad de PID, ya que si se introduce en el terminal:

$ xkill

El cursor se cambiará a una calavera y la aplicación matará (finalizará) el proceso que controle la ventana donde se haga click con la calavera.

Pausar un proceso

Para pausar un proceso, es preciso conocer el número de identificación del proceso (PID). Para conocer el número basta con listar los procesos.

Listados los procesos, buscar el proceso a pausar y memorizar el número de la columna PID.

Una vez conocido el PID basta con ejecutar en un terminal:

$ sudo kill -STOP [PID]

Para reanudarlo basta con teclear:

$ sudo kill -CONT [PID]
Nota clasica.png Si el proceso a pausar es del usuario y no del sistema, no es necesario el empleo del comando sudo


El concepto "carga promedio del sistema" (Load Average)

La carga promedio del sistema es la media de trabajos en cola durante un tiempo determinado. En Linux estos tiempos son 1, 5 y 15 minutos. En otras palabras, la carga promedio del sistema para un minuto N es el número de procesos compitiendo por el uso de la CPU en un momento dado, promediada sobre los N minutos.

La carga promedio mínima de un sistema es de 0 y la máxima es ilimitada, aunque raramente excede de 20, e incluso más de 10 es poco usual. Sin embargo he administrado sistemas en los que algún proceso se ha ido demasiado, ¡llegando a una carga promedio de 80! Una carga promedio de 1 ó 2 es lo típico. Menor de 1 es lo ideal.

Para ver la carga promedio de nuestro sistema podemos usar el comando top:

$ top

Que muestra algo similar a ésto (al final de la primera línea se ven los tres números de la carga promedio):

top - 11:11:42 up  2:22,  5 users,  load average: 0.08, 0.36, 0.61
Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu(s): 15.2% us,  0.7% sy,  0.0% ni, 83.8% id,  0.0% wa,  0.3% hi,  0.0% si
Mem:    515744k total,   463016k used,    52728k free,    13012k buffers
Swap:   979956k total,    13292k used,   966664k free,   119344k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11434 perico    15   0 32248  13m 8800 S 13.9  2.7   0:12.16 gnome-terminal
 7122 root      15   0 62564  48m 9516 S  1.3  9.6  11:13.49 Xorg
15542 perico    16   0  2132 1116  844 R  0.7  0.2   0:00.04 top
    1 root      16   0  1564  532  460 S  0.0  0.1   0:01.50 init
    2 root      34  19     0    0    0 S  0.0  0.0   0:00.01 ksoftirqd/0
    3 root      10  -5     0    0    0 S  0.0  0.0   0:00.20 events/0
    4 root      10  -5     0    0    0 S  0.0  0.0   0:00.02 khelper


Ver también

Enlaces externos