
Intento monitorear el uso de la memoria en mi servidor Ubuntu. Cuando ejecuto el comando 'superior', muestra que se utiliza el 70% de la memoria. (se muestra en la línea 'Mem:'). Pero quiero encontrar los procesos que toman el uso de mi memoria y sumarlos, está lejos del 70%. ¿Alguien puede ayudarme a explicarme eso?
¡Muchas gracias!
Aquí está el resultado de mi comando principal:
arriba - 20:59:06 hasta 23 días, 33 min, 3 usuarios, carga promedio: 0,06, 0,12, 0,09 Tareas: 92 en total, 1 en ejecución, 91 durmiendo, 0 detenido, 0 zombie CPU(s): 0,3%us, 0,2%sy, 0,0%ni, 99,5%id, 0,0%wa, 0,0%hi, 0,0%si, 0,0%st Memoria: 4124236k en total, 2903104k usados, 1221132k libres, 147508k buffers Intercambio: 4192252k en total, 440k usados, 4191812k gratis, 2596860k en caché PID USUARIO PR NI VIRT RES SHR S %CPU %MEM TIME+ COMANDO 30558 mysql 20 0 311m 36m 5956 S 0 0.9 0:00.74 mysqld 28848 jiechao 20 0 50688 9244 3144 S 0 0.2 0: 05.65 pitón 956 raíz 20 0 11712 8004 2964 S 0 0,2 0:39,26 ddclient - dormir 28846 jiechao 20 0 49256 7652 3280 S 0 0.2 0: 07.17 pitón 22284 jiechao 20 0 10400 6876 1664 S 0 0.2 0:00.49 fiesta 30433 jiechao 20 0 10344 6776 1620 S 0 0.2 0: 00.46 fiesta 31053 jiechao 20 0 10344 6768 1612 S 0 0.2 0: 00.47 fiesta 28847 jiechao 20 0 48168 6096 2980 S 0 0.1 0: 00.59 pitón 29178 www-datos 20 0 228m 5392 2052 S 0 0.1 0:00.06 apache2 29179 www-datos 20 0 12796 5148 1920 S 0 0.1 0:00.02 apache2 29180 www-datos 20 0 12796 5148 1920 S 0 0.1 0:00.02 apache2 29181 www-datos 20 0 12796 5148 1920 S 0 0.1 0:00.02 apache2 29182 www-datos 20 0 12796 5148 1920 S 0 0.1 0:00.02 apache2 29183 www-datos 20 0 12796 5148 1920 S 0 0.1 0:00.02 apache2 999 raíz 20 0 11396 3948 2052 S 0 0.1 0:21.21 apache2 926 gritos 20 0 24572 3284 2280 S 0 0.1 0:00.18 gritos 30933 raíz 20 0 9604 3104 2484 S 0 0.1 0:00.00 sshd 22164 raíz 20 0 9604 3096 2484 S 0 0.1 0:00.01 sshd 30313 raíz 20 0 9604 3096 2480 S 0 0.1 0:00.00 sshd 24302 raíz 20 0 9632 3024 2428 S 0 0.1 0:00.07 sshd 787 raíz 20 0 6664 2424 1988 S 0 0.1 0:00.05 sshd 1 raíz 20 0 3504 1876 1276 S 0 0,0 0:01,57 inicio 24421 jiechao 20 0 9632 1596 992 S 0 0.0 0:00.00 sshd 812 syslog 20 0 31044 1484 1008 S 0 0,0 1:47,00 rsyslogd
Respuesta1
Seguro que ese número es una combinación de RAM utilizada por el proceso y buffers y caché para archivos. Linux tiene la filosofía de maximizar el uso de RAM para los archivos a los que se accede en lugar de tener que acceder al disco duro para estos archivos.
Intente usar el comando free
o mirar el kernel mismo a través de este comando,cat /proc/meminfo.
gratis
% free
total used free shared buffers cached
Mem: 7987492 7717152 270340 0 314644 2435048
-/+ buffers/cache: 4967460 3020032
Swap: 5963772 1304 5962468
gato /proc/meminfo
% cat /proc/meminfo
MemTotal: 7987492 kB
MemFree: 284328 kB
Buffers: 314384 kB
Cached: 2427852 kB
SwapCached: 116 kB
Active: 4698232 kB
Inactive: 2374796 kB
Active(anon): 3756264 kB
Inactive(anon): 768392 kB
Active(file): 941968 kB
Inactive(file): 1606404 kB
Unevictable: 68 kB
Mlocked: 68 kB
SwapTotal: 5963772 kB
SwapFree: 5962468 kB
Dirty: 452 kB
Writeback: 0 kB
AnonPages: 4330964 kB
Mapped: 185540 kB
Shmem: 193864 kB
Slab: 306532 kB
SReclaimable: 261520 kB
SUnreclaim: 45012 kB
KernelStack: 6192 kB
PageTables: 94376 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 9957516 kB
Committed_AS: 9671884 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 585392 kB
VmallocChunk: 34359040964 kB
HardwareCorrupted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 12288 kB
DirectMap2M: 8237056 kB
El free
comando te mostrará la RAM total, 7987492, en mi caso, de las cuales 7717152 están en uso y 270340 están libres. Esta es una combinación de RAM, buffers y caché. La segunda línea muestra cuánta RAM están utilizando los buffers y el caché, 4967460, lo que significa que realmente tengo 3020032 de RAM libres.
Desde unartículo de itworld.comsobre cómo entender el uso de la memoria:
El número de buffers representa bloques en memoria que resultan del acceso del kernel al disco, como cuando el kernel necesita leer el contenido de los archivos. La cifra almacenada en caché nos indica cuánta RAM se utiliza para almacenar en caché el contenido de los archivos leídos recientemente. La cifra del búfer aumenta cuando se omite la capa del sistema de archivos, mientras que la caché crece cuando se utiliza el sistema de archivos. Ambos crecen a medida que aumentan las operaciones de lectura.
NOTA:Tenga en cuenta que el administrador de memoria del kernel de Linux liberará cualquier RAM que se utilice para buffers y caché si una aplicación realmente lo necesita.
Recursos