Este artículo es Parte 8 de la serie LFCA, aquí en esta parte, te familiarizarás con los comandos generales de administración del sistema para monitorear métricas básicas del sistema y programar tareas administrativas en el sistema Linux.
Mantener un seguimiento del rendimiento de tu sistema es uno de los roles cruciales que tendrás que asumir como administrador de sistemas. Claro, hay suficientes herramientas de monitoreo de código abierto como Grafana y Nagios para monitorear métricas del sistema.
Afortunadamente, Linux proporciona algunas utilidades de línea de comandos que te permiten echar un vistazo a algunas de las estadísticas e información vital del sistema, como la utilización de CPU y memoria y los procesos en ejecución.
Vamos a echar un breve vistazo a algunas de las herramientas de línea de comandos que pueden ayudarte a monitorear métricas básicas del sistema:
1. Comando uptime
El comando uptime proporciona la duración que el sistema ha estado en funcionamiento desde que se encendió. Sin opciones de comando, proporciona la hora actual, el tiempo que el sistema ha estado en funcionamiento, los usuarios conectados y el promedio de carga.
$ uptime
Con la opción -s
, obtienes la fecha del sistema y la hora en que se encendió el sistema.
$ uptime -s
Usa la opción -p
para obtener solo el tiempo de actividad
$ uptime -p

2. Comando free
Para obtener una visión general de la memoria total y disponible, así como del espacio de intercambio en tu sistema, utiliza el comando free de la siguiente manera. La opción -h
imprime la salida en un formato legible para humanos.
$ free -h

3. Comando top
El comando top realiza dos funciones: proporciona un resumen de las métricas del sistema en tiempo real y muestra los procesos en ejecución actualmente que son gestionados por el kernel de Linux.
Además de mostrar los procesos en ejecución, el comando top combina la salida proporcionada por los comandos uptime y free, que se encuentran en la parte superior.
$ top

Una mejora del comando top es la utilidad htop, que muestra las estadísticas en un formato intuitivo y legible para humanos.
En Linux, puedes instalar htop usando el comando:
$ sudo apt install htop [On Debian-based] $ sudo dnf install htop [On RHEL-based]
Para iniciar htop, simplemente ejecuta el comando:
$ htop

4. Comando df
Hemos discutido anteriormente la utilidad df (disk-free) en comandos básicos de Linux. El comando df proporciona información sobre la utilización del disco duro por sistema de archivos. Usa la bandera -Th
para imprimir información en un formato legible para humanos.
$ df -Th

5. Ver Información de la CPU
Para ver información de la CPU como el identificador del proveedor, núcleos del procesador, nombre del modelo y mucho más, ejecuta el comando:
$ cat /proc/cpuinfo

Automatizar Tareas de Administración del Sistema
Programar tareas o trabajos para que ocurran en un momento predefinido es una de las habilidades fundamentales que cualquier administrador de sistemas debería tener. Puede que desees programar tareas administrativas que necesiten suceder regularmente como copias de seguridad y reinicios periódicos.
Cron es un planificador de tiempo que ayuda a automatizar tareas. La facilidad de cron comprende el demonio cron y un conjunto de tablas desde las cuales lee su configuración llamada crontab. El crontab describe las tareas a ejecutar.
Para crear un trabajo cron, primero debemos entender su arquitectura. Un trabajo cron consiste en cinco campos seguidos del comando o script a ejecutar. Aquí tienes una representación diagramática de los distintos campos de un trabajo cron.

Ahora exploremos algunos ejemplos de cron y sus interpretaciones:
0 12 * * * <command> Executes a task daily at noon 30 06 * * * <command> Executes a task daily at 6:30 am 30 * * * * <command> Executes a task every 30 minutes 0 0 * * * <command> Executes a task at midnight 30 06 * * 5 <command> Executes a task at 6:30 am every Fri * * * * * <command> Executes a task every minute 0 0 1 * * <command> Executes a task at midnight on the first day of every month 0 3 * * Mon-fri <command> Executes a task at 3:00am on every day of the week from Monday to Friday.
Ahora creemos un trabajo cron.
Primero, vamos a crear un script de respaldo que respalde nuestra carpeta de Descargas en el directorio /home/tecmint/Downloads al directorio /home/documents.
Usando el editor vim, crearemos y abriremos el archivo de script como se muestra.
$ vim backup.sh
Comenzaremos con un encabezado shebang en la parte superior para marcar el inicio del script de shell
#!/bin/bash
El comando para respaldar la carpeta de directorios se muestra a continuación.
tar -cvf /home/tecmint/Documents/downloads.tar.gz /home/tecmint/Downloads

El primer camino representa la ruta completa al archivo de respaldo que es downloads.tar.gz, mientras que el segundo camino apunta a la ruta del directorio que se va a respaldar.
Guarde el archivo presionando ESC luego escriba :wq
y presione ENTER.
A continuación, asigne permisos de ejecución al script de respaldo. Esto es necesario para que la utilidad cron pueda ejecutar el script.
$ chmod +x backup.sh
Para crear un trabajo cron para ejecutar el script, ejecute el siguiente comando:
$ crontab -e
Definiremos el trabajo cron para ejecutar el script de respaldo todos los días a las 14:30 HRS de la siguiente manera
30 14 * * * /home/tecmint/backup.sh

Guarde el archivo presionando ESC luego escriba :wq
y presione ENTER. Una vez que salga del archivo, obtendrá un mensaje crontab: instalando un nuevo crontab lo que implica que el trabajo cron ha sido inicializado.

Para listar los trabajos cron actuales, ejecute el comando:
$ crontab -l

Entonces, para nuestra tarea de respaldo, el trabajo cron creó con éxito un archivo comprimido del directorio ‘Downloads’ en el directorio ‘Documents’ una vez que el reloj marcó las 14:30 HRS.
$ ls Documents/

Si ya no deseas un trabajo cron, puedes eliminarlo usando el comando:
$ crontab -r
Conclusión
Hay varias otras tareas que los administradores de sistemas realizan a diario, como el inventario y mucho más.
Source:
https://www.tecmint.com/monitor-basic-system-metrics-in-linux/