Ver destacados

Ver qué proceso y quién está usando un archivo Linux

Tutorial para poder ver el listado de procesos y saber qué proceso está usando un archivo en Linux.
Escrito por
44.7K Visitas  |  Publicado abr 25 2019 12:55
Favorito
Compartir
Comparte esta pagina a tus Amigos y Contactos usando las siguientes Redes Sociales


El sistema operativo Linux ha sido desarrollado con una serie de procesos los cuales permiten que tanto las aplicaciones como los parámetros propios del sistema puedan correr sin problema según su respectiva tarea. Es necesario que comprendamos que cada proceso lleva a cabo una acción en especial, algunos procesos permitirán que nos conectemos a la red, otros harán posible que accedamos a programas, etc, de modo que si algo ocurre con un proceso puede perjudicar ciertas acciones a realizar sobre este. Los procesos son representados por aquellos programas que se están ejecutando y se identifican a través del PID o número de proceso que es asignado cuando se ejecuta o inicia.

 

En este tutorial te explicamos cómo establecer prioridades en los procesos de las distros Linux usando nice y renice.

 

Cuando diferentes usuarios pueden acceder al sistema, como es normal, puede suceder que alguno tenga abierto algún archivo e imposibilite que nosotros accedamos a dicho proceso. Otra cosa con la que debes contar es que si te nombramos “archivo” nuestra mente se imagina un documento de texto, una imagen, una hoja de cálculo, etc, pero en los sistemas operativos Linux un archivo va mucho más allá de este concepto ya que allí un archivo puede ser:

 

Tipos de archivos

 

  • Un archivo de red
  • Un archivo de bloque
  • Un directorio
  • Archivos especiales de caracteres
  • Aplicaciones o programas y mucho más.

 

 

¿Ves que Linux cambia el modo de pensar los conceptos?, por ello es más que necesario que seamos capaces de comprender cómo acceder a estos archivos y procesos con el fin de visualizar que usuario lo tiene en ejecución en tiempo real y si es posible tomar las acciones necesarias según sea el caso.

 

Tutorial en el que explicamos qué es, para qué sirve y cómo descargar y utilizar el comando Whowatch en Linux paso a paso.

 

Solvetic te explicará a través de este tutorial como podemos realizar el proceso de visualizar los procesos y saber en detalle que usuario lo tiene abierto.

 

 


1. Usar el comando lsof para detectar el uso de archivos en Linux

 

El comando lsof es un comando integrado en Linux gracias al cual podemos obtener información sobre los archivos que se abren por procesos en el sistema, es decir, lsof se encarga de listar los ficheros abiertos en la distribución de Linux usada.

 

Para empezar a comprender su uso vamos a ejecutar la siguiente línea:

lsof /dev/null
El archivo /dev/null es un archivo especial el cual está en la capacidad de omitir la información que es escrita en el asimismo la información que es redireccionada hacia él.
Como resultado de esta orden, veremos detalles como:
  • Comando usado
  • PID del proceso
  • Usuario activo
  • Tipo de servicio
  • Dispositivo
  • Nodo usado

 

 

 

 

Desplegar solo procesos de un usuario
Como es natural que diversos usuarios estén actuando de forma simultánea, podemos aplicar un filtro para desplegar solo los procesos o archivos de un usuario en particular, por ejemplo el usuario “Solvetic”, para ello usaremos el parámetro -u de la siguiente forma:
lsof -u Solvetic
Como resultado encontramos detalles mucho más completos sobre dicho usuario en particular:

 

 

 

 

 

Mostrar detalles de un servicio de protocolo
Como lsof es un comando muy integral, si deseamos saber en detalle los procesos o servicios de un determinado protocolo, por ejemplo, TCP, ejecutaremos lo siguiente:
sudo lsof -i TCP

 

En caso de definir un puerto en particular debemos ejecutar lo siguiente:

sudo lsof -i TCP:80

 

Ver actividad de red actual
Para visualizar la actividad de red en tiempo real en Linux ejecutaremos la siguiente línea:
lsof -i

 

 

Validar servicios y puertos
Si el objetivo es validar los servicios y/y puertos que están escuchando debemos hacer uso de la siguiente línea:
lsof -i -nP

 

 

Ver archivos abiertos concretos
Si es requerido ver los archivos abiertos por un proceso o programa en específico la línea a usar será la siguiente:
lsof -c cupsd

 

 

Con el fin de observar los archivos que están abiertos en un directorio específico, debemos añadir el parámetro -D así:

sudo lsof +D /etc

 

 

 

Listar archivos por direccionamiento
Para listar los archivos en base al direccionamiento de Internet disponemos de las siguientes opciones:
lsof -i 4 (Direccionamiento IPv4)
lsof -i 6 (Direccionamiento IPv6)

 

 

 

 


2. Usar el comando ps para detectar el uso de archivos en Linux

 

Como administradores de Linux en muchas ocasiones debemos ver todos los procesos activos en ese momento. Esto puede ser por razones de tareas administrativas o de soporte, para visualizar los procesos en Linux basta con ejecutar el comando ps (process status):

 

Listar procesos iniciados desde shell
ps (esta opción solo lista los procesos que han sido iniciados desde el shell actual)

 

 

Acceder a detalles de todos los procesos
Si deseamos acceder a la información de todos los procesos, debemos añadir el parámetro -A así:
ps -A

 

 

 

Desplegar todos los procesos
Además de esto, podemos combinar los parámetros a, u y x de forma conjunta, ¿con cuál fin?, simple, desplegar todos los procesos que están siendo ejecutados para todos los usuarios de la distribución de Linux, así como información detallada como:
  • El nombre de usuario del proceso
  • La hora de inicio del proceso
  • Carga de CPU del proceso
  • Comando con el cual se inició el proceso
  • TTY y más detalles
ps aux

 

 

Solvetic siempre te da los mejores consejos para que las labores de información y gestión sean lo más completas posibles y gracias a estas opciones podremos conocer los procesos y archivos abiertos en Linux.

 

Te mostramos diferentes comandos strace para solucionar problemas de procesos en Linux

¿Te ayudó este Tutorial?

Ayuda a mejorar este Tutorial!
¿Quieres ayudarnos a mejorar este tutorial más? Puedes enviar tu Revisión con los cambios que considere útiles. Ya hay 0 usuario que han contribuido en este tutorial al enviar sus Revisiones. ¡Puedes ser el próximo!