CFG2HTML – Guía completa de configuración y generación de informes paso a paso para recopilar y analizar datos de un sistema Linux

informe de cfg2html

Introducción a cfg2html

cfg2html es una herramienta de código abierto diseñada para recopilar de manera eficiente la información detallada del sistema y generar informes exhaustivos en una variedad de entornos operativos. Esta utilidad de línea de comandos se utiliza ampliamente para recopilar información técnica crucial de hardware y software en sistemas UNIX y Linux, lo que la convierte en una herramienta valiosa para administradores de sistemas, ingenieros de soporte y usuarios avanzados en entornos empresariales y de servidor.

Tener esta información es crucial cuando tenemos una incidencia en un servidor.

Para aquellos entornos que no tienen una CMDB, o inventario del software y del sistema de sus servidores, o desean completar la información que poseen, cfg2html es una buena solución.

Al utilizar comandos simples y una estructura de script fácil de entender, cfg2html simplifica la tarea de recopilar datos críticos del sistema, lo que permite a los usuarios obtener una visión detallada de la configuración del sistema, la información del kernel, la configuración de red, los controladores instalados, entre otros aspectos fundamentales del entorno de TI. Esto facilita el análisis exhaustivo del sistema y el diagnóstico de problemas potenciales, lo que resulta en una gestión más efectiva y una resolución más rápida de problemas.

En esta guía detallada, exploraremos las diversas capacidades de cfg2html y proporcionaremos una visión completa sobre cómo instalar, configurar y utilizar esta herramienta para obtener un panorama completo de la configuración de sistemas, lo que permitirá a los usuarios tomar decisiones informadas y mantener un rendimiento óptimo del sistema.

Instalación y configuración de cfg2html

La instalación y configuración de cfg2html pueden variar ligeramente dependiendo del sistema operativo específico. Una guía general para la instalación y configuración básica sería:

Instalación de cfg2html:

  • Descarga del paquete:
    Visitamos el sitio web oficial de cfg2html y descargamos el paquete de instalación compatible con tu sistema operativo.
  • Extracción del paquete:
    Utilizamos el comando de extracción apropiado para descomprimir el archivo descargado. Si, por ejemplo, tenemos un Linux RedHat, podemos descargarnos el paquete RPM correspondiente e instalarlo de la manera habitual con rpm, yum o dnf.
# rpm -i cfg2html-7.0.1.1.gb8c7a98-1.git202303291751.noarch.rpm 
# rpm -qa |grep cfg2html                                               
cfg2html-7.0.1.1.gb8c7a98-1.git202303291751.noarch
# 

Configuración de cfg2html:

  • Edición de opciones de configuración:
    Abriremos el archivo de configuración principal de /etc/cfg2html/local.conf con un editor de texto y ajustaremos las opciones según nuestras necesidades. Como norma general, no modificaremos las opciones de configuración por defecto pero, si lo deseamos. podemos especificar los componentes específicos del sistema que deseamos incluir en el informe.
# cat /etc/cfg2html/local.conf 
# @(#) $Id: local.conf,v 1.2 2013-10-07 07:15:36 ralph Exp $ 
# -------------------------------------------------------------------------
# vim:ts=8:sw=4:sts=4 -*- cfg2html

# Example of /etc/cfg2html/local.conf file
####
# OUTPUT_URL=[proto]://[host]/[share]
# example: nfs://lucky/temp/backup
# example: cifs://lucky/temp
# example: file:///path
####
#CFG_TRACETIME="yes"
#LOCALPATH=/operator/bin:/sbin:/bin:/usr/sbin:/usr/bin
# 

  • Configuración de salida:
    Podemos personalizar la configuración de salida para determinar el formato del informe y la ubicación del archivo de salida generado.
  • Configuración de programación de tareas (opcional):
    Si deseamos programar ejecuciones periódicas de cfg2html, configuraremos las tareas de ejecución de cfg2html en un programador de tareas o en el propio cron del sistema.
  • Prueba de la configuración:
    Ejecutaremos cfg2html con las opciones de configuración seleccionadas para verificar si se genera el informe de acuerdo con nuestras especificaciones.
  • Ajustes finales:
    Realizaremos ajustes adicionales según sea necesario, como la configuración de notificaciones o la personalización de otros parámetros relevantes para nuestro sistema.

Uso básico de cfg2html

El uso básico de cfg2html implica ejecutar el comando y especificar las opciones necesarias para recopilar la información del sistema y generar un informe:

  1. Ejecución del comando:
    Abriremos una terminal escribiremos el comando cfg2html:
   cfg2html
  1. Especificación de opciones:
    Podemos especificar opciones adicionales según nuestras necesidades. Por ejemplo, la opción -o sirve para especificar la ubicación y el nombre del archivo de salida, o la opción -F para indicar el formato de salida del informe.
   cfg2html -o /ruta/del/informe/mi_informe.html -F html

Si no especificamos el formato del fichero, cfg2html nos generará un informe en formato HTML y otro en modo texto. Veamos el proceso completo:

# cfg2html -o /tmp/$(hostname)

--=[ http://www.cfg2html.com ]=---------------------------------------------
Starting:          cfg2html-linux version 7.0.1.1.gb8c7a98-git202303291751 
Path to cfg2html:  /usr/sbin/cfg2html
HTML Output File:  /tmp/rhel9casa/rhel9casa.html
Text Output File:  /tmp/rhel9casa/rhel9casa.txt
Partitions:        /tmp/rhel9casa/rhel9casa.partitions.save
Errors logged to:  /tmp/rhel9casa/rhel9casa.err
Local config      /etc/cfg2html/local.conf ( 0 lines)
Started at        2023-10-31@09:36:45
WARNING           USE AT YOUR OWN RISK!!! :-))           <<<<<
--=[ http://www.cfg2html.com ]=---------------------------------------------

Collecting:  Linux System: [Red Hat Enterprise Linux 9.2 (Plow)]  ...................................................................
Collecting:  Cron and At  .........
Collecting:  Hardware  ..............................
Collecting:  Software  ........
Collecting:  Filesystems, Dump and Swap configuration  ............
Collecting:  LVM  .............
Collecting:  Network Settings  ....................................
Collecting:  Kernel, Modules and Libraries  ...................
Collecting:  System Enhancements  .
Collecting:  Applications and Subsystems  .........
Collecting:  Cluster Services  .
Collecting:  Local files  ..

--=[ http://www.cfg2html.com ]=---------------------------------------------
#

# ls -la /tmp/$(hostname)
total 4116
drwxr-xr-x   2 root root     111 Oct 31 09:37 .
drwxrwxrwt. 38 root root    4096 Oct 31 09:38 ..
-rw-r--r--   1 root root    4632 Oct 31 09:38 rhel9casa.err
-rw-r--r--   1 root root 1709294 Oct 31 09:38 rhel9casa.html
-rw-r--r--   1 root root     223 Oct 31 09:37 rhel9casa.partitions.save.nvme0n1
-rw-r--r--   1 root root 1662146 Oct 31 09:38 rhel9casa.txt
# 
  1. Interpretación del informe:
    Una vez que se genera el informe, lo abriremos con un visor de texto o un navegador web para revisar la información recopilada. El informe proporcionará detalles sobre la configuración del hardware, la red, el kernel, los controladores y otros componentes del sistema según las configuraciones especificadas.

Como el fichero es muy largo, voy a escribir solamente el índice del contenido del informe:

    Linux System:  [Red Hat Enterprise Linux 9.2 (Plow)] ---- 
       - Host is Virtual.
       - System description
       - CPU and Model info
       - CPU Architecture Information Helper
       - Processor idle state information
       - Processor power related kernel or hardware configuration
       - Monitor
       - uname and hostname details
       - Host alias; and ALL information
       - OS, Kernel version
       - Hostname settings
       - OS Specific Release Information for (/etc/os-release)
       - OS Specific Release Information for (/etc/redhat-release)
       - OS Specific Release Information for (/etc/system-release)
       - virsh Virtualization Support Status
       - virsh XML Hypervisor Sysinfo
       - Virtual Machine Check
       - Systemd Virtual Machine and Container Version
       - Systemd Virtual Machine and Container Status
       - POSIX Standards/Settings
       - locale specific information
       - System ulimit
       - System Configuration Variables
       - MP-Statistics
       - IO-Statistics
       - PATH Settings
       - Executable Commands found in /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
       - Files that are open but have been deleted
       - Used Memory and Swap Summary
       - Detailed Memory Usage (meminfo)
       - Zoned Buddy Allocator/Memory Fragmentation and Zones
       - Kernel slabinfo Statistics
       - Additional page allocator information
       - Per-zone page allocator
       - Virtual Memory-Statistics (1 10)
       - Virtual Memory-Statistics (Summary)
       - Uptime
       - Active Process - Tree Overview
       - Processes without a named owner
       - Top load processes
       - Top memory consuming processes
       - Top file handles consuming processes
       - pidstat - Statistics for Linux Tasks
       - Last 25 Reboots
       - Last 25 runlevel changes or reboots
       - systemd-analyze Boot Performance Profiler
       - systemd-analyze Boot Sequence and Performance Profiler
       - Systemd: Recursively show control group contents
       - Alias
       - Systemd: System and Service Manager
       - Systemd: All Services
       -  Systemd: All Unit Files
       - Systemd Journal with Errors and Warnings
       - default runlevel
       - current runlevel
       - Report running processes that have been updated and need restart
       - Hardware watchdog status
       - List available coredumps
       - IPC Status
       - IPC Summary
       - IPC Limits
       - integrity of password files
       - integrity of group files
       - Password File
       - Shadow File
       - Sudo Config
    Cron and At ---- 
       - cron.allow
       - cron.deny
       - For utility 0hourly
       - For utility cfg2html
       - /etc/crontab
       - No /etc/at.allow
       - /etc/at.deny
       - AT Scheduler
    Hardware ---- 
       - Physical Memory
       - DMI Table Decoder
       - biosdecode
       - CPU architecture
       - Hardware List (lshw)
       - List of USB devices
       - PCI devices
       - IoPorts
       - Interrupts
       - SCSI Components
       - SCSI Devices
       - SCSI Devices (long, details)
       - SCSI Devices (size)
       - SMART disk drive features and information
       - Fibre Channel Host Bus Adapters sg_scan SCSI inquiry
       - Disk devices by-id
       - Block disk devices
       - Fibre Channel Host Bus Adapters scsi_id
       - Asound Version
       - Sound modules
       - Sound Cards
       - Sound Timers
       - Sound devices
       - DMA Devices
       - Serial Devices
       - Serial ttyS0
       - Serial ttyS1
       - IDE Disks
       - CDROM Drive
    Software ---- 
       - Packages installed
       - Packages installed (sorted)
       - Packages installed, Name only (sorted)
       - Packages installed, Name and Vendor only (sorted)
       - RPM Query Tags
       - YUM: Last actions performed
       - Software Development: Programs and Versions
    Filesystems, Dump and Swap configuration ---- 
       - Filesystem Table
       - Filesystems and Usage
       - All Filesystems and Usage
       - Filesystems Parameters
       - Local Mountpoints
       - Disk Partition Layout
       - Disk Partitions to restore from
       - Disk Partitions
       - NFS Filesystems
       - Kdump Status
       - Kdump memory allocation
    LVM ---- 
       - Block Device Attributes
       - Physical Volumes
       - Volumegroup Device Files
       - LVM global info
       - LVM dumpconfig
       - Available Physical Groups
       - Available Volume Groups
       - Available Logical Volumes
       - Detailed Volume Groups Report
       - Logical Volumes
       - Volumegroups
       - Physical Devices used for LVM
    Network Settings ---- 
       - LAN Interfaces Settings (ifconfig)
       - LAN Interfaces Settings (ip addr)
       - Detailed NIC Statistics
       - NetworkManager Device Status
       - NetworkManager Connections
       - Ethernet Settings for Interface ens160
       - LAN Configuration Files
       - Route Configuration Files
       - MII Status
       - MII Diagnostics
       - Network Routing
       - Routing Tables
       - Network Neighborhood
       - Summary statistics for each protocol
       - Other Network statistics
       - Kernel Interface table
       - list of all sockets
       - TCP Listening Sockets Statistics
       - UDP Listening Sockets Statistics
       - dig hostname
       - /etc/hosts
       - IP forward
       - DNS & Names
       - DNSMASQ
       - Postfix Version
       - Email Aliases
       - NFSD and BIOD utilization
       - CHRONY Time Protocol Daemon sources
       - CHRONY Time Protocol Daemon tracking
       - System Time and Date Status
       - Time: HWClock
       - FTP Login Shells
       - host.conf
       - sshd config
       - ssh config
    Kernel, Modules and Libraries ---- 
       - GRUB2 Boot Manager
       - Contents of the InitRD RAM File System
       - Files in /boot
       - Loaded Kernel Modules
       - Available Modules Trees
       - Modules for the ramdisk
       - Missing Kernel Modules
       - SELinux Settings
       - System boot
       - Kernel command line
       - libc Version (getconf)
       - libc6 Version (RPM)
       - Run-time link bindings
       - configured kernel variables at runtime
       - configured kernel variables in /etc/sysctl.conf
       - Firmware and boot manager settings
       - Kernel I/O Elevator
       - List of Block Devices
    System Enhancements ---- 
    Applications and Subsystems ---- 
       - ReaR Configuration
       - Files in /usr/local/bin
       - Files in /usr/local/sbin
       - Files in /opt
       - Samba Configuration (smb.conf)
       - BSD Printer Spooler and Printers
       - SYSV Printer Spooler and Printers
       - Printcap
    Cluster Services ---- 
    Local files ---- 
       - Contents of the file: /etc/motd

Opciones avanzadas de cfg2html

A continuación, podemos ver algunos ejemplos ampliados de cómo utilizar algunas de las opciones avanzadas de cfg2html:

  1. Opciones de filtrado avanzadas:
   cfg2html -x '(hardware|network)' -o /ruta/del/informe/mi_informe.html

Este comando utiliza la opción -x para filtrar la información del informe y solo incluir los componentes de hardware y red en el informe generado.

  1. Personalización de la plantilla de informe:
   cfg2html -t mi_plantilla.cfg -o /ruta/del/informe/mi_informe.html

En este ejemplo, la opción -t se utiliza para especificar una plantilla personalizada denominada «mi_plantilla.cfg» que contiene la configuración de formato específica para el informe.

  1. Configuración de exportación a múltiples formatos:
   cfg2html -F xml -o /ruta/del/informe/mi_informe.xml

La opción -F se utiliza para especificar que el informe debe generarse en formato XML en lugar del formato predeterminado. El informe se guarda en el archivo «mi_informe.xml».

  1. Configuración de metadatos y etiquetas avanzadas:
   cfg2html -m "Entorno de producción" -l "Equipo A" -o /ruta/del/informe/mi_informe.html

Aquí, las opciones -m y -l se utilizan para agregar metadatos y etiquetas al informe, lo que ayuda a categorizar y etiquetar el informe con información adicional relevante.

COMPÁRTEME

Deja un comentario