Cómo utilizar procfs para obtener información relacionada con el sistema en Linux

Si observa el sistema de archivos de Linux, es posible que haya notado un directorio / proc con muchos números extraños y otros archivos dentro. ¿Qué hace este directorio? En realidad, contiene mucha información útil asociada con su sistema Linux y los procesos en ejecución.

Este artículo discutirá el sistema de archivos proc en detalle, junto con una breve guía sobre cómo obtener información relacionada con el sistema usando procfs.

¿Qué es el sistema de archivos proc?

El sistema de archivos proc (procfs) es una idea tomada del sistema de investigación Plan 9 de Bell Labs , una investigación sucesora del sistema Unix original desarrollado allí.

El sistema de archivos extiende el concepto original de tener "todo como un archivo", incluidos los dispositivos de hardware, hasta su conclusión lógica al representar cada proceso en ejecución en el sistema como una jerarquía de archivos que puede examinar con herramientas estándar.

El archivo más útil en la jerarquía proc para la información del sistema es el archivo cpuinfo . Para verlo, escriba:

 cat /proc/cpuinfo

Dependiendo de cuántos núcleos de CPU tenga su máquina, este archivo puede contener mucha información. Por lo tanto, es posible que desee sustituir cat por Most, que es un localizador de Linux .

Otros archivos útiles en el directorio / proc son meminfo , que muestra detalles asociados con la memoria del sistema, y ​​el archivo de montajes , que proporciona información sobre el sistema de archivos montado. Puede examinar fácilmente estos archivos con las herramientas estándar de procesamiento de texto de Linux.

Relacionado: Las mejores utilidades de línea de comandos para ver contenido de archivos en Linux

En el sistema de archivos proc, todos los procesos en ejecución tienen su propio directorio, que es su número de identificación de proceso, o PID. Por ejemplo, el proceso 1, el proceso de inicio que inicia todos los demás procesos en el sistema Linux en el momento del arranque, tiene su propio directorio con el mismo número, / proc / 1 .

Mientras encuentra el proceso que desea investigar, usará el comando ps , top, htop u otros comandos de Linux para enumerar el PID de ese proceso en particular. Cuando haya encontrado el ID del proceso, navegue hasta ese directorio en / proc .

Dentro del directorio de procesos, encontrará varios archivos que contienen información sobre diferentes facetas del proceso. Por ejemplo, exe es un enlace simbólico al ejecutable que inició el proceso, las variables de entorno Environ listas, y la línea de órdenes muestra los argumentos de línea de comandos el proceso se inició con. El archivo de estado enumera mucha de esta información en un formato más "legible por humanos".

Relacionado: ¿Qué es un proceso en Linux?

Obtener información del sistema mediante procfs

El sistema de archivos proc muestra que casi todo es un archivo en Linux, incluso las cosas que no esperaría. Incluso dentro de la carpeta raíz, encontrará muchos archivos, cada uno de ellos con información sobre diferentes componentes del sistema.

Linux, con sus comandos únicos e innumerables distribuciones, puede parecer un sistema operativo misterioso para los principiantes al principio, pero todo está en su lugar correcto.