El kernel de Linux tiens dos funciones primarias: controlar el acceso a los dispositivos f�sicos del ordenador y establecer cu�ndo y c�mo los procesos interactuar�n con estos dispositivos. El directorio /proc/ — tambi�n llamado el sistema de archivos proc — contiene una jerarqu�a de archivos especiales que representan el estado actual del kernel — permitiendo a las aplicaciones y usuarios mirar detenidamente en la vista del kernel del sistema.
5.1. Sistema de archivos virtual
En Linux, todo se guarda en archivos. La mayor�a de usuarios est�n familiarizados con los dos primeros tipos de archivos, de texto y binarios. Sin embargo, el directorio /proc/ contiene otro tipo de archivos llamado archivo virtual. Por esta raz�n, es que a menudo se hace referencia a /proc/ como un sistema de archivos virtual.
Estos archivos virtuales poseen cualidades �nicas. En primer lugar, la mayor�a de ellos tienen un tama�o de 0 bytes. Sin embargo, cuando se visualiza el archivo, �ste puede contener una gran cantidad de informaci�n. Adem�s, la mayor�a de configuraciones del tiempo y las fechas reflejan el tiempo y fecha real, lo que es un indicativo de que est�n siendo constantemente modificados.
Los archivos virtuales tales como /proc/interrupts, /proc/meminfo, /proc/mounts, y /proc/partitions proporcionan una vista r�pida actualizada del hardware del sistema. Otros, como /proc/filesystems y el directorio /proc/sys/, proveen informaci�n de configuraci�n del sistema e interfaces.
Para prop�sitos organizacionales, los archivos que contienen informaci�n sobre un t�pico similar se agrupan en directorios virtuales y sub-directorios. Por ejemplo, /proc/ide/ contiene informaci�n sobre los dispositivos IDE. De la misma forma, los directorios de procesos contienen informaci�n sobre cada proceso ejecut�ndose en el sistema.
5.1.1. Visualizaci�n de archivos virtuales
Mediante el uso de los comandos cat, more, o less en los archivos dentro del directorio /proc/, los usuarios pueden inmediatamente acceder una cantidad enorme de informaci�n acerca del sistema. Por ejemplo, para desplegar el tipo de CPU que tiene un equipo, escriba cat /proc/cpuinfo para recibir una salida similar a lo siguiente:
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 9
model name : AMD-K6(tm) 3D+ Processor
stepping : 1
cpu MHz : 400.919
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 pge mmx syscall 3dnow k6_mtrr
bogomips : 799.53 |
Como puede ver en el sistema de archivos /proc/, alguna informaci�n tiene sentido, mientras que otras �reas aparecen en un c�digo extra�o. Por eso es que existen utilidades para extraer informaci�n de los archivos virtuales y mostrarla en una forma �til. Ejemplos de estas utilidades incluyen lspci, apm, free, y top.
| Nota |
---|
| Algunos archivos en el directorio /proc/ est�n configurados para que se puedan leer s�lo por el usuario root. |
5.1.2. Cambiar archivos virtuales
Como regla general, la mayor�a de los archivos virtuales dentro del directorio /proc solamente se pueden leer. Sin embargo, algunos se pueden usar para ajustar la configuraci�n del kernel. Esto ocurre con los archivos del subdirectorio /proc/sys/.
Para cambiar el valor de un archivo virtual, use el comando echo y el s�mbolo mayor que (>) para redirigir el nuevo valor al archivo. Por ejemplo, para cambiar el nombre del host r�pidamente escriba:
echo www.example.com > /proc/sys/kernel/hostname |
Otros archivos act�an como conmutadores binarios o boleanos. Si escribe cat /proc/sys/net/ipv4/ip_forward ver� el valor 0 o el valor 1. El valor 0 indica que el kernel no est� realizando el reenvio de paquetes. Si usa el comando echo para cambiar el valor del archivo ip_forward a 1, el kernel activar� inmediatamente el reenvio de paquetes.
| Sugerencia |
---|
| Otro comando que se usa para cambiar la configuraci�n en el subdirectorio /proc/sys/ es /sbin/sysctl. Para mayor informaci�n consulte la Secci�n 5.4 |
Para ver una lista de algunos de los archivos de configuraci�n del kernel disponibles en el subdirectorio /proc/sys/, vaya a la Secci�n 5.3.9.