| Red Hat Enterprise Linux 4: Manual de referencia | ||
|---|---|---|
| Anterior | Capítulo 5. El sistema de archivos /proc | Siguiente |
La siguiente lista expone algunos de los archivos más comunes y útiles que se encuentran en el directorio /proc.
![]() | Nota |
|---|---|
En la mayoría de los casos, el contenido de los archivos que aparecen en esta sección no será el mismo que aquellos instalados en su máquina. Esto se debe a que la mayor parte de la información es específica al hardware en el que esté ejecutando Red Hat Enterprise Linux para esta documentación. |
Este archivo proporciona información acerca del estado de la Administración de la energía avanzada (Advanced Power Management, APM), y es usado por el comando apm. Si un sistema sin batería está conectado a una fuente de poder AC, este archivo virtual se vería similar a:
1.16 1.2 0x07 0x01 0xff 0x80 -1% -1 ? |
Al ejecutar el comando apm -v en tal sistema resulta en una salida similar a lo siguiente:
APM BIOS 1.2 (kernel driver 1.16ac) AC on-line, no system battery |
Para sistemas que no usan una batería como fuente de poder, apm sólo será capaz de poner la máquina en modo standby. El comando apm es mucho más útil en portátiles. Por ejemplo, la salida siguiente es del comando cat /proc/apm en una portátil mientras que está conectado a una toma de corriente:
1.16 1.2 0x03 0x01 0x03 0x09 100% -1 ? |
Cuando la misma portátil está desconectada de su fuente de energía durante algunos minutos, los contenidos del archivo apm cambiarán a algo como:
1.16 1.2 0x03 0x00 0x00 0x01 99% 1792 min |
El comando apm -v muestra información más útil tal como la siguiente:
APM BIOS 1.2 (kernel driver 1.16) AC off-line, battery status high: 99% (1 day, 5:52) |
Este archivo se utiliza principalmente para diagnosticar problemas de fragmentación de memoria. Utilizando el algoritmo buddy, cada columna representa el número de páginas de un cierto orden (de un cierto tamaño) que están disponibles en un momento dado. Por ejemplo, para la zona DMA (acceso directo a memoria), hay 90 de 2^(0*PAGE_SIZE) pedazos de memoria. De forma similar, hay 6 de 2^(1*PAGE_SIZE) pedazos, y 2 de 2^(2*PAGE_SIZE) pedazos de memoria disponibles.
La fila DMA hace referencia a los primeros 16 MB en un sistema, la fila HighMem referencia toda la memoria mayor que 4 GB en un sistema, y la fila Normal se refiere a toda la memoria en medio de las anteriores.
Lo siguiente es un ejemplo de la salida típica de /proc/buddyinfo:
Node 0, zone DMA 90 6 2 1 1 ... Node 0, zone Normal 1650 310 5 0 0 ... Node 0, zone HighMem 2 0 0 1 1 ... |
Este archivo muestra los parámetros pasados al kernel en el momento en que éste inicia. Un ejemplo del archivo /proc/cmdline se vería como sigue?
ro root=/dev/VolGroup00/LogVol00 rhgb quiet 3 |
Esto nos dice que el kernel está montado como de sólo lectura (representado por (ro)), ubicado en el primer volumen lógico (LogVol00) del primer grupo de volúmenes (/dev/VolGroup00). LogVol00 es el equivalente a una partición de disco en un sistema no-LVM (Logical Volume Management), de la misma forma que /dev/VolGroup00 es un concepto similar a /dev/hda1,
Para más información sobre LVM utilizado en Red Hat Enterprise Linux, consulte http://www.tldp.org/HOWTO/LVM-HOWTO/index.html.
Luego, rhgb señala que se ha instalado el paquete rhgb y que se tiene soporte para el arranque gráfico, asumiendo que /etc/inittab muestra un nivel de ejecución por defecto configurado a id:5:initdefault:.
Finalmente, quiet indica que se van a suprimir todos los mensajes al momento del arranque.
Este archivo virtual identifica el tipo de procesador usado por su sistema. A continuación se muestra un ejemplo de la salida típica de /proc/cpuinfo:
processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Xeon(TM) CPU 2.40GHz stepping : 7 cpu MHz : 2392.371 cache size : 512 KB physical id : 0 siblings : 2 runqueue : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm bogomips : 4771.02 |
processor — Proporciona un número de identificación para cada procesador. En sistemas con un único procesador, tan sólo verá un 0.
cpu family — Le da de forma autorizada el tipo de procesador que tiene en el sistema. Para un sistema basado en Intel, ponga el número delante del "86" para calcular el valor. Esto le servirá de ayuda si se está preguntando sobre el tipo de arquitectura de un sistema antiguo tal como 586, 486 o 386. Ya que los paquetes RPM están compilados para cada una de estas arquitecturas particulares, este valor le ayuda a identificar qué paquetes instalar en el sistema.
model name — Le indica el nombre conocido del procesador, incluyendo el nombre de proyecto.
cpu MHz — Le muestra la velocidad precisa en megahertz de ese procesador en particular en milésimas.
cache size — Le indica la cantidad de memoria de nivel 2 de la caché disponible en el procesador.
siblings — Lista el número de CPUs hermanos dentro del mismo CPU físico para las arquitecturas que utilizan múltiples hilos (hyper-threading).
flags — Define un número de cualidades diferentes del procesador, como la presencia de una unidad de coma flotante (FPU) y la habilidad para procesar instrucciones MMX.
Este archivo lista todos los códigos de cifrado utilizados por el kernel de Linux, incluyendo detalles adicionales para cada uno. Un ejemplo del archivo /proc/crypto se vería como sigue:
name : sha1 module : kernel type : digest blocksize : 64 digestsize : 20 name : md5 module : md5 type : digest blocksize : 64 digestsize : 16 |
Este archivo muestra los diversos dispositivos de carácteres y de bloque actualmente configurados (no incluye dispositivos cuyos módulos no están cargados). Una salida de datos de ejemplo de este archivo quedaría de la siguiente manera:
Character devices: 1 mem 4 /dev/vc/0 4 tty 4 ttyS 5 /dev/tty 5 /dev/console 5 /dev/ptmx 7 vcs 10 misc 13 input 29 fb 36 netlink 128 ptm 136 pts 180 usb Block devices: 1 ramdisk 3 ide0 9 md 22 ide1 253 device-mapper 254 mdp |
La salida de datos desde /proc/devices incluye el número mayor y el nombre del dispositivo y se divide en dos secciones: Dispositivos de carácteres y Dispositivos de bloque.
Los Dispositivos de carácteres son similares a los Dispositivos de bloque, excepto por dos diferencias básicas:
Los dispositivos de carácteres no requieren buffering. Los dispositivos de bloque disponen de una memoria intermedia o buffer que les permite ordenar las peticiones antes de tratar con ellas. Esto es muy importante para los dispositivos diseñados para guardar información — tales como discos duros — porque la habilidad de ordenar la información antes de escribirla en el dispositivo permite que ésta se almacene de forma más eficiente.
Los dispositivos de carácteres envían datos sin un tamaño preconfigurado. Los dispositivos de bloque pueden enviar y recibir información en bloques de un tamaño particular, configurable por dispositivo.
Para más información sobre los dispositivos refiérase a la siguiente documentación instalada:
/usr/share/doc/kernel-doc-<version>/Documentation/devices.txt |
Este archivo contiene una lista de los canales registrados DMA ISA en uso. Un ejemplo de los archivos /proc/dma se vería similar a:
4: cascade |
Este archivo lista los dominios de ejecución soportados en la actualidad por el kernel de Linux junto con la gama de personalidades que soportan.
0-0 Linux [kernel] |
Piense en los dominios de ejecución como en una especie de "personalidad" de un sistema operativo. Debido a que se pueden usar otros formatos binarios, como Solaris, UnixWare y FreeBSD con Linux, los programadores pueden cambiar el modo en el que el sistema operativo trata las llamadas del sistema desde estos binarios mediante el cambio de la personalidad de la tarea. A excepción del dominio de ejecución PER_LINUX, se puede implementar diferentes personalidades como módulos cargables de forma dinámica.
Este archivo contiene una lista de dispositivos frame buffer, con el número del dispositivo frame buffer y su controlador. La salida de datos más común de /proc/fb para sistemas que contienen dispositivos de frame buffer se ve similar a:
0 VESA VGA |
Este archivo muestra una lista de los tipos del sistema de archivos soportados actualmente por el kernel. A continuación tiene un ejemplo de salida de datos genérica de un archivo /proc/filesystems:
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev binfmt_misc
nodev usbfs
nodev usbdevfs
nodev futexfs
nodev tmpfs
nodev pipefs
nodev eventpollfs
nodev devpts
ext2
nodev ramfs
nodev hugetlbfs
iso9660
nodev mqueue
ext3
nodev rpc_pipefs
nodev autofs |
La primera columna significa si el sistema de archivos está montado en un dispositivo de bloque. Aquellos que comiencen con nodev no están montados en un dispositivo. La segunda columna lista el nombre de los sistemas de archivos soportados.
El comando mount circula por estos sistemas de archivos listados aquí cuando uno no está especificado como un argumento.
Este archivo graba el número de interrupciones por IRQ en la arquitectura x86. Un archivo estándar /proc/interrupts es similar a lo siguiente:
CPU0 0: 80448940 XT-PIC timer 1: 174412 XT-PIC keyboard 2: 0 XT-PIC cascade 8: 1 XT-PIC rtc 10: 410964 XT-PIC eth0 12: 60330 XT-PIC PS/2 Mouse 14: 1314121 XT-PIC ide0 15: 5195422 XT-PIC ide1 NMI: 0 ERR: 0 |
Para una máquina con múltiples procesadores, el archivo aparecerá de forma diferente:
CPU0 CPU1 0: 1366814704 0 XT-PIC timer 1: 128 340 IO-APIC-edge keyboard 2: 0 0 XT-PIC cascade 8: 0 1 IO-APIC-edge rtc 12: 5323 5793 IO-APIC-edge PS/2 Mouse 13: 1 0 XT-PIC fpu 16: 11184294 15940594 IO-APIC-level Intel EtherExpress Pro 10/100 Ethernet 20: 8450043 11120093 IO-APIC-level megaraid 30: 10432 10722 IO-APIC-level aic7xxx 31: 23 22 IO-APIC-level aic7xxx NMI: 0 ERR: 0 |
La primera columna se refiere al número de IRQ. Cada CPU del sistema tiene su propia columna y su propio número de interrupciones por IRQ. La columna siguiente le indica el tipo de interrupción y la última contiene el nombre del dispositivo que está localizado en ese IRQ.
Cada uno de los tipos de interrupciones vistos en este archivo, que son específicos para la arquitectura, significan algo diferente. Los siguientes valores son comunes para las máquinas x86:
XT-PIC — Interrupciones del ordenador AT antiguo que se han producido por un largo periodo de tiempo.
IO-APIC-edge — Señal de voltaje de las transacciones interrumpidas desde abajo hasta arriba, creando una edge, en la que la interrupción IO-APIC-level, tan sólo se dan a partir de procesadores 586 y superiores.
IO-APIC-level — Genera interrupciones cuando su señal de voltaje se alza hasta que la señal desciende nuevamente.
Este archivo muestra el mapa actual de la memoria del sistema para los diversos dispositivos:
00000000-0009fbff : System RAM 0009fc00-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-07ffffff : System RAM 00100000-00291ba8 : Kernel code 00291ba9-002e09cb : Kernel data e0000000-e3ffffff : VIA Technologies, Inc. VT82C597 [Apollo VP3] e4000000-e7ffffff : PCI Bus #01 e4000000-e4003fff : Matrox Graphics, Inc. MGA G200 AGP e5000000-e57fffff : Matrox Graphics, Inc. MGA G200 AGP e8000000-e8ffffff : PCI Bus #01 e8000000-e8ffffff : Matrox Graphics, Inc. MGA G200 AGP ea000000-ea00007f : Digital Equipment Corporation DECchip 21140 [FasterNet] ea000000-ea00007f : tulip ffff0000-ffffffff : reserved |
La primera columna muestra los registros de memoria utilizados por cada uno de los diferentes tipos de memoria. La segunda columna indica el tipo de memoria de dichos registros y muestra qué registros de memoria son usados por el kernel dentro de la RAM del sistema o, si la tarjeta NIC tiene múltiples puertos Ethernet, los registros de memoria asignados para cada puerto.
La salida de /proc/ioports proporciona una lista de las regiones de puertos registrados actualmente utilizados para la comunicación de entrada y salida con un dispositivo. Este archivo puede ser muy largo. A continuación se muestra un listado parcial:
0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc 0080-008f : dma page reg 00a0-00bf : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : ide1 01f0-01f7 : ide0 02f8-02ff : serial(auto) 0376-0376 : ide1 03c0-03df : vga+ 03f6-03f6 : ide0 03f8-03ff : serial(auto) 0cf8-0cff : PCI conf1 d000-dfff : PCI Bus #01 e000-e00f : VIA Technologies, Inc. Bus Master IDE e000-e007 : ide0 e008-e00f : ide1 e800-e87f : Digital Equipment Corporation DECchip 21140 [FasterNet] e800-e87f : tulip |
La primera columna le indica el rango de direcciones de los puertos de entrada y salida reservado para el dispositivo listado en la segunda columna.
Este archivo representa la memoria física del sistema y se almacena en el formato de archivos base. A diferencia de la mayoría de archivos /proc/, kcore muestra un tamaño. Este valor se da en bytes y es igual al tamaño de la memoria física (RAM) utilizada más 4KB.
Sus contenidos están diseñados para que los examine un depurador, como por ejemplo gdb, y no es legible para humanos.
![]() | Atención |
|---|---|
Evite visualizar el archivo virtual /proc/kcore. Los contenidos de este archivo se saldrán del terminal. Si accidentalmente lo visualiza, pulse la combinación de teclas |
Este archivo se utiliza para mantener mensajes generados por el kernel. Luego, estos mensajes son recogidos por otros programas, como por ejemplo /sbin/klogd o /bin/dmesg.
Este archivo ofrece una vista de la carga promedio del procesador con respecto al sobretiempo de CPU y de E/S, así como también datos adicionales utilizados por uptime y otros comandos. Una muestra del archivo /proc/loadavg sería similar a lo siguiente:
0.20 0.18 0.12 1/80 11206 |
Las primeras tres columnas muestran la utilización de CPU y de E/S en los últimos periodos de 1, 5 y 10 minutos. La cuarta columna le muestra el número de procesos actualmente en ejecución y el número total de los mismos. La última columna visualiza el último ID de proceso usado.
Este archivo muestra los archivos bloqueados en la actualidad por el kernel. El contenido de este archivo contiene datos internos de depuración y puede variar enormemente, dependiendo del uso del sistema. Este es un ejemplo de archivo /proc/locks de un sistema ligeramente cargado:
1: POSIX ADVISORY WRITE 3568 fd:00:2531452 0 EOF 2: FLOCK ADVISORY WRITE 3517 fd:00:2531448 0 EOF 3: POSIX ADVISORY WRITE 3452 fd:00:2531442 0 EOF 4: POSIX ADVISORY WRITE 3443 fd:00:2531440 0 EOF 5: POSIX ADVISORY WRITE 3326 fd:00:2531430 0 EOF 6: POSIX ADVISORY WRITE 3175 fd:00:2531425 0 EOF 7: POSIX ADVISORY WRITE 3056 fd:00:2548663 0 EOF |
A cada bloqueo se le asigna un único número al inicio de cada línea. La segunda columna se refiere a la clase de bloqueo utilizado; FLOCK, haciendo referencia al estilo antiguo de bloqueos de archivos desde una llamada de sistema flock y POSIX que representa los bloqueos nuevos POSIX desde la llamada de sistema lockf.
La tercera columna puede tener dos valores. ADVISORY o MANDATORY. ADVISORY significa que el bloqueo no impide que otras personas puedan acceder a los datos; tan sólo previene de que otros intenten establecer un bloqueo. MANDATORY significa que mientras que dura el bloqueo no se permite ningún otro acceso a los datos. La cuarta columna muestra si el bloqueo permite al responsable del mismo acceso de READ o WRITE (lectura y escritura) al archivo. La quinta muestra el ID del proceso que tiene el bloqueo. La sexta columna muestra el ID del archivo bloqueado, en el formato de MAJOR-DEVICE:MINOR-DEVICE:INODE-NUMBER. La séptima y octava columnas muestra el inicio y el final de la región bloqueada del archivo.
Este archivo contiene la información actual sobre las configuración de discos múltiples de RAID. Si su sistema no contiene dicha configuración, el archivo /proc/mdstat será parecido a:
Personalities : read_ahead not set unused devices: <none> |
Este archivo se mantiene en el mismo estado que el mostrado arriba a menos que un software RAID o dispositivo md esté presente. En ese caso, visualice /proc/mdstat para ver el estado actual de los dispositivos RAID mdX.
El archivo /proc/mdstat a continuación, muestra un sistema con su md0 configurado como un dispositivo RAID 1, mientras está resincronizando los discos:
Personalities : [linear] [raid1] read_ahead 1024 sectors md0: active raid1 sda2[1] sdb2[0] 9940 blocks [2/2] [UU] resync=1% finish=12.3min algorithm 2 [3/3] [UUU] unused devices: <none> |
Este es uno de los archivos más utilizados en el directorio /proc/, ya que proporciona mucha información importante sobre el uso actual de RAM en el sistema.
La muestra siguiente del archivo virtual /proc/meminfo es de un sistema con 256 MB de RAM y 512 MB de espacio de intercambio (swap):
MemTotal: 255908 kB MemFree: 69936 kB Buffers: 15812 kB Cached: 115124 kB SwapCached: 0 kB Active: 92700 kB Inactive: 63792 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 255908 kB LowFree: 69936 kB SwapTotal: 524280 kB SwapFree: 524280 kB Dirty: 4 kB Writeback: 0 kB Mapped: 42236 kB Slab: 25912 kB Committed_AS: 118680 kB PageTables: 1236 kB VmallocTotal: 3874808 kB VmallocUsed: 1416 kB VmallocChunk: 3872908 kB HugePages_Total: 0 HugePages_Free: 0 Hugepagesize: 4096 kB |
La mayoría de la información que está aquí es usada por los comandos free, top y ps. De hecho, la salida de datos del comando free es parecida en apariencia al contenido y estructura de /proc/meminfo. Pero si lee directamente /proc/meminfo, verá más detalles:
MemTotal — Cantidad total de RAM física en kilo bytes.
MemFree — Cantidad de RAM física, en kilobytes, sin utilizar por el sistema.
Buffers — Cantidad de RAM física, en kilobytes, usada para los archivos de memoria intermedia.
Cached — Cantidad de RAM física en kilobytes usada como memoria caché.
SwapCached — Cantidad de swap en kilobytes usada como memoria caché.
Active — Cantidad total de memoria intermedia o caché de página, en kilobytes, que está en uso activo. Esta es memoria que recientemente ha sido utilizada y que usualmente no se reclama para otros propósitos.
Inactive — La cantidad total de memoria intermedia o caché de página, en kilobytes, que está libre y disponible. Esta es memoria que no se ha utilizado recientemente y que se puede reclamar para otros propósitos.
HighTotal y HighFree — Cantidad total de memoria libre, que no está mapeada en el espacio del kernel. El valor HighTotal puede variar dependiendo del tipo de kernel utilizado.
LowTotal y LowFree — Cantidad total de memoria libre implantada directamente en el espacio del kernel. El valor LowTotal puede cambiar dependiendo del tipo de kernel utilizado.
SwapTotal — Cantidad total de swap disponible, en kilobytes.
SwapFree — Cantidad total de swap libre, en kilobytes.
Dirty — La cantidad total de memoria, en kilobytes, esperando a ser escrita al disco.
Writeback — Cantidad total de memoria, en kilobytes, que está siendo escrita activamente al disco.
Mapped — La cantidad total de memoria, en kilobytes, que se ha utilizado para asignar dispositivos, archivos o bibliotecas, usando el comando mmap.
Slab — Cantidad total de memoria, en kilobytes, usada por el kernel para hacer caché de estructuras de datos para su propio uso.
Committed_AS — Cantidad total de memoria, en kilobytes, estimadas para completar la carga de trabajo. Este valor representa un escenario del peor caso, y también incluye a la memoria de intercambio o swap.
PageTables — Cantidad total de memoria, en kilobytes, dedicada al nivel más bajo de la tabla de páginas.
VMallocTotal — Cantidad total memoria, en kilobytes, del espacio total de direcciones virtuales asignadas.
VMallocUsed — La cantidad total de memoria en kilobytes, de espacio de direcciones virtuales utilizada.
VMallocChunk — El bloque continuo de memoria más grande, en kilobytes, de espacio de direcciones virtuales disponibles.
HugePages_Total — El número total de paginas gigantes para el sistema. El número se deriva dividiendo Hugepagesize por los megabytes puestos a un lado para las páginas gigantes especificadas en /proc/sys/vm/hugetlb_pool. Esta estadística sólo aparece en las arquitecturas x86, Itanium y AMD64.
HugePages_Free — El número total de páginas gigantes disponibles para el sistema. Esta estadística sólo aparece en las arquitecturas x86, Itanium y AMD64.
Hugepagesize — El tamaño para cada unidad de hugepages en kilobytes. Por defecto, el valor es 4096 KB en los kernels de un sólo procesador para las arquitecturas de 32 bits. Para los kernels SMP, hugemem y AMD64, el valor por defecto es 2048 KB. Para las arquitecturas Itanium, el valor por defecto es 262144 KB. Esta estadística solamente aparece en las arquitecturas x86, Itanium y AMD64.
Este archivo lista varios controladores registrados en el principal dispositivo de misceláneos, que es el número 10:
63 device-mapper 175 agpgart 135 rtc 134 apm_bios |
La primera columna es el número menor (minor) de cada dispositivo y la segunda le muestra el controlador en uso.
Este archivo muestra una lista de todos los módulos cargados en el sistema. Su contenido variará dependiendo de la configuración y uso de su sistema, pero debería organizarse de forma similar al siguiente ejemplo de salida del archivo /proc/modules:
![]() | Nota |
|---|---|
Se ha vuelto a formatear este ejemplo en un formato legible. La mayoría de esta información también se puede ver a través del comando /sbin/lsmod. |
nfs 170109 0 - Live 0x129b0000 lockd 51593 1 nfs, Live 0x128b0000 nls_utf8 1729 0 - Live 0x12830000 vfat 12097 0 - Live 0x12823000 fat 38881 1 vfat, Live 0x1287b000 autofs4 20293 2 - Live 0x1284f000 sunrpc 140453 3 nfs,lockd, Live 0x12954000 3c59x 33257 0 - Live 0x12871000 uhci_hcd 28377 0 - Live 0x12869000 md5 3777 1 - Live 0x1282c000 ipv6 211845 16 - Live 0x128de000 ext3 92585 2 - Live 0x12886000 jbd 65625 1 ext3, Live 0x12857000 dm_mod 46677 3 - Live 0x12833000 |
La primera columna contiene el nombre del módulo.
La segunda columna se refiere al tamaño de la memoria del módulo, en bytes.
La tercera columna lista cuántas instancias del módulo están cargadas actualmente. Un valor de cero representa un módulo sin cargar.
La cuarta columna indica si el módulo depende de que otro módulo esté presente para poder funcionar, y lista esos otros módulos.
La quinta columna lista en qué estado de carga se encuentra el módulo: Live, Loading o Unloading son los únicos valores posibles.
La sexta columna lista el desplazamiento de memoria del kernel actual para el módulo cargado. Esta información puede ser útil para propósitos de depuración o para herramientas de perfiles, tales como oprofile.
Este archivo proporciona una lista de todos los montajes en uso por el sistema:
rootfs / rootfs rw 0 0 /proc /proc proc rw,nodiratime 0 0 none /dev ramfs rw 0 0 /dev/mapper/VolGroup00-LogVol00 / ext3 rw 0 0 none /dev ramfs rw 0 0 /proc /proc proc rw,nodiratime 0 0 /sys /sys sysfs rw 0 0 none /dev/pts devpts rw 0 0 usbdevfs /proc/bus/usb usbdevfs rw 0 0 /dev/hda1 /boot ext3 rw 0 0 none /dev/shm tmpfs rw 0 0 none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0 sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0 |
La salida de datos que encontramos aquí se parece a /etc/mtab, excepto que /proc/mount está más actualizada.
La primera columna especifica el dispositivo que está montado, la segunda revela el punto de montaje, la tercera indica el tipo de sistema de archivos y la cuarta si está montado en modo sólo lectura (ro) o sólo escritura (rw). La quinta y sexta columna son valores no válidos diseñados para hacer coincidir el formato usado en /etc/mtab.
Este archivo se refiere a la actual Memory Type Range Registers (MTRRs), en uso dentro del sistema. Si la arquitectura de su sistema soporta MTRRs, entonces el archivo /proc/mtrr será algo parecido a:
reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1 reg01: base=0xe8000000 (3712MB), size= 32MB: write-combining, count=1 |
Los MTRRs se usan con la familia de procesadores Intel P6 (Pentium II y superior), y controlan el acceso del procesador a los rangos de memoria. Cuando utilice una tarjeta de vídeo en un PCI o un bus AGP, un archivo /proc/mtrr adecuadamente configurado puede incrementar el rendimiento en un 150%.
La mayoría de las veces, por defecto este valor está configurado adecuadamente. Se puede encontrar más información sobre la configuración manual de este archivo en la siguiente ubicación:
/usr/share/doc/kernel-doc-<version>/Documentation/mtrr.txt |
El archivo contiene información sobre la asignación de bloques de particiones. Un ejemplo de este archivo en un sistema básico se vería como:
major minor #blocks name 3 0 19531250 hda 3 1 104391 hda1 3 2 19422585 hda2 253 0 22708224 dm-0 253 1 524288 dm-1 |
La mayoría de la información no es relevante para los usuarios, a excepción de las siguientes líneas:
major — Número principal (major number) del dispositivo con esta partición. El número principal en nuestro ejemplo en /proc/partitions (3), corresponde con el dispositivo ide0 en /proc/devices.
minor — Número menor del dispositivo con esta partición. Separa las particiones en diferentes dispositivos físicos y los relaciona con el número al final del nombre de la partición.
#blocks — Lista el número de bloques de disco físicos contenidos en una partición particular.
name — Nombre de la partición.
El archivo contiene una lista completa de cada dispositivo PCI en su sistema. Dependiendo del número de dispositivos PCI que posea, /proc/pci puede ser bastante largo. Un ejemplo de este archivo en un sistema básico se vería como:
Bus 0, device 0, function 0:
Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 3).
Master Capable. Latency=64.
Prefetchable 32 bit memory at 0xe4000000 [0xe7ffffff].
Bus 0, device 1, function 0:
PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 3).
Master Capable. Latency=64. Min Gnt=128.
Bus 0, device 4, function 0:
ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 2).
Bus 0, device 4, function 1:
IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 1).
Master Capable. Latency=32.
I/O at 0xd800 [0xd80f].
Bus 0, device 4, function 2:
USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 1).
IRQ 5.
Master Capable. Latency=32.
I/O at 0xd400 [0xd41f].
Bus 0, device 4, function 3:
Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 2).
IRQ 9.
Bus 0, device 9, function 0:
Ethernet controller: Lite-On Communications Inc LNE100TX (rev 33).
IRQ 5.
Master Capable. Latency=32.
I/O at 0xd000 [0xd0ff].
Non-prefetchable 32 bit memory at 0xe3000000 [0xe30000ff].
Bus 0, device 12, function 0:
VGA compatible controller: S3 Inc. ViRGE/DX or /GX (rev 1).
IRQ 11.
Master Capable. Latency=32. Min Gnt=4.Max Lat=255.
Non-prefetchable 32 bit memory at 0xdc000000 [0xdfffffff]. |
Esta salida de datos muestra una lista de todos los dispositivos PCI, en orden de bus, dispositivo y función. Además de proporcionar el nombre y versión del dispositivo, esta lista le proporciona información de IRQ detallada y así un administrador puede rápidamente dar un vistazo para verificar conflictos.
![]() | Sugerencia | |
|---|---|---|
Para obtener una versión más fácil de leer, escriba:
|
Este archivo le da información completa sobre el uso de memoria en el nivel slab. Los kernels Linux superiores a la versión 2.2 usan slab pools para manejar memoria por encima del nivel de página. Los objetos utilizados habitualmente, tienen sus propios slab pools.
En vez de analizar manualmente el largo archivo /proc/slabinfo, el programa /usr/bin/slabtop muestra la información del caché slab del kernel en tiempo real. Este programa permite configuraciones personalizadas, incluyendo el ordenamiento por columnas y la actualización de pantallas.
Una captura de pantalla de /usr/bin/slabtop usualmente se parece a algo como:
Active / Total Objects (% used) : 133629 / 147300 (90.7%)
Active / Total Slabs (% used) : 11492 / 11493 (100.0%)
Active / Total Caches (% used) : 77 / 121 (63.6%)
Active / Total Size (% used) : 41739.83K / 44081.89K (94.7%)
Minimum / Average / Maximum Object : 0.01K / 0.30K / 128.00K
OBJS ACTIVE USE OBJ SIZE SLABS OBJ/SLAB CACHE SIZE NAME
44814 43159 96% 0.62K 7469 6 29876K ext3_inode_cache
36900 34614 93% 0.05K 492 75 1968K buffer_head
35213 33124 94% 0.16K 1531 23 6124K dentry_cache
7364 6463 87% 0.27K 526 14 2104K radix_tree_node
2585 1781 68% 0.08K 55 47 220K vm_area_struct
2263 2116 93% 0.12K 73 31 292K size-128
1904 1125 59% 0.03K 16 119 64K size-32
1666 768 46% 0.03K 14 119 56K anon_vma
1512 1482 98% 0.44K 168 9 672K inode_cache
1464 1040 71% 0.06K 24 61 96K size-64
1320 820 62% 0.19K 66 20 264K filp
678 587 86% 0.02K 3 226 12K dm_io
678 587 86% 0.02K 3 226 12K dm_tio
576 574 99% 0.47K 72 8 288K proc_inode_cache
528 514 97% 0.50K 66 8 264K size-512
492 372 75% 0.09K 12 41 48K bio
465 314 67% 0.25K 31 15 124K size-256
452 331 73% 0.02K 2 226 8K biovec-1
420 420 100% 0.19K 21 20 84K skbuff_head_cache
305 256 83% 0.06K 5 61 20K biovec-4
290 4 1% 0.01K 1 290 4K revoke_table
264 264 100% 4.00K 264 1 1056K size-4096
260 256 98% 0.19K 13 20 52K biovec-16
260 256 98% 0.75K 52 5 208K biovec-64 |
Algunas de las estadísticas usadas más comúnmente en /proc/slabinfo que se incluyen en /usr/bin/slabtop, abarcan:
OBJS — El número total de objetos (bloques de memoria), incluyendo aquellos en uso (asignados), y algunos adicionales que no estén en uso.
ACTIVE — El número total de objetos (bloques de memoria) utilizados (asignados).
USE — Porcentaje de los objetos totales que están activos. ((ACTIVE/OBJS)(100))
OBJ SIZE — El tamalo de los objectos.
SLABS — El número total de slabs.
OBJ/SLAB — El número de objectos que caben en un slab.
CACHE SIZE — El tamaño de caché del slab.
NAME — Nombre del slab.
Para más información sobre el programa /usr/bin/slabtop, refiérase a la página man de slabtop.
Este archivo mantiene un registro de las diferentes estadísticas sobre el sistema desde que fue reiniciado por última vez. El contenido de /proc/stat que puede ser muy largo, usualmente empieza de la siguiente manera:
cpu 259246 7001 60190 34250993 137517 772 0 cpu0 259246 7001 60190 34250993 137517 772 0 intr 354133732 347209999 2272 0 4 4 0 0 3 1 1249247 0 0 80143 0 422626 5169433 ctxt 12547729 btime 1093631447 processes 130523 procs_running 1 procs_blocked 0 preempt 5651840 cpu 209841 1554 21720 118519346 72939 154 27168 cpu0 42536 798 4841 14790880 14778 124 3117 cpu1 24184 569 3875 14794524 30209 29 3130 cpu2 28616 11 2182 14818198 4020 1 3493 cpu3 35350 6 2942 14811519 3045 0 3659 cpu4 18209 135 2263 14820076 12465 0 3373 cpu5 20795 35 1866 14825701 4508 0 3615 cpu6 21607 0 2201 14827053 2325 0 3334 cpu7 18544 0 1550 14831395 1589 0 3447 intr 15239682 14857833 6 0 6 6 0 5 0 1 0 0 0 29 0 2 0 0 0 0 0 0 0 94982 0 286812 ctxt 4209609 btime 1078711415 processes 21905 procs_running 1 procs_blocked 0 |
Algunas de las estadísticas más populares incluyen:
cpu — Mide el número de instantes (1/100 de segundos para sistemas x86) en los que el sistema ha estado en modo usuario, modo usuario con prioridad baja (nice), modo de sistema, tareas ociosas, esperas de E/S, IRQ (hardirq) y softirq respectivamente. El IRQ (hardirq) es la respuesta directa a un evento de hardware. El IRQ hace el esfuerzo mínimo para encolar el trabajo "pesado" para que lo ejecute el softirq. El softirq se ejecuta a una prioridad más baja que el IRQ y por lo tanto puede ser interrumpido con más frecuencia. El total para todos los CPUs se dá arriba, mientras que cada CPU individual se lista con sus propias estadísticas. El ejemplo siguiente es de una configuración 4-way Intel Pentium Xeon con el multihilos activado, por lo tanto muestra cuatro procesadores físicos y cuatro procesadores virtuales para un total de ocho procesadores.
page — Número de páginas que el sistema ha cargado o suprimido del disco.
swap — Número de páginas swap que el sistema ha introducido o sacado.
intr — Número de interrupciones que ha experimentado el sistema.
btime — Tiempo de arranque, medido por el número de segundos desde el 1 de enero de 1970, conocido con el nombre de epoch.
Este archivo mide el espacio swap y su uso. Para un sistema con tan sólo una partición de espacio swap, la salida de datos de /proc/swap será similar a lo siguiente:
Filename Type Size Used Priority /dev/mapper/VolGroup00-LogVol01 partition 524280 0 -1 |
Mientras que alguna de esta información se puede encontrar en otros archivos en el directorio /proc/, /proc/swap proporciona una instantánea de cada nombre de archivo swap, el tipo de espacio swap, el tamaño total y la cantidad de espacio en uso (en kilobytes). La columna de prioridad es útil cuando se usan múltiples archivos de espacio de intercambio. Cuanto más baja es la prioridad, más probable es que se use el archivo de intercambio.
Usando el comando echo para escribir a este archivo, un usuario root remoto puede ejecutar la mayoría de los comandos de llave de petición del sistema (System Request Key) remotamente como que si estuviese en el terminal local. Para hacer echo con los valores a este archivo, /proc/sys/kernel/sysrq debe estar configurado a un valor diferente de 0. Para más información sobre System Request Key, refiérase a la Sección 5.3.9.3.
Aún cuando es posible escribir a este archivo, no se puede leer, ni siquiera por el usuario root.
El archivo contiene información sobre el tiempo que lleva encendido el sistema desde el último reinicio. La salida de datos de /proc/uptime es mínima:
350735.47 234388.90 |
El primer número le indica el número total de segundos que el sistema ha estado en funcionamiento. El segundo indica cuánto de ese tiempo, también en segundos, la máquina ha estado inactiva.
Este archivo muestra las versión del kernel de Linux y gcc en uso, así como la versión de Red Hat Enterprise Linux instalada en el sistema:
Linux version 2.6.8-1.523 (user@foo.redhat.com) (gcc version 3.4.1 20040714 \ (Red Hat Enterprise Linux 3.4.1-7)) #1 Mon Aug 16 13:27:03 EDT 2004 |
Esta información se usa para diversos propósitos, incluyendo la aportación de datos de la versión en el intérprete de comandos de registro estándar.