Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

¿Qué es un sosreport y cómo puedo crearlo en Red Hat Enterprise Linux 4.6 y posteriores?

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 4.6+
  • Red Hat Enterprise Linux 5+
  • Red Hat Enterprise Linux 6+
  • Red Hat Enterprise Linux 7

Issue

  • ¿Qué es un sosreport y cómo se genera?
  • ¿Cómo generar un sosreport?
  • ¿Qué hacer si el sosreport se cuelga?
  • ¿Cómo reunir archivos de log del sistema, detalles de configuración e información de sistema desde un sistema Red Hat Enterprise Linux para enviarlo a Soporte Técnico de Red Hat para su análisis?
  • ¿Qué datos se deben proporcionar a Soporte Técnico de Red Hat a abrir un caso, para que puedan realizar un análisis inicial del sistema?

Resolution

El comando sosreport es una herramienta que reúne información de configuración y diagnóstico de un sistema Red Hat Enterprise Linux, por ejemplo: qué versión el kernel está corriendo, qué módulos están cargados, y los archivos de configuración y de servicio. El comando también ejecuta programas externos para reunir más información y almacena este resultado en el archivo resultante.

Para ejecutar sosreport debe instalarse el paquete sos. El paquete forma parte del grupo de paquetes predeterminado y será instalado automáticamente en la mayoría de los sistemas.

Si por alguna razón el paquete no está presente, es posible agregarlo manualmente siguiendo los pasos a continuación:

Red Hat Enterprise Linux 4 Update 6 o posterior

Si el sistema está registrado en Red Hat Network (RHN), puede instalarse sos utilizando el comando up2date:

# up2date sos

Red Hat Enterprise Linux 5 y posterior

Si el sistema está registrado en RHN, utilice el comando yum:

# yum install sos

Si el sistema no está registrado en RHN el paquete sos puede descargarse del sitio web de RHN o del CD de instalación.
Es posible utilizar el comando rpm para instalar el paquete en cualquier versión de Red Hat Enterprise Linux:

 # rpm -Uvh sos-<version>.noarch.rpm

Una vez instalado el paquete, ejecute el siguiente comando:

Nota: para funcionar, sosreport requiere permisos de root.

# sosreport

Por lo general, este comando se completará en algunos minutos en Red Hat Enterprise Linux 6. Las versiones anteriores pueden demorarse un poco más. Dependiendo de la configuración local y las opciones especificadas puede que en algunos casos el comando se demora bastante más para completarse. Si tiene dudas sobre el tiempo de ejecución del comando sosreport contáctese con un representate de Soporte de Red Hat para solicitar ayuda.

Una vez completo, el sosreport generará un archivo comprimido en /tmp. Las diferentes versiones utilizan diferentes esquemas de compresión (gz, bz2, or xz). El archivo deberá ser enviado a su representante de soporte (por lo general, como adjunto en un caso abierto).

El tamaño del archivo varía según la configuración del sistema y las características opcionales del sosreport habilitadas (por ejemplo, especificar la opción "all_logs" del módulo general para obtener todos los archivos de log de syslog posiblemente genere un archivo de un mayor tamaño).

Si el sosreport obtenido es demasiado grande para adjuntarlo al caso, podría subirse al ftp de Red Hat.

Para evitar la necesidad de ingresar la información de usuario y cuenta de manera interactiva, puede ejecutar el comando en modo batch, utilizando la opción --batch. En ese caso, la información del usuario se obtiene desde los archivos de configuración del sistema RHN:

# sosreport --batch

El comando sosreport tiene una estructura modular y permite al usuario habilitar y deshabilitar módulos y especificar las opciones de módulo mediante línea de comandos. Para obtener una lista de los módulos disponibles (plug-ins) ejecute el siguiente comando:

# sosreport -l

Para deshabilitar un módulo temporalmente:

Inclúyalo en una lista de módulos separada por comas luego de -n/--skip-plugins.

Por ejemplo, para deshabilitar temporalmente los módulos kvm y amd (si están rotos):

# sosreport -n kvm,amd

Es posible que los módulos individuales incluyan opciones adicionales que pueden especificarse con la opción -k. Por ejemplo, en las instalaciones de Red Hat Enterprise Linux 4 y 5 el módulo sos rpm reúne el resultado de "rpm -Va" de manera predeterminada. Debido a que esto puede demorar algo de tiempo, es posible deshabilitarla ejecutando lo siguiente:

# sosreport -k rpm.rpmva=off

Ejecutar sosreport en RHN Proxy Server

Para obtener información más detallada sobre RHN Proxy Serve, ejecute el siguiente comando:

# sosreport -o rhn

Nota:

1. Red Hat Enterprise Linux 4.5 y las versiones anteriores incluyen el comando sysreport para crear archivos de diagnóstico. Si es posible, actualice su sistema al paquete sos que se incluye en las versiones más nuevas. Sin embargo, aún se pueden enviar sysreports a Red Hat en caso de ser necesario. Refiérase al artículo What is a sysreport and how to run it in Red Hat Enterprise Linux?

2. El paquete sos en Red Hat Enterprise Linux 4 y 5 también incluye un comando sysreport. Este es un link simbólico que se brinda con fines de compatibilidad con versiones anteriores.

# ls -l /usr/sbin/sysreport
lrwxrwxrwx 1 root root 19 Nov  3  2008 /usr/sbin/sysreport -> /usr/sbin/sosreport

Para utilizar la versión original (legacy) del script sysreport en estas instalaciones, utilice el comando sysreport.legacy en:

# sysreport.legacy

Esta utilidad repasará y reunirá información detallada sobre el hardware y la configuración de su sistema Red Hat Linux. Esta información será utilizada para diagnosticar problemas en su sistema y será considerada información confidencial. Red Hat utilizará esta información con fines diagnósticos ÚNICAMENTE.

¿Qué hacer si un sosreport se cuelga?

  • Si el sosreport falla debido a que no hay más espacio disponible en el dispositivo, verifique que haya suficiente espacio en el filesystem que contiene /tmp
# df -h /tmp
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_ren-lv_root
                       50G   49G    1M  99% /
  • Se puede especificar espacio libre adicional o un directorio diferente utilizando el siguiente argumento:
 # soserport --tmp-dir /path/to/another/volume
  • El sosreport puede haberse colgado por causa de un plugin específico.

Intente determinar qué plugin se le cuelga:

  1. Aumente el nivel de detalle sosreport -vvvv
  2. Ejecute un strace

Una vez que determina qué plugin está colgado, exclúyalo.

Ingrese el siguiente comando para ver todos los plugins:

# sosreport -l

Por ejemplo, si desea excluir

sosreport -n filesys
  • De lo contrario, en lugar de reunir el sosreport de la falla, puede generar un reporte manual ejecutando el siguiente script
#!/bin/bash
host="$(hostname)"

sos_dir="/tmp/${host}_hungsos"
mkdir $sos_dir
cd $sos_dir
chkconfig --list > chkconfig
date > date
df > df
dmesg > dmesg
dmidecode > dmidecode  
fdisk -l > fdisk  
free > free  
hostname --fqdn > hostname  
ifconfig > ifconfig  
lsmod > lsmod  
lspci > lspci  
cat /proc/mounts > mount  
netstat -tlpn > netstat  
ps auxww > ps  
rpm -qa > rpm-qa  
rpm -Va > rpm-Va     #this command may take a while to run  
ulimit -a > ulimit  
uname -a > uname  
uptime > uptime  
cat /proc/meminfo > meminfo  
cat /proc/cpuinfo > cpuinfo  
mkdir etc  
cd etc  
cp /etc/fstab .
cp /etc/cluster/cluster.conf .
cp /etc/security/limits.conf .  
cp /etc/redhat-release .  
cp /etc/sysctl.conf .  
cp /etc/modprobe.conf .  
mkdir sysconfig/network-scripts -p  
cd sysconfig  
cp /etc/sysconfig/* . -R  
cd $sos_dir
mkdir var/log -p  
cp /var/log/* var/log -R  
cd /tmp  
tar -cvjf ${host}_hungsos.tar.bz2 $sos_dir

Referencia: How to gather data from a Red Hat Enterprise Linux system for troubleshooting if the sosreport process goes to hung state?

Generar un sosreport en modo rescate

Si el sistema no se inicia, se puede generar un sosreport desde un entorno en modo rescate para fines de diagnóstico y solución de problemas.

Refiérase a: How to generate sosreport from the rescue environment?

Generar un sosreport en una ubicación alternativa

Si se tienen restricciones de espacio en /tmp, es posible forzar la generación del sosreport en una ubicación alternativa.

Refiérase a: How do I make sosreport write to an alternative location?

Generar un sosreport en forma manual

Si todo esto falla y no es posible generar un sosreport de ninguna manera, la siguiente solución explica como recolectar los archivos en forma manual:

Refiérase a: Sosreport fails. What data should I provide in its place?

  • Component
  • sos

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.