e3ebb-maxresdefault2b252812529

Como sabrán nuestro sistema operativo GNU/Linux incluye una gran cantidad de herramientas, de las cuales están listas para ayudarnos a la hora de administrar nuestro sistema. Desde simples herramientas de archivos y directorios hasta comandos de seguridad más complejos, es más no hay algo que no se pueda hacer en GNU/Linux.

Aunque los usuarios habituales, de uso casero también nombrado hogareño, de computadoras de escritorio, portátiles, laptops, etc. no necesiten estar familiarizados con éste tipo de herramientas o incluso con la vieja y conocida línea de comandos o TTY, si es una buena idea que puedan aprender sobre el manejo de éste tipo de herramientas para poder así administrar el sistema a pleno o por lo menos darse una idea de lo que realmente sucede.

Se preguntarán, ¿Por qué? y la respuesta es sencilla, en primer lugar, se deberá trabajar normalmente con un servidor GNU/Linux (no necesariamente, puede ser con nuestro mismo equipo o hasta podemos virtualizar un sistema para pruebas.) sin entorno gráfico o el conocido GUI, en algún momento nos tocará. en segundo lugar, las herramientas en la tty nos ofrecen muchas más opciones o se podría decir que hasta más “potencia” y flexibilidad a la hora de administrar en comparación con las herramientas gráficas.

Ahora volviendo al tema principal, la gestión del uso de memoria es una habilidad que se podría necesitar si una aplicación o programa en particular se vuelve inestable y queda en la memoria de nuestro mismo sistema. Cuando éstas cosas suceden es muy útil saber o en realidad conocer que tenemos una variedad, importante, de herramientas que tenemos disponibles para tratar de solucionar nuestro problema. O tal vez indagar o recopilar información sobre una partición swap, información detallada sobre el uso de nuestra RAM entre otras cosas.

También hay comandos para esto que podemos obtener de diferentes herramientas para ayudarnos a verificar el uso de la memoria de nuestro sistema. Éste tipo de herramientas no son muy difíciles de utilizar, es más ahora, les explicaré algunas para que puedan abordar diferentes tipos de problemas. Así que sin más que decir, como siempre digo…

Comencemos!
Nota: Quiero decir que estaré informando procesos en una plataforma, en éste caso Arch Linux, con algunos servicios activos como DNSCrypt-Proxy habilitado, no necesariamente es obligación usarlo, así que dependerá de los servicios que tengan activos ustedes.

TOP

top

htop

Una de las primeras o de las que siempre tenemos al alcance es una herramienta casi obvia que es “top“. Éste comando nos proporciona una vista en tiempo real de nuestro sistema y lo que se está ejecutando en el mismo momento en que la ejecutamos.

El resumen que nos brinda, nos ofrece la capacidad de controlar el uso de memoria que tenemos por cada proceso. Es muy importante ya que fácilmente podríamos tener diversas interacciones del mismo comando consumiendo X cantidad de memoria. Aunque no se encuentra esto en un servidor real o de cabecera, si por ejemplo, abrimos Chrome, Firefox notaremos el consumo de ésa aplicación. Claro, teniendo en cuenta que cada proceso por ejemplo Firefox tiene varios procesos hijos ejecutándose.

Por ejemplo, Firefox no es la única aplicación o programa que muestra que usa múltiples procesos. En ésos procesos principales de Firefox podemos ver (obviamente siempre que tenemos varias pestañas abiertas) una salida que nos da las estadísticas de nuestro sistema.

Una de las cosas interesantes es descubrir los números de procesos o también llamados PID que podrían haberse salido de control o también consumir demasiada memoria o recursos en nuestro sistema. Osea que con los PID podemos configurar el sistema para solucionar problemas para eliminar o suprimir las tareas que no nos sirvan o veamos que son “ofensivas” en nuestro equipo.

Free

free.png

En ocasiones, en la parte de nuestros procesos podemos saber solamente cuanta memoria ocupan en total todas las aplicaciones que tenemos abiertas/ejecutándose. Justamente para eso sirve la órden free. En éste caso usé free sin ningún operador y sino también podemos usar free con el operador -h para ver exactamente la cantidad de memoria libre o por usar que tenemos.

$ free

$ free -h

vmstat

Una herramienta interesante es vmstat que es muy útil para, de manera particular informar estadísticas de nuestra memoria virtual. Entre vmstat nos pueden mostrar estadísticas de ésta manera:

* Procesos
* Memoria
* Paginación
* Bloques IO
* Traps o Trampas
* Discos
* UPC

Entonces la mejor manera de usar vmstat es mediante el uso del modificador -s, que sería:

$ vmstat -s

Esto nos da información en una sola columna (en ocasiones es más fácil para la lectura) que necesita con más detalles.

dmidecode

Sirve para tener información detallada sobre la ram de nuestro sistema en su uso actual. Para ésto podríamos usar el comando dmidecode simplemente. Aunque ésta herramienta en particular decodifica la tabla DMI y vuelca o nos arroja el contenido de DMI de un sistema con formato legible para nosotros, los seres humanos.

Si no estamos seguros de como se maneja el DMI, éste es un medio para describir de que está hecho el sistema así como las posibles evoluciones para el mismo.

Para ejecutar el comando dmidecode necesitamos privilegios o acceso de root, también podemos usar sudo. Por ejemplo:

$ sudo dmidecode -t 17

Osea que la salida del comando, en algunos casos, podría ser larga ya que muestra información para todos los dispositivos de memoria. Por lo tanto si no tenemos la capacidad de desplazarnos en la misma terminal o tty podemos usar la salida:

$ sudo dmidecode -t 17 > salida_dmidecode.txt

o También poder mirarlo por páginas de ésta manera:

$ sudo dmidecode -t 17 | less

Como nos sirva mejor. De ambas maneras es válido dependiendo de la manera en que tengamos ganas de visualizar la salida.

/proc/meminfo

Esto es posible cuando nos preguntamos ¿De dónde vienen los comandos que nos brindan información? Simple, en algunos casos se obtienen de un archivo que se encuentra en /proc/meminfo

Captura de pantalla de 2018-06-19 01-48-23.png

Ésta orden puede leer un archivo directamente con la tubería “| less” si vemos que es muy larga. Recuerden que el método de visualización es simple sólo colocamos esto:

$ cat /proc/meminfo

Si vemos que la salida es demasiado larga podemos leerla con la tubería less

$ cat /proc/meminfo | less

O también podemos directamente dejarla en un archivo de texto así:

$ cat /proc/meminfo > meminfo.txt

Una cosa que se debe saber sobre ésta orden es que no es un archivo “real”. En cambio /pro/meminfo es un archivo virtual que contiene información dinámica en tiempo real sobre nuestro sistema. En particular podríamos usar los siguientes valores:

* MemTotal
* MemFree
* MemAvailable
* Buffers
* Cached
* SwapCached
* SwapTotal
* SwapFree

Si quieren ser un poco más prolijos también pueden definir de usarlo con el comando “egrep” de la siguiente manera:

$ egrep –color ‘Mem | Cache | Swap’ /proc/meminfo

Esto nos brindará un listado muy fácil de leer con colores y con las entradas de Mem, Cache y Swap.

Ahora la idea de esto es seguir aprendiendo y ganar conocimientos sobre todo lo que podemos hacer sobre nuestro sistema, seguir leyendo las “man-pages” de cada comando, por ejemplo

$ man top

$ man vmstat

$ man demicode

En fin comenzar con eso para que podamos poder aprender y administrar lo que necesitamos en el momento necesario. Recuerden que siempre pueden tener más información con –help y siempre con la orden man.

Por favor si les sirvió recuerden compartir la información así sigo creciendo.

Abrazo de gol!

Anuncios