Bases del sistema operativo

1

Aviso de renovación del curso

2

Lo que aprenderás sobre la administración de servidores linux

3

Distribuciones más utilizadas de Linux

4

Instalación de Ubuntu Server

5

Instrucciones para instalar CentOS

6

Gestión del árbol de directorios

7

Diferencias entre LESS, CAT, HEAD y TAIL para lectura de archivos

8

Interacción con archivos y permisos

9

Conociendo las terminales en linux

10

Manejo y monitoreo de procesos y recursos del sistema

11

Monitoreo de recursos del sistema

Instalación y manejo de software en Linux

12

Análisis de los parámetros de red

13

Administración de paquetes acorde a la distribución

14

Manejo de paquetes en sistemas basados en Debian

15

Administración de software con YUM y RPM para CentOS

16

Nagios: Desempaquetado, descompresión, compilación e instalación de paquetes

Administración de usuarios

17

Los usuarios, una tarea vital en el proceso de administración del sistema operativo

18

Creando y manejando cuentas de usuario en el sistema operativo

19

Entendiendo la membresía de los grupos

20

Usando PAM para el control de acceso de usuarios

Servicios en el sistema operativo

21

Autenticación de clientes y servidores sobre SSH

22

Configurando DNS con bind

23

Arranque, detención y recarga de servicios

24

NGINX y Apache en Ubuntu server

25

Instalación y configuración de NGINX

26

¿Qué es NGINX Amplify?

27

NGINX Amplify: Instalación y configuración de un servidor para producción

28

Monitoreo de MySQL con Nagios

29

Configuración de Nagios

30

Los logs, nuestros mejores amigos

31

Otros servicios de logs

Bash scripting

32

Las bases de bash

33

Las variables y su entorno de ejecución

34

Automatizando tareas desde la terminal

35

Automatizando la copia de seguridad

36

Crontab

Asegurando tu servidor

37

Entendiendo la gestión de vulnerabilidades

38

¿Qué es una superficie de ataque? Principio del menor privilegio

39

El firewall y sus reglas

40

Escaneo de puertos con NMAP y NIKTO desde Kali Linux

41

Lynis: Herramientas de auditoria de seguridad en Linux

Proyecto

42

Configuración de Node.js en un ambiente productivo

43

Configuración de NGINX para la aplicación de Node.js

Bonus: Linux en Azure

44

Aprende sobre Linux en Azure

45

Despliegue de una aplicación web MEAN

46

Crea una máquina virtual en la nube de Azure

Conclusiones

47

Lo que aprendiste sobre servidores linux

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

3D
23H
25M
8S

Monitoreo de recursos del sistema

11/47
Recursos

El comando top nos permite interactuar con una interfaz gráfica que nos muestra información específica del sistema operativo: cantidad de usuarios, tareas corriendo o “durmiendo”, identificadores de los procesos, entre otras.

Para ver la información de la CPU podemos usar el comando cat /proc/cpuinfo | grep "processor". Recuerda que Linux hace diferencia entra mayúsculas y minúsculas, pero puedes usar el comando grep -i para filtrar sin estas diferencias.

Para ver la información de la memoria podemos usar el comando free o, para que la información sea más fácil de leer, free -h. Y para ver el uso del disco duro está el comando du o du -hsc.

Aportes 131

Preguntas 22

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

RESUMEN DE LA CLASE
|
Monitoreo de recursos del sistema
|
Comandos
|
|
top: Muestra la siguiente información del sistema:

  • load average (carga promedio): Provee una representación en números del 1 al número de procesadores que tenga nuestro servidor del uso de los mismos.
  • Uso de la memoria
  • Cantidad de usuarios
  • Uso del CPU
  • Procesos
  • Etc

free: Me muestra información sobre la memoria de mi sistema. Con el modificador -h la información es más legible para un humano
du: Muestra información sobre el disco duro. Con el modificador -hsc y un directorio especificado muestra el tamaño de ese directorio
htop: Funciona como top pero funciona de forma más intuitiva
|
Comandos útiles
|
cat /proc/cpuinfo | grep "processor": Muestra información sobre el CPU
sudo ps auxf | sort -nr -k 3 | head -5: Muestra los 5 procesos que más uso hacen del CPU
sudo ps auxf | sort -nr -k 4 | head -5: Muestra los 5 procesos que más uso hacen de la memoria RAM

Mis apuntes de esta clase:

<h1>1.8 Monitoreo de recursos del sistema</h1>

top
Nos muestra una interfaz gráfica con información del SO.

  • Load average: se refiere a la CPU, se miden cada 1, 5 y 15 minutos.
    • La información de la CPU se encuentra en:
      cat /proc/cpuinfo | grep "processor"
  • Memory: para ver información respecto a la memoria usamos el comando free -h.

Cada uno de los procesos en el SO, consumen CPU y RAM.

  • Disco duro: du . Tiene un modificador para mostrar el peso de una ruta especifica du -hsc /home/platzi.

  • Conocer procesos con más consumo de CPU:
    sudo ps auxf | sort -nr -k 3 | head -5
    sudo ps auxf | sort -nr -k 4 | head -5 ==> RAM

htop ==> muestra una mejor organización de la información.

sort
Ordenar líneas de los archivos de entrada a partir de criterios de ordenación. Los espacios en blanco son tomados por defecto como separadores de campo.

Su sintaxis es de la forma:
sort [opciones] [archivo]

Alguno de sus opciones son:

-b Ignora espacios en blanco precedentes.

-d Ordena ignorando todos los caracteres salvo caracteres letras, números y espacios.

-f considera iguales las mayúsculas y minúsculas.

-n ordena por valor numérico.

-r invertirá el orden.

-k n1,[n2] Especifica un campo como clave de ordenación, comienza en n1 y acaba en n2; los números de campo empiezan en 1. En versiones antiguas existía la opción +1, la cual indicaba a sort que debía ordenarse tomando la segunda columna de datos, usándose +2 para la tercera y así sucesivamente, (los números de campo empezaban en 0).

-o salida.txt Escribir el resultado en salida.txt.

https://francisconi.org/linux/comandos/sort

recomendable utilizar htop, muestra informacion mas sencilla y el consumo de cada recurso de la maquina

instalación: sudo apt-get install htop
ejecucion: htop

Pueden usar el comando: htop para obtener un administrador de procesos y recursos probado en (Ubuntu server 20.0 lts)
Si no lo tienen lo pueden descargar >sudo apt-get install htop.
Puedes ver de mejor manera y en tiempo real, un administrador de recursos, y archivos.

Bpytop es otra herramienta muy buena

Les recomendaría el comando sar para verificación de memoria, cpu, red.

<h1>sar -r 1 10</h1>

Verifica el detalle de la memoria

<h1>sar -n ALL</h1>

Verifica el detalle del tráfico de red

<h1>sar -u</h1>

Verifica el detalle del CPU.

el comando grande para consultar los procesos que consumen mayor cpu o memoria:

ps auxf |sort -nr -k 3 | head -5 donde:
aux: muestra los procesos usando la sintaxis BSD
f: jerarquia de procesos
sort: comando para ordenar
-n: compara basándose en un caracter numérico
r: orden desendente ( reversa )
-k key ( indica que se ordenará una columna )
3: numero de columna que se va a ordenar ( no es array ni nada asi que inicia desde el 1 )
head: top de registros
-5: numeros de registros que se va a mostrar

Procesos mas CPU consumen en el S.O.
sudo ps auxf | sort -nr -k 3 | head -5

Procesos mas RAM consumen en el S.O.
sudo ps auxf | sort -nr -k 4 | head -5


Muy útil la información del Load Average, el valor varia por número de procesador.
Y las variables se miden:
Primer valor: cada minuto.
Segundo valor: cada 5 minutos.
Tercer valor: cada 15 minutos.

Entendido y muy útil

top
cat /proc/cpuinfo | grep -i ""Processor""
cat /proc/cpuinfo | grep ""processor""
free --memoria
free  -h -- memoria en un mejor formato
du --disco duro
du -hsc /carpeta
sudo ps auxf | sort -nr - k 3 | head -5 --revisar los 5 proceso que consumem mas cpu
sudo ps auxf | sort -nr - k 4 | head -5 --revisar los 5 proceso que consumem mas RAM 
htop

Corrí ````du``` sin ninguna flag, me mostró todo lo que tenía mi disco duro en Ubuntu, fue algo así 😅

Muy buena esta clase aquí coloco mi resumen:

Considero muy importante tener bien claro: El comando top nos permite interactuar con una interfaz gráfica que nos muestra información especifica del sistema operativo: cantidad de usuarios tareas corriendo o durmiendo, identificando de los procesos entre otros.

cual ejecutamos el comando top se resalto mucho en esta clase:

  • load average: se refiere a la cpu.
    pero antes debemos revisar también:
    cat /proc/cpuinfo/ | greo -i "Processor"
    Esto nos permitira conocer los procesos que tenemos corriendo

otros aspectos a destacar de load average: 2,00 si tienes 4 procesadores y aqui se muestra 2 quiere decir que te estas comiendo el 50% de los recursos del server.

Ahora es muy importante conocer de load avergare: 0,00 0,00 0,00
las variables mostradas en cero también son mediciones que se hacen cada 5, 10 y 15 minutos respectivamente.

Otro indicador para ver nuestro Disco duro en el sistema es el comando df -h, este nos da la composición de nuestro sistema de archivos.
Filesystem Size Used Avail Use% Mounted on
devtmpfs 30G 0 30G 0% /dev
tmpfs 30G 20K 30G 1% /dev/shm
tmpfs 30G 8.8M 30G 1% /run
tmpfs 30G 0 30G 0% /sys/fs/cgroup
/dev/sda2 1.6T 652G 843G 44% /
/dev/sda1 969M 187M 716M 21% /boot
/dev/loop0 3.9G 11M 3.7G 1% /tmp
tmpfs 5.9G 0 5.9G 0% /run/user/1001

Para los que nos quedoó faltando algo en el análisis del disco duro, les recomiendo el comando df -h. EL renglon que está resaltado indica la memoria total, usada y disponible del disco duro.

Hmmm interesante, por lo que veo htop es como realizar todos los comandos que hicimos pero de una forma más gráfica, aunque sería bueno saber cuáles procesos son normales, porque por ejemplo en mi caso me dice que están corriendo demasiados procesos y me aparece una lista muy grande

Verificar procesos en el sistema operativo 👨🏻‍💻

top: muestra información específica del sistema informativo

free: muestra la información de la memoria que se está consumiendo

free -h: con el modificador -h muestra la información en un formato más fácil de leer.

du: muestra el uso del disco duro

du -hsc: con el modificador -hsc general un total de cada peso.

Conocer los procesos que más consumen recursos en el sistema operativo sudo ps auxf | sort -nr - k 3 | head -5, para conocer con exactitud los modificadores que podemos agregar podemos llamar al comando man sort

Para conocer los procesos que consumen más RAM cambiamos k 3 por k 4

htop : un paquete con mejor administración.

Me pareció un módulo muy completo, con conceptos esenciales para un detallado conocimiento de nuestro sistema. 👀✔

Excelente!!! 😄

Me ha sido de mucha ayuda el tema del Load Average, llevo meses viendo el término y simplemente usaba los indicadores gráficos de htop, pero no sabía como interpretar estos datos que te salen en un montón de sitios.

-i ignora si pusiste en mayusculas/minusculas

entonces la consola de comandos es una interfaz de usuario no gráfica que permite la interacción con entornos gráficos como htop?

Excelente clase, en mi caso me gusta utilizar mucho htop, da mejor información, incluso permite hacer filtros por nombre de los procesos y ver cuanto de nuestro servidor esta usando en CPU, Memoria.

Muy bueno, estoy empezando a trabajar con sistema operativo AIX y los comandos son muy similares, hay muchas cosas del top y del monitoreo que no entendia, me sirvio mucho la clase y el modulo completo, gracias!

Hola ! Alguien sabe como hacer los dos puntos en teclados configurados en ingles (teniendo un teclado en español) ya que se recomendó configurar el teclado en ingles para los servidores linux. Desde ya muchas gracias !

con esos dos comandos uno puede saber que procesos consumen mas recursos y que procesos consumen mas memoria.

Procesos que mas consumen.CPU
sudo ps auxf | soft -nr -k 3 | head -5

Procesos que mas consumen memoria
sudo ps auxf | soft -nr -k 4 | head -5

Solo como fun fact en ese comando head que marcaba error con el 5 y el profesor solucionó con

head -5

tambien pudo poner el flag -n para indicar el numero de datosque nos trae head, asi

head -n 5

aquí un poquito de practica

Excelente htop, lo uso a diario

Genial!

Genial

Cuando puso todos esos comandos con el ps quede como, coño de donde salió todo eso, no me lo va a decir? le puse pausa y fui a buscar por mi cuenta para después enterarme que me lo explicaba al final, buen plot twist.

Se Nota mucha inseguridad del instructor al hablar, no deja las cosas claras como en el uso de du, lanza un brochazo y ya está, no profundiza ni deja las bases adecuadas.

Alternativas a HTOP:

seria exelente que coloquen pdfs sobre la clase…

top, me muestra información específica del sistema operativo, cuantos tengo (user) cuanto es la carga promedio (load average, 1, 5 y 15 min) , cuantas tareas tengo (Tasks) y en que estado (running, sleeping, stopped, zombie), cuanta memoria manejo
Cuales son los id de procesos (PID) el usuario que lo lanzó (user)

**Excelente video! **Muy útil para cuando nuestros procesos en linux están consumiendo más de los esperado.

Hola todos, yo trabajo con Mac, alguien sabría decirme que comando sería igual a free pero en Mac. Muchas gracias y un saludo a todos

Monitoreo de recursos del sistema
.

  • cat /proc/cpuinfo | grep “processor” Nos permite ver los procesos hechos por el usuario actualmente.

.

  • free Nos muestra la informacion de la memoria de nuestro dispositivo. Con -h obtenemos esa informacion mas detallada.
    .

  • du Nos muestra cuanto es el uso de la unidad de almacenamiento que estamos usando.
    .

  • Usamos sudo ps auxf | sort -nr -k (pieza de hardware) | (orden en el que quieres que se muestre) si queremos conocer los procesos más pesados del OS para el CPU. -k 3 Es para saber el “stress” del CPU. -k 4 Es para saber el uso de la RAM.
    .

  • Con htop obtenemos una interfaz grafica muy completa para administrar el OS.

esta buena estas clases lastima que no hay dinero por culpa de la pandemia para comprar estos cursos y entretenerse en casa

top: Muestra la siguiente información del sistema:
load average (carga promedio): se refiere a CPU y se revisan en 1, 5, y 15 minutos
free: se ocupara para revisar la memoria en uso, libre
du: se ocupa para revisar el total de espacio en HHD
htop: muestra la misma informacion pero mas entendible para el humano

y como complemento incorporar el manual de comandos man para observar que comandos o modificadores se pueden ocupar

  • Top: para ver todos los procesos en el so
    o Cpu
    o Memoria
    o Tareas
    o Procesos
    o Usuarios
    o Load average: es la carga promedio del procesador, 1 indica un procesador en uso, 2 indica 2 procesadores y así
  • Htop: versión mejorada de top
  • Free: memoria usada
  • Free -h: ver la memoria usada con valores.
  • Du: información del disco duro, con -hsc muestra el espacio de un directorio
    o Du -hsc directorio
  • Comandos usado para ver los procesadores
    o Cat /proc/cpuinfo | grep -i “processor”
  • Comando para relaizar la búsqueda especifica de procesos
    o Ps -auxf | sort -nr -k 4 | head -5 ___muestra los procesos que conumen mas memoria
    o Ps -auxf | sort -nr -k | head -5 ___muestra los procesos que conumen mas cpu

Segun vi en el manual “-n” es para ordenamiento numerico y “-r” para revertir el resultado ya que el comando “sort” por defecto ordena en modo ascendente y queremos orden descendente. Si me equivoco me corrigen por favor.

Al finalizar la clase menciona que vimos cómo crear usuarios. 🤔 Esa parte no la recuerdo. Es decir, creamos un usuario (platzi) al inicio y eso porque la instalación nos lo pedía, pero no recuerdo que hayamos creado otro dentro de la terminal. ¿Me perdí de algo?

Muy intrigante este tema, todavía me parece que me están hablando en otro idioma pero con practica sostenida lo lograre.

  • Para ver la información de la CPU podemos usar el comando cat /proc/cpuinfo | grep "processor".
  • Para ver la información de la memoria podemos usar el comando free o free -h.
  • Para ver el uso del disco duro está el comando du o du -hsc.
  • ps auxf | sort -nr -k 3 | head -5, procesos con mayor consumo de cpu.
  • ps auxf | sort -nr -k 3 | head -5, procesos con mayor consumo de memoria.
  • top, muestra el monitoreo de los recursos del equipo. htop, muestra un poco más de detalle que top.

Buenos días.

Para controlar la salida de error de un comando se puede agregar al final las opciones 2>/dev/null, esto le indica a la salida del comando que lo que genere algún error lo envie a null y no lo muestra en pantalla.

du -sh 2>/dev/null

Saludos.

Lo unico malo de la consola de comando de linux es cuando vas a instalar algun programa como htop no te deja o siempre encontraras problemas con permisos de denegacion.

Keysensitive es el termino para el atributo del sistema operativo Gnu/Linux que le permite distinguir las MAYÚSCULAS de las minúsculas, esta propiedad se debe tener muy en cuenta, pues como vimos en la clase basta que una letra este en mayúscula para que el sistema la considere diferente Processor processor

Para ver la información de la memoria podemos usar el comando free o, para que la información sea más fácil de leer, free -h. Y para ver el uso del disco duro está el comando du o du -hsc.

Para ver la información de la CPU podemos usar el comando cat /proc/cpuinfo | grep “processor”. Recuerda que Linux hace diferencia entra mayúsculas y minúsculas, pero puedes usar el comando grep -i para filtrar sin estas diferencias.

El comando top nos permite interactuar con una interfaz gráfica que nos muestra información específica del sistema operativo: cantidad de usuarios, tareas corriendo o “durmiendo”, identificadores de los procesos, entre otras.

explicacion de los comandos usados ( basandome en la documentacion )

free -h donde -h se usa para que la salida sea legible con las unidades correspondientes ( BG,MB,KB etc )
du -hsc / {directorio aqui } donde: -h= unidades de facil lectura, s= resumido; c= gran total

Como alternativa a top. el comando htop es mucho mejor en cuanto a UX.
sudo apt install htop.
para correrlo htop

free -h muestra la memoria usada en el sistema
du para saber cuanto pesa una ruta en especifico.
Para saber los procesos que más CPU consuman

sudo ps auxf | sort -nr -k 3 | head -5

Para saber los procesos que más RAM consuman

sudo ps auxf | sort -nr -k 4 | head -5

Muy bien

Que genial…se pueden hacer unas combinaciones increíbles!!!..Excelente.

Excelente explicacion, hay un mundo de combinaciones en los comandos.

Gracias

pensé que me iba a tener que ir a buscar info por fuera pero el profe si explicó el comando con pipes que encadenó

genial 😃 gracias!

Muchas gracias , muy util la explicacion

excelente, video no sabia como monitorear los procesos en linux.

bien

Excelente información.

Excelente!

ps = listado de procesos del SO
sort = ordenar ( -k:ordenar por localizacion )

Genial!

Fascinante información

Listado peso directorios

Listado peso de carpetas.

bien interesante

que gran clase, entendí muchas cosas que no había entendido en otros cursos.

El comando
$ du -sch .[!.]* * |sort -h

incluye archivos y directorios ocultos (.archivo - .directorio)

muy buena clase, conocía estos comando pero no a fondo.

procesos que mas CPU consumen

du

Lo mas importante que hay que destacar aqui, es que te da las herramientas, pero te motiva a que busques por tu propia cuenta y entiendas mejor como utilizarlo, super bien

El comando cat se utiliza para concatenar y mostrar el contenido de uno o más archivos. En este caso, se especifica el fichero /proc/cpuinfo, que contiene información sobre la CPU o CPUs del sistema.

La salida del comando cat se envía al comando grep, que busca en la entrada líneas que coincidan con un patrón dado. En este caso, el patrón especificado con grep es “processor”, que coincidirá con cualquier línea de la entrada que contenga la palabra “processor”.

Por lo tanto, este comando mostrará todas las líneas del archivo /proc/cpuinfo que contengan la palabra “processor”. Esto incluirá información sobre el número de procesadores en el sistema, el modelo de cada procesador, y otros detalles sobre los procesadores.

Explicación del comando sudo ps auxf | sort -nr -k 3 | head -5:
El comando sudo se utiliza para ejecutar un comando con privilegios de superusuario. Esto es necesario para poder ver y manipular todos los procesos del sistema, no sólo los procesos que pertenecen al usuario actual.

El comando ps se utiliza para listar los procesos que se están ejecutando actualmente en un sistema Linux. Las opciones auxf pasadas a ps tienen los siguientes significados:

  • a: Muestra los procesos de todos los usuarios.
  • u: Muestra información detallada sobre los procesos, incluyendo el usuario propietario del proceso y la cantidad de CPU y memoria utilizada.
  • x: Muestra los procesos que no están asociados a un terminal.
  • **f: Significa “bosque” y hace que la salida se muestre en formato de árbol, con cada proceso listado debajo de su proceso padre. Esto facilita ver las relaciones entre procesos y cómo están organizados en grupos de procesos.

La salida del comando ps se envía al comando sort, que ordena la salida basándose en los valores de la columna especificada. Las opciones -nr pasadas a sort tienen los siguientes significados:

  • n: Trata los valores como numéricos en lugar de lexicográficos. Esto es importante porque el comportamiento por defecto es ordenar alfabéticamente, lo que no tendría sentido para valores numéricos como el uso de CPU.
  • r: Ordena la salida en orden descendente. Esto significa que los valores más grandes aparecerán en la parte superior de la salida.

La opción -k especifica la columna por la que se ordena. En este caso, la opción -k 3 se utiliza para indicar a sort que ordene la salida por la tercera columna, que contiene el porcentaje de uso de la CPU.

La salida del comando sort es enviada al comando head, que muestra las primeras n líneas de su entrada. En este caso, la opción -5 se utiliza para indicar a head que sólo muestre las 5 primeras líneas de su entrada.

Por lo tanto, este comando listará los 5 procesos principales en el sistema por uso de CPU, con el proceso que usa más CPU en la parte superior. La salida incluirá información detallada sobre cada proceso, incluyendo el usuario al que pertenece el proceso y la cantidad de CPU y memoria utilizada.

El comando du significa “uso del disco”. Se utiliza para mostrar cuánto espacio de disco está siendo utilizado por un directorio dado y sus subdirectorios. La opción -h indica a du que imprima los tamaños en un formato “legible por humanos”, como “KB”, “MB” o “GB”. La opción -s indica a du que sólo muestre el tamaño total de cada directorio especificado, en lugar del tamaño de cada archivo individual. Por último, la opción -c indica a du que imprima al final un total general de todos los directorios especificados.

El comando “free -h” es un comando de Linux y otros sistemas operativos tipo Unix que se utiliza para mostrar información sobre el uso de memoria del sistema. El comando “free” muestra la cantidad total de memoria disponible, así como la cantidad de memoria que está siendo utilizada por el sistema, por las aplicaciones y por el kernel.

Una de las columnas que muestra el comando “free -h” es la columna “buff/cache”, que muestra la cantidad de memoria que está utilizando el núcleo como búfer y caché.

En Linux y otros sistemas operativos tipo Unix, el núcleo utiliza una parte de la memoria disponible como búfer y caché. Esta memoria se utiliza para almacenar datos que el sistema necesita temporalmente, como datos que se están leyendo o escribiendo en el disco, o datos que se están compartiendo entre procesos. La columna “buff/cache” en el comando “free -h” muestra la cantidad total de memoria que está siendo utilizada por el kernel para este propósito.

En general, la columna “buff/cache” del comando “free -h” puede proporcionar información útil sobre el uso de memoria del sistema. Si el valor de esta columna es alto, puede indicar que el sistema está utilizando mucha memoria para almacenamiento en caché y búfer, y esto podría provocar problemas de rendimiento si el sistema se queda sin memoria disponible. Por otro lado, si el valor de esta columna es bajo, puede indicar que el sistema no está utilizando su memoria de forma eficiente, y puede ser posible mejorar el rendimiento aumentando el tamaño del búfer y la caché.

El comando “htop” es una utilidad de línea de comandos en Linux y otros sistemas operativos tipo Unix que se utiliza para mostrar una vista dinámica de los procesos en ejecución en el sistema. Es similar al comando “top”, pero ofrece funciones adicionales y una interfaz más fácil de usar.

El comando “htop” muestra una lista de procesos, junto con información sobre cada proceso como el PID (ID del proceso), usuario, uso de CPU y memoria, y estado. La visualización por defecto incluye las siguientes columnas:

  • PR: La prioridad del proceso. Los números más bajos indican mayor prioridad.

    • En Linux y otros sistemas operativos tipo Unix, la política de programación “rt” es una política de programación en tiempo real que se utiliza para programar procesos con alta prioridad. La política “rt” es una variante de la política “sched_fifo”, y está diseñada para proporcionar tiempos de respuesta consistentes y de baja latencia para procesos que requieren programación en tiempo real. La política “rt” utiliza un algoritmo de programación basado en prioridades, en el que los procesos con prioridades más altas se programan para ejecutarse antes que los procesos con prioridades más bajas. Las prioridades de los procesos “rt” van de 1 a 99, siendo 1 la prioridad más alta y 99 la más baja. La columna “PR” del comando “htop” se utiliza para mostrar la prioridad de los procesos que se están ejecutando en el sistema. Para los procesos “rt”, esta columna mostrará la prioridad del proceso, con números más bajos indicando mayor prioridad.
  • NI: El valor bonito del proceso. Los números más altos indican una prioridad más baja.

    • La columna “NI” (nice value) del comando “htop” se utiliza para mostrar el valor nice de los procesos que se están ejecutando en el sistema. En Linux y otros sistemas operativos tipo Unix, el valor nice de un proceso es un valor numérico que se utiliza para determinar la prioridad del proceso. El valor nice de un proceso puede oscilar entre -20 (máxima prioridad) y 19 (mínima prioridad). Los procesos con valores nice más altos tienen una prioridad más baja y, por tanto, sólo se ejecutarán cuando no haya otros procesos listos para ejecutarse. Los procesos con valores nice más bajos tienen mayor prioridad y, por lo tanto, se programarán para ejecutarse antes que los procesos con valores nice más altos. El valor nice de un proceso puede cambiarse utilizando el comando “nice”. Por ejemplo, para ejecutar el comando “sleep” con un valor nice de 10, puede utilizar el siguiente comando:
    
    nice -n 10 sleep 100
    
    • Esto ejecutaría el comando “sleep” con un valor nice de 10, lo que significa que tendría menor prioridad que los procesos con valores nice más bajos, pero mayor prioridad que los procesos con valores nice más altos.
  • NI vs PR

    • NI es el valor nice, que es un concepto del espacio de usuario. PR es la prioridad real del proceso, vista por el núcleo de Linux. Para procesos normales, la prioridad del kernel es simplemente +20 del valor nice. Así, un proceso con el valor neutro nice de cero tiene una prioridad del núcleo de 20. Este desplazamiento por 20 se hace para que un proceso con un valor nice de -20, el valor nice de mayor prioridad, reciba una prioridad del núcleo de cero. Los valores numéricos más bajos equivalen a una mayor prioridad de programación. Para los procesos en tiempo real, la prioridad del núcleo es la prioridad en tiempo real del proceso, pero la columna PR simplemente mostrará RT. En algunas versiones del kernel de Linux, la prioridad del kernel podía diferir del valor bonito, ya que el programador de procesos aplicaba una pequeña bonificación o castigo a las tareas interactivas o a las que consumían mucho procesador, respectivamente. En estos kernels antiguos, el valor dado por la columna PR podía diferir del valor nice. Esto no ocurre con el planificador actual del núcleo, el Planificador Completamente Justo (CFS).
  • VIRT: La cantidad total de memoria virtual (en kilobytes) que está actualmente asignada al proceso.

  • RES: El tamaño del conjunto residente (en kilobytes) del proceso, que es la cantidad de memoria física que está siendo utilizada actualmente por el proceso.

  • SHR: La cantidad de memoria compartida (en kilobytes) que está siendo utilizada por el proceso.

  • S: Estado del proceso. Los valores posibles incluyen S (durmiendo), R (ejecutándose), e I (no sé lo que es, ¿quizás parado?).

  • TIEMPO+: El tiempo total de CPU que el proceso ha utilizado desde que se inició, expresado en forma de porcentaje.

Estas columnas pueden proporcionar información útil sobre los procesos que se están ejecutando en el sistema, y se pueden utilizar para solucionar problemas o supervisar el rendimiento del sistema. Por ejemplo, puede utilizar las columnas PR, NI y TIME+ para identificar los procesos que están utilizando muchos recursos de CPU, o puede utilizar las columnas VIRT, RES y SHR para supervisar el uso de memoria de los procesos.

Más información → [https://peteris.rocks/blog/htop/#:~:text=words%2Ccrunching numbers.-,S - interruptible sleep%20(esperando%20a que%20un%20evento%20se%20complete),o%20a%20condición%20%2D%20que%20ocurra)](https://peteris.rocks/blog/htop/#:~:text=words%2C crunching numbers.-,S - interruptible sleep (esperando%20a que%20un%20evento%20se%20complete),o%20a%20condición%20%2D%20que%20ocurra).

El directorio /proc es un sistema de archivos virtual en Linux y otros sistemas operativos tipo Unix que proporciona una vista de la tabla de procesos del sistema operativo y otra información del sistema. El directorio /proc se monta normalmente en el arranque y está gestionado por el núcleo de Linux.

El directorio /proc contiene una serie de archivos y directorios, cada uno de los cuales corresponde a un proceso específico o a un recurso del sistema. Por ejemplo, el archivo /proc/cpuinfo contiene información sobre la(s) CPU(s) del sistema, y el archivo /proc/meminfo contiene información sobre la memoria del sistema.

Además de estos archivos de todo el sistema, el directorio /proc también contiene un directorio para cada proceso que se está ejecutando actualmente en el sistema. Estos directorios reciben el nombre del PID (ID de proceso) del proceso y contienen información sobre el proceso, como su estado actual, el uso de memoria y los archivos abiertos.

El directorio /proc suele ser utilizado por los administradores del sistema y otros usuarios avanzados para ver información sobre el sistema y sus procesos. Puede ser útil para solucionar problemas o monitorizar el rendimiento del sistema. Sin embargo, debido a que el sistema de archivos /proc es administrado por el kernel y contiene información sensible, generalmente no se recomienda modificar o borrar archivos en el directorio /proc.

El sistema de ficheros virtual /proc es necesario en Linux y otros sistemas operativos tipo Unix porque proporciona una forma cómoda para que los programas del espacio de usuario accedan a información sobre el sistema y sus procesos. Esta información es gestionada por el kernel, y no es accesible directamente desde los programas de espacio de usuario.

Al proporcionar un sistema de archivos virtual gestionado por el núcleo y al que pueden acceder los programas de espacio de usuario, el sistema de archivos /proc permite a los programas recuperar y manipular fácilmente información sobre el sistema y sus procesos. Esto puede ser útil para una amplia gama de propósitos, como monitorizar el rendimiento del sistema, solucionar problemas o gestionar los recursos del sistema.

Además de proporcionar una interfaz práctica para acceder a la información del sistema, el sistema de archivos /proc también ofrece otras ventajas. Por ejemplo, permite al kernel proporcionar una vista virtual de la tabla de procesos del sistema, que puede ser más eficiente que mantener una estructura de datos separada para cada proceso. También permite al núcleo proporcionar una vista consistente de los procesos del sistema, incluso si los propios procesos cambian rápidamente.

En general, el sistema de archivos /proc es un componente importante de Linux y otros sistemas operativos tipo Unix, ya que proporciona una forma para que los programas del espacio de usuario accedan y manipulen la información del sistema de una manera conveniente y eficiente.

Interesante clase. Gracias.

Para ver que consume mayor almacenamiento uso el comando du -sh * | sort -rh | head -n 10, es muuuy útil

exelente curso me encanta

platzi es na aplicacion con buenos cursos academicos felicidades

exelente explicacion

excelente clase

Monitoreo de recursos del sistema

Etiquetas: Bash, Linux
Fecha de creación: August 14, 2022 12:30 PM
Posición: clase 10
Tipo: Anotaciones

Comandos

Monitoreo general

top

Muestra una interfaz grafica sencilla con información especifica del sistema operativo

htop

Es una version mejorada del comando top

CPU

cat /proc/cpuinfo | grep -i "processor"

Muestra información sobre el CPU

sudo ps auxf | sort -nr -k 3 | head -5

Muestra los 5 procesos que mas usan la CPU

Memoria RAM

free -h

Muestra información sobre la memoria RAM.
-h : Muestra la información mas sencilla de entender.

sudo ps auxf | sort -nr -k 4 | head -5

Muestra los 5 procesos que mas usan la memoria RAM.

Disco duro

du -hsc

Estima el uso de espacio de los archivos
-h : Muestra los tamaños en formato legible por humanos.
-s : mostrar solo un total para cada argumento (resumen).
-c : producir un gran total.

Para los que quieran fijar el encabezado de las columnas.

Antes de cada consulta hacer:
$ ps auxf | head -1
De esta manera tendrás en tu terminal el encabezado en un renglón. Luego puedes proceder a hacer otras consultas.

Recuerda que la salida de “ps auxf” se pasa como archivo de texto plano al siguiente comando, por lo cual el encabezado pasa a ser otro renglón más a ser filtrado y desaparece en ciertos filtros o es ordenado en distinta posición.

SALUDOS!! espero les sirva.

  • Monitoreo de recursos del sistema

    1. Top: Muestra los procesos de nuestra máquina.

      • Load average (carga promedio): Provee una representación en números del 1 al número de procesadores que tenga nuestro servidor del uso de los mismos.
      • Uso de la memoria
      • Cantidad de usuarios
      • Uso del CPU
      • Procesos
      • Etc
    2. cat /proc/cpuinfo | grep -i "Proceso": Proceso del CPU.


    1. free: Me muestra información sobre la memoria de mi sistema. Con el modificador
      h a información es más legible para un humano

    1. du: Muestra información sobre el disco duro. Con el modificador
      hsc y un directorio especificado muestra el tamaño de ese directorio

    1. htop: Funciona como top pero funciona de forma más intuitiva

    `|


    Comandos útiles

    **cat /proc/cpuinfo | grep "processor"**
    

    : Muestra información sobre el CPU

    **sudo ps auxf | sort -nr -k 3 | head -5**
    

    : Muestra los 5 procesos que más uso hacen del CPU

    **sudo ps auxf | sort -nr -k 4 | head -5**
    

    : Muestra los 5 procesos que más uso hacen de la memoria RAM

Amé HTOP

htop es una opción más eficiente sin duda

Qué viene siendo Swap:
Mi laptop tiene 8 de RAM
Pero aquí me aparece 6 en Mem y 2 en Swap
O estoy intempratanod mal por fa?

$ sudo ps auxf | sort -nr -k 3 | head -5 

Es lo mismo que:

$ sudo ps auxf | sort -nr -k 3 | head -n 5 

head -5 No muestra los útlimos 5. Si muestra los 5 primeros

Monitoreo de recursos del sistema
PAra esto: Software top (Muestra informaciOn especIfica del OS)
$top -> Cuántos usuarios, carga promedio, cuántas tareas y en que estado,
InformaciOn cuánta memoria manejo, pid de proceso, usuario que lo lanzó, y el comando.

**-load average -> **Carga promedio(procesador), se busca

	$ cat /proc/cpuinfo | grep "processor"
	$ cat /proc/cpuinfo | grep -i "Processor

```**- memoria ram**
	**$free	->** CuAnta memoria, usada, libre, compartida, disponible
	**$free -h    ->** Lectura humana
++_*Cada uno de los procesos cosumen ram y cpu_++
**- Hard disk **
	```
$ du	 -> Peso de los archivos
	$ du -hsc /home/platzi

- Procesos que mas CPU consumen en el sistema operativo
```
ps auxf = lista procesos del OS
sort = ordenar
head = listar
$ sudo ps auxf | sort -nr -k 3 | head -5 ó head -n 5


**- Procesos que mas memoria consumen en el sistema operativo**
	```
$ sudo ps auxf | sort -nr -k 4 | head -5 ó head -n 5

$ htop -> MEjor administración de los recursos.

Me quedo con htop