Memoria RAM al limite (/proc/meminfo) [Solucionado]
Buenos Dias a Todos
Mi problema es el siguiente:
Tengo un servidor Samba,FTP y VPN bajo una distribucion libre como lo es Debian Lenny con 4 GB de RAM reconocidas, el cual me esta reportando un consumo exagerado de recursos con respecto a la memoria.
Me explico, al ejecutar el comando free:
total used free shared buffers cached
Mem: 4108676 3981384 127292 0 94160 3707620
-/+ buffers/cache: 179604 3929072
Swap: 9768952 0 9768952e igualmente al ejecutar el comando Top:
top - 10:28:02 up 13 days, 20:17, 1 user, load average: 1.01, 1.01, 1.00
Tasks: 200 total, 1 running, 199 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni, 83.5%id, 16.5%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4108676k total, 3981260k used, 127416k free, 94192k buffers
Swap: 9768952k total, 0k used, 9768952k free, 3707620k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
12923 smbdns 20 0 2544 1252 916 R 0 0.0 0:00.06 top
1 root 20 0 2788 1648 1228 S 0 0.0 0:01.59 init
2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/0
5 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/0
6 root RT 0 0 0 0 S 0 0.0 0:01.37 migration/1
7 root 20 0 0 0 0 S 0 0.0 0:00.44 ksoftirqd/1
8 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/1
9 root RT 0 0 0 0 S 0 0.0 0:00.03 migration/2
10 root 20 0 0 0 0 S 0 0.0 0:00.06 ksoftirqd/2
11 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/2
12 root RT 0 0 0 0 S 0 0.0 0:01.15 migration/3
13 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/3
14 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/3
15 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/4
16 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/4
17 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/4
18 root RT 0 0 0 0 S 0 0.0 0:00.47 migration/5
19 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/5
20 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/5
21 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/6
22 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/6
23 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/6
24 root RT 0 0 0 0 S 0 0.0 0:08.05 migration/7
25 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/7
26 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/7
27 root 20 0 0 0 0 S 0 0.0 0:00.00 events/0
28 root 20 0 0 0 0 S 0 0.0 24:12.53 events/1
29 root 20 0 0 0 0 S 0 0.0 0:00.17 events/2
30 root 20 0 0 0 0 S 0 0.0 0:00.00 events/3
31 root 20 0 0 0 0 S 0 0.0 0:00.00 events/4
32 root 20 0 0 0 0 S 0 0.0 0:00.22 events/5
33 root 20 0 0 0 0 S 0 0.0 0:00.00 events/6
34 root 20 0 0 0 0 S 0 0.0 0:00.00 events/7
35 root 20 0 0 0 0 S 0 0.0 0:00.00 cpuset
36 root 20 0 0 0 0 S 0 0.0 0:00.00 khelper
lo que alcanzo a ver es que el uso de memoria por los procesos es minimo y no le encuentro sentido que los procesos se consuma 4 GB en su totatildad, si solo es un Servidor de Archivos para 8 usuarios.
pero cuando observo el archivo /proc/meminfo:
MemTotal: 4108676 kB
MemFree: 127292 kB
Buffers: 94208 kB
Cached: 3707624 kB
SwapCached: 0 kB
Active: 1448600 kB
Inactive: 2376532 kB
Active(anon): 23988 kB
Inactive(anon): 7856 kB
Active(file): 1424612 kB
Inactive(file): 2368676 kB
Unevictable: 0 kB
Mlocked: 0 kB
HighTotal: 3273500 kB
HighFree: 11780 kB
LowTotal: 835176 kB
LowFree: 115512 kB
SwapTotal: 9768952 kB
SwapFree: 9768952 kB
Dirty: 133508 kB
Writeback: 4 kB
AnonPages: 23420 kB
Mapped: 20508 kB
Shmem: 8536 kB
Slab: 99572 kB
SReclaimable: 88688 kB
SUnreclaim: 10884 kB
KernelStack: 1744 kB
PageTables: 932 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 11823288 kB
Committed_AS: 200020 kB
VmallocTotal: 122880 kB
VmallocUsed: 69556 kB
VmallocChunk: 29128 kB
HardwareCorrupted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 8184 kB
DirectMap2M: 903168 kBEn el segmento Active me encuentro 3 valores Active, Active (anon) y Active (file).
quisiera saber que me indica cada uno de los valores y por que el consumo de estos.
De antemano muchas gracias por la colaboracion ...
saludos;
- Inicie sesión o regístrese para enviar comentarios
- 923 lecturas


No veo el problema
total used free shared buffers cachedMem: 4108676 3981384 127292 0 94160 3707620
-/+ buffers/cache: 179604 *3929072*
Swap: 9768952 0 9768952
te esta diciendo que tienes 3929072 libres(3,9 gigas), esos 3981384 es porque linux cachea mucho para mejorar el rendimiento entre otras cosas, ¿de que te sirve tener 3 gigas libres muertos de risa?
Hombre 180 megas usados no es nada.
Hombre 180 megas usados no es nada.
Vaya me encontraba editando jeje
Hola a Todos
muchas gracias por su pronto respuesta ...
ya me quedo en claro que la memoria se esta consumiendo solo en cache 3.7 GB de memoria RAM para mejorar el rendimiento del sistema.
ahora quisiera saber lo siguiente:
1. en
meminfoporque este me reporta como memoria Activa 1.4 GB ??2. Que me indica entonces lo valores Active (anon) y (file)
3. (Primera vez que me pasa) porque esta utilizando 3.7 GB para mejorar rendimiento si ni siquiera tiene entorno grafico ?
Mil disculpas por las molestias causadas pero no utilizo Debian desde su kernel 2.4 y tal vez este atrasado con el tema ...
Saludos;
Te recomiendo instalar htop, es mucho mas practico a la hora de ver el uso de la memoria ymuchas mas cosas.
Saludos
pero cuando observo el archivo
/proc/meminfo:MemTotal: 4108676 kBMemFree: 127292 kB
Buffers: 94208 kB
Cached: 3707624 kB
SwapCached: 0 kB
Active: 1448600 kB
Inactive: 2376532 kB
Active(anon): 23988 kB
Inactive(anon): 7856 kB
Active(file): 1424612 kB
Inactive(file): 2368676 kB
Unevictable: 0 kB
Mlocked: 0 kB
HighTotal: 3273500 kB
HighFree: 11780 kB
LowTotal: 835176 kB
LowFree: 115512 kB
SwapTotal: 9768952 kB
SwapFree: 9768952 kB
Dirty: 133508 kB
Writeback: 4 kB
AnonPages: 23420 kB
Mapped: 20508 kB
Shmem: 8536 kB
Slab: 99572 kB
SReclaimable: 88688 kB
SUnreclaim: 10884 kB
KernelStack: 1744 kB
PageTables: 932 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 11823288 kB
Committed_AS: 200020 kB
VmallocTotal: 122880 kB
VmallocUsed: 69556 kB
VmallocChunk: 29128 kB
HardwareCorrupted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 8184 kB
DirectMap2M: 903168 kB
En el segmento Active me encuentro 3 valores Active, Active (anon) y Active (file).
quisiera saber que me indica cada uno de los valores y por que el consumo de estos.
Los buscadores son tus amigos:
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/en-US/Refere...
http://www.linuxweblog.com/meminfo
http://unixfoo.blogspot.com/2008/02/know-about-procmeminfo.html
Muchas gracias Froggy ... instalare entonces el htop para observar con mas detalle.
y gracias a ti tambien nerve_net por la sugerencia pero te cuento que yo ya habia explorado en los buscadores en busca de respuesta y lo que me dice de Active es que te indica la cantidad de memoria en KB activa (en uso). lo que quisiera saber es Active (anon) y Active (file) que consumo de memoria es el que me indica para poder estar tranquilo o intranquilo con respecto al consumo de mi Distribucion.
Si por alguna razon active (file) me indica el consumo de los archivos que se encuentran en ejecución, entonces yo ya sabría como proceder, pero como aun no me encuentro seguro de sus características :-S.
Espero me disculpe por la insistencia con este tema ...
Cualquier colaboracion sera bien recibida
Saludos;
Sobre meminfo:
Primero: Olvida por completo que hablamos de ficheros o de programas, simplemente hablamos de memoria y de la gestión que hace el kernel de la misma. Meminfo informa sobre el uso de la memoria, así que tampoco tiene relación con ficheros.
Segundo: Active = Active (file) + Active (anon)
Si sumas ambos valores obtendrás siempre Active como total. Lo mismo para Inactive, Inactive (anon) e Inactive (file)
Tercero: Active y sus hermanas
Active quiere decir memoria que recientemente han sido usada y que no se utiliza a menos que sea estrictamente necesario.
Active (anon): es lo anterior pero matizando que es esa memoria activa es anónima
Active (file): es lo anterior pero matizando que es esa memoria activa no es anónima, vamos que está registrada (filed). No tiene relación con ficheros.
Podrías pensar que es memoria en uso, pero también los es Inactive, el kernel las designa como Active o Inactive en cuanto a su frecuencia de uso, es una forma de catalogar la memoria usada.
En cualquier caso hablamos de memoria utilizada en ambos casos (Active e Inactive) nunca de ficheros, siempre memoria. El kernel a ese nivel sólo gestiona bloques de memoria (o páginas) no las relaciona con ficheros o códigos de programa en ejecución. Esa información, la del uso de la memoria es la que devuelven free, meminfo o vmstat.
Información sobre meminfo:
meminfo forma parte del sistema de ficheros proc, proc forma parte del kernel de linux y su documentación completa junto con su código fuenta la tienes en cualquiera de los paquetes de las fuentes completas del kernel que puedes instalarte con tu gestor de paquetes favorito.
La documentación de proc la tienes en la siguiente ruta de las fuentes del kernel ./Documentation/filesystems/proc.txt ahí encontrarás la documentación de meminfo que ya conoces.
Como con eso no tendrás suficiente deberías leer las fuentes del código de meminfo, para empezar consulta: ./fs/proc/meminfo.c y ./include/linux/mmzone.h
A partir de ahí puedes ir leyendo todas las fuentes aunque mejor que todo eso sería hacerte con un manual sobre el kernel de Linux.
Ok perfecto ... esa era a respuesta que necesitaba.
PD: no hace falta aclarar que cuando hablaba de ficheros refiriéndome a Active (file) buscaba era aclarar el punto al que queria llegar (No estaba afirmando).
Muchas gracias neve_net por la respuesta ...