viernes, 14 de mayo de 2010

ps y kill ---- Necesitas terminar procesos....

... en otra máquina o server, incluso remotamente???

Dale:
Para esto tenemos que usar un par de comandos. El Comando ps con el agregado de -ef nos dá en forma de listado, todos los procesos lanzados.
:~$ ps -ef
y nos devuelve algo así:
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 May13 ? 00:00:00 /sbin/init
root 2 0 0 May13 ? 00:00:00 [kthreadd]
root 3 2 0 May13 ? 00:00:00 [migration/0]
gabriel 17420 1 0 11:01 ? 00:00:12 skype
gabriel 18942 1 0 10:00 ? 00:00:02 empathy


También podemos lanzarlo así: do ps con el agregado de -ef nos dá en forma de listado, todos los procesos lanzados.
:~$ ps aux
y nos devuelve algo así:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2612 1012 ? Ss May13 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S< May13 0:00 [kthreadd] gabriel 17420 0.6 2.3 199388 47840 ? Sl 11:01 0:12 skype gabriel 18942 0.0 0.4 76040 9100 ? S 10:00 0:02 empathy


Teniendo todos estos datos entregados por el comando ps, y como necesitamos detener un proceso, tenemos que utilizar el comando kill, para esto escribimos:
:~$ kill [Número_de_PID]
y esto detendrá el proceso.

También podemos utilizar el comando pkill que nos dá la posibilidad de detener los procesos por medio del nombre del comando, para esto escribimos:
:~$ pkill [Nombre_de_COMMAND] ó :~$ pkill [Nombre_de_CMD]
y esto detendrá el proceso.

Si queremos conocer los procesos disparados por los distintos usuarios que esten utilizando el server o la terminal, ejecutamos:
:~$ ps -U [nombre_de_usuario]
y nos devuelve algo así:
PID TTY TIME CMD
1 ? 00:00:00 init
2043 ? 00:00:00 proftpd
2124 ? 00:00:00 apache2


Y para matar una sesión, remota o local, ejecutamos
:~$ pkill -U [nombre_de_usuario]

Y como siempre digo, para saber más sobre el comando ps:
:~$ man ps, también :~$ man kill

No hay comentarios:

Publicar un comentario