Introducción
Bienvenido a la práctica sobre el comando free de Linux. En esta sesión, aprenderá a utilizar el comando free para supervisar y analizar el uso de la memoria del sistema. Esta habilidad es fundamental para administradores de sistemas y desarrolladores que necesitan optimizar el rendimiento del equipo y solucionar problemas relacionados con la memoria.
Imagine que es un administrador de sistemas junior encargado de supervisar el uso de memoria de un servidor web con mucho tráfico. El comando free será su herramienta principal para esta tarea, permitiéndole evaluar rápidamente el estado actual de la memoria e identificar posibles problemas antes de que afecten el rendimiento del sistema.
Uso Básico del Comando free
Comencemos utilizando el comando free en su forma más sencilla. Esto nos dará una visión general del uso de la memoria del sistema.
Primero, abra una terminal si aún no lo ha hecho. Luego, ejecute el siguiente comando:
free
Debería ver una salida similar a esta:
total used free shared buff/cache available
Mem: 8167004 2524956 3300280 658636 2341768 4657560
Swap: 2097152 0 2097152
Esta salida proporciona una instantánea del uso de memoria de su sistema. Desglosemos el significado de cada columna:
total: La cantidad total de RAM física y espacio de intercambio (swap).used: La cantidad de RAM que se está utilizando actualmente.free: La cantidad de RAM que está completamente sin usar.shared: La cantidad de RAM utilizada por tmpfs.buff/cache: La cantidad de RAM utilizada para búferes y caché.available: Una estimación de cuánta memoria hay disponible para iniciar nuevas aplicaciones.
La salida se divide en dos filas:
Mem: Muestra información sobre la RAM física.Swap: Muestra información sobre el espacio de intercambio (memoria virtual).
Todos los valores se muestran en bytes de forma predeterminada.
Visualización de Información de Memoria en Formato Legible
Aunque la salida predeterminada de free es precisa, puede ser difícil de leer rápidamente. Utilicemos la opción -h para mostrar la información en un formato más amigable para el ser humano.
Ejecute el siguiente comando:
free -h
Ahora debería ver una salida similar a esta:
total used free shared buff/cache available
Mem: 7.8Gi 2.4Gi 3.1Gi 642Mi 2.2Gi 4.4Gi
Swap: 2.0Gi 0B 2.0Gi
La opción -h (que significa "human-readable" o legible por humanos) escala automáticamente los números y añade los sufijos de unidad apropiados (G para gigabytes, M para megabytes, etc.). Esto facilita mucho la comprensión rápida del uso de memoria del sistema de un solo vistazo.
Observe cómo los valores se muestran ahora con unidades como Gi (gibibytes) y Mi (mebibytes). Estas son unidades binarias, donde 1 Gi = 1024 Mi, que es la forma estándar en que las computadoras miden la memoria.
Visualización de Información de Memoria en Megabytes
En ocasiones, es posible que desee ver la información de la memoria en una unidad específica. Utilicemos la opción -m para mostrar la información en megabytes.
Ejecute el siguiente comando:
free -m
Su salida debería verse algo así:
total used free shared buff/cache available
Mem: 7975 2466 3222 642 2286 4548
Swap: 2047 0 2047
La opción -m obliga a free a mostrar todos los valores en megabytes. Esto puede ser útil cuando necesita más precisión de la que proporciona la opción -h, pero aún desea números fáciles de leer.
Tenga en cuenta que se trata de mebibytes (MiB), donde 1 MiB = 1,048,576 bytes, no megabytes (MB) donde 1 MB = 1,000,000 bytes. En la práctica, la diferencia es lo suficientemente pequeña como para que a menudo se usen indistintamente.
Monitoreo Continuo con el Comando free
En escenarios del mundo real, a menudo es necesario supervisar el uso de la memoria a lo largo del tiempo. El comando free permite hacer esto con la opción -s (segundos), que actualiza la pantalla a intervalos regulares.
Monitoreemos el uso de la memoria cada 3 segundos para un total de 5 actualizaciones:
free -h -s 3 -c 5
Este comando utiliza varias opciones:
-h: Mostrar en formato legible por humanos.-s 3: Actualizar cada 3 segundos.-c 5: Detenerse después de 5 actualizaciones.
Debería ver una salida que se actualiza cada 3 segundos, similar a esta:
total used free shared buff/cache available
Mem: 7.8Gi 2.4Gi 3.1Gi 642Mi 2.2Gi 4.4Gi
Swap: 2.0Gi 0B 2.0Gi
total used free shared buff/cache available
Mem: 7.8Gi 2.4Gi 3.1Gi 642Mi 2.2Gi 4.4Gi
Swap: 2.0Gi 0B 2.0Gi
...
Este monitoreo continuo puede ayudarle a observar cómo cambia el uso de la memoria con el tiempo, lo cual es particularmente útil cuando se intenta identificar fugas de memoria o comprender los patrones de uso de memoria de aplicaciones específicas.
Presione Ctrl+C si desea detener el comando antes de que complete las 5 actualizaciones.
Visualización del Uso Total de Memoria
Por defecto, el comando free muestra el uso de memoria con los búferes y la caché por separado. Sin embargo, a veces es posible que desee ver el uso total de memoria incluyendo estos elementos. Para ello, podemos usar la opción -t.
Ejecute el siguiente comando:
free -h -t
Su salida debería ser similar a esta:
total used free shared buff/cache available
Mem: 7.8Gi 2.4Gi 3.1Gi 642Mi 2.2Gi 4.4Gi
Swap: 2.0Gi 0B 2.0Gi
Total: 9.8Gi 2.4Gi 5.1Gi
La opción -t añade una línea "Total" en la parte inferior, que suma el uso de la memoria RAM y del espacio de intercambio. Esto puede darle una visión rápida de la memoria total de su sistema, incluyendo tanto la RAM física como el swap.
En esta salida:
- La línea "Mem:" muestra el uso de la RAM física.
- La línea "Swap:" muestra el uso del espacio de intercambio.
- La línea "Total:" muestra la suma de la RAM física y el espacio de intercambio.
Esta vista total puede ser especialmente útil cuando desea comprender la capacidad y el uso global de la memoria de su sistema de un vistazo.
Resumen
¡Felicidades! Ha completado esta práctica sobre el uso del comando free para monitorear la memoria del sistema. Repasemos lo que ha aprendido:
- Uso básico del comando
freepara mostrar información de memoria. - Uso de la opción
-hpara visualizar la memoria en un formato legible por humanos. - Uso de la opción
-mpara mostrar la información de memoria en megabytes. - Monitoreo continuo del uso de memoria con las opciones
-sy-c. - Visualización del uso total de memoria, incluyendo el intercambio, con la opción
-t.
Estas habilidades serán invaluables para supervisar y gestionar los recursos del sistema, especialmente en situaciones donde necesite optimizar el rendimiento o diagnosticar problemas relacionados con la memoria.
Aquí tiene algunas opciones adicionales del comando free que no cubrimos en esta sesión:
-b: Muestra la cantidad de memoria en bytes.-k: Muestra la cantidad de memoria en kilobytes.-g: Muestra la cantidad de memoria en gigabytes.-w: Utiliza un formato de salida ancho (wide).-s: Actualiza la pantalla cada [SEG] segundos.--si: Utiliza potencias de 1000 en lugar de 1024.
Recuerde que una gestión eficaz de la memoria es crucial para mantener el rendimiento y la estabilidad del sistema. El monitoreo regular con el comando free puede ayudarle a detectar y prevenir problemas de memoria antes de que afecten el funcionamiento de su equipo.



