Collecte d'informations de débogage avec sos

La commande sos collecte des informations sur un système, telles que la configuration matérielle, la configuration logicielle et l'état opérationnel. Vous pouvez également utiliser la commande sos report pour activer les fonctions de diagnostic et d'analyse sur le système actuel.

  • Fichiers de config. système
  • Informations relatives au matériel
  • Exécution de processus et de services
  • Détails du noyau
  • Fichiers journaux
  • Sortie de commandes système spécifiques

Le rapport généré est utile dans les cas où le support technique Oracle vous aide à résoudre un problème dans le système. Le support technique peut utiliser le rapport pour obtenir une image exacte du système, de ses ressources, de toutes les applications et de tous les processus qui existent dans le système, ainsi que de toutes les autres données qui peuvent aider à trouver les causes des problèmes que vous rencontrez.

L'utilitaire sos requiert l'installation du package sos. Dans les images de plate-forme Oracle Linux, l'utilitaire sos est installé par défaut.

Si vous utilisez une autre image Linux, vérifiez si l'utilitaire sos est installé.

  1. Vérifiez si l'utilitaire sos est installé :
    rpm -q sos

    Si l'utilitaire sos est installé, la commande renvoie la version installée. Par exemple :

    sos-4.7.2-2.0.2.el8_10.noarch
  2. Si l'utilitaire sos n'est pas présent, installez-le via le gestionnaire de packages. Par exemple :
    sudo dnf install sos

Référence de commande sos

Ce tableau fournit des informations sur la commande sos.

Action Commande Description
Créez le rapport sos. sos report

Collecte toutes les informations de diagnostic et de configuration du système et de ses applications installées.

Masquez les informations sensibles du rapport sos. sos clean

Masque les informations dans un rapport existant avant qu'elles ne soient fournies au support technique Oracle.

Pour obtenir la liste des options et des arguments que vous pouvez utiliser avec l'utilitaire sos, exécutez la commande suivante :

sos report -h
optional arguments:
  -h, --help            show this help message and exit
                
Global Options:
  --batch               Do not prompt interactively
  --config-file CONFIG_FILE
                        specify alternate configuration file
...
Remarque

Pour plus d'informations, saisissez man sos ou reportez-vous à la documentation utilisateur OS.

Création de l'état sos

Pour collecter des informations de diagnostic et de configuration à partir du système et de ses applications installées, générez un rapport en exécutant la commande sos report en tant qu'utilisateur root. Si vous générez le rapport comme lié à un cas de dépannage spécifique, appuyez sur Entrée pour continuer et entrer l'ID du cas.

sudo sos report

sos report (version 4.8.1)

This command will collect diagnostic and configuration information from
this Oracle Linux system and installed applications.

An archive containing the collected information will be generated in
/var/tmp/sos.s4zah5s1 and may be provided to a Oracle America support
representative.

Any information provided to Oracle America will be treated in accordance
with the published support policies at:

        Distribution Website : https://support.oracle.com/
        Commercial Support   : https://support.oracle.com/

The generated archive may contain data considered sensitive and its
content should be reviewed by the originating organization before being
passed to any third party.
No changes will be made to system configuration.
Press ENTER to continue, or CTRL-C to quit.
Optionally, please enter the case id that you are generating this report for []:

Le rapport est généré sous la forme d'un fichier tar compressé par xa dans le répertoire /var/tmp. Dans le nom de fichier du rapport, ID est créé dynamiquement par l'utilitaire.

Important

Lorsque vous contactez le support technique Oracle pour diagnostiquer et résoudre les problèmes que vous avez observés dans le système, sachez que le rapport contient des informations sensibles propres à votre entreprise. Vérifiez le contenu du rapport et identifiez les informations sensibles avant d'envoyer le rapport à un tiers. Reportez-vous à la section Hiding Sensitive Information in an sos Report.

Selon les packages installés et le chargement de votre système, le rapport peut prendre beaucoup de temps.

  • Si de nombreux packages sont installés sur le système, utilisez la commande suivante pour désactiver la vérification de la base de données rpm :
    sos report -k rpm.rpmva=off
  • Si le système est fortement chargé, utilisez la commande suivante pour désactiver l'option kernel.sysrq :
    sos report -k kernel.sysrq=off

Une fois que vous avez fourni les informations demandées, la commande génère le rapport, ce qui peut prendre beaucoup de temps. A la fin du processus, l'écran affiche un message semblable au suivant :

Your sosreport has been generated and saved in:
/var/tmp/sosreport-hostname-case#-datestamp-ID.tar.xz

 Size   20.62MiB
 Owner  root
 sha256 428f7b4118acd2d349bb022946877d853aa0eefbb4d340af3839810dc634b8b7

Please send this file to your support representative.
...
Running plugins. Please wait ...
  Finishing plugins              [Running: unpackaged]
  Finished running plugins
Creating compressed archive...
Your sosreport has been generated and saved in:
        /var/tmp/sosreport-<user_name>-<os>-<date>.tar.xz

 Size   15.72MiB
 Owner  root
 sha256 0fcfef63887d76ebd5b831be5d93d7953b0b9a431d81c9665459fbc8ce4a5f16

Please send this file to your support representative.

Utilisations supplémentaires de la commande sos

Personnalisez la sortie des rapports sos à l'aide des options de commande sos supplémentaires.

La commande sos report peut également être utilisée avec d'autres options. Par exemple, pour répertorier uniquement les plug-ins et options de plug-in disponibles dans le rapport. Vous pouvez également obtenir uniquement les informations propres à une zone de problème et spécifier des options pour personnaliser le rapport généré.

  • Pour répertorier uniquement les plug-ins et options de plug-in disponibles dans le rapport :
    sudo sos report -l

    Les modules d'extension affichés par la commande sont regroupés selon les sections suivantes :

    • Tous les plugins activés
    • Tous les plugins désactivés
    • Options disponibles pour tous les plugins
    • Options de plug-in disponibles

    Reportez-vous à la documentation utilisateur OS pour savoir comment activer ou désactiver des modules d'extension et comment définir des valeurs pour les options de module d'extension.

  • Pour enregistrer uniquement des informations sur Apache et Tomcat et rassembler tous les journaux Apache :
    sudo sos report -o apache,tomcat -k apache.log=on
  • Pour activer toutes les options booléennes pour tous les modules d'extension chargés (à l'exception du module d'extension rpm.rpmva) et vérifier tous les packages, procédez comme suit :
    sudo sos report -a -k rpm.rpmva=off

Masquage d'informations sensibles dans un rapport sos

Masquez les informations dans un rapport sos avant de les fournir au support technique Oracle.

Pour sécuriser les informations sensibles avant d'envoyer le rapport en externe, vous pouvez utiliser la fonctionnalité clean de l'utilitaire sos. Cette fonctionnalité tente de brouiller les informations du rapport considérées comme sensibles, telles que les informations suivantes :

  • Adresses et réseaux IPv4 (les topologies de réseau sont conservées)

  • Adresses MAC

  • Noms d'hôte

  • Noms utilisateur

  • Tous les mots ou expressions que vous spécifiez avec l'option --keyword

Pour utiliser l'utilitaire sos clean sur un rapport généré, saisissez la commande suivante et suivez les invites qui s'affichent :

sudo sos clean /var/tmp/sosreport-hostname-case#-datestamp-ID.tar.xz
...
Users should review any resulting data and/or archives generated or processed by
this utility for remaining sensitive content before being passed to a third
party.

Press ENTER to continue, or CTRL-C to quit.

A la fin du processus, l'écran affiche un message semblable au suivant :

Successfully obfuscated 1 report(s)

A mapping of obfuscated elements is available at
	/var/tmp/sosreport-<host0-2022-08-08-qxbegcn>-private_map

The obfuscated archive is available at
	/var/tmp/sosreport-<host0-2022-08-08-qxbegcn-obfuscated>.tar.xz

	Size	3.62MiB
	Owner	root

Please send the obfuscated archive to your support representative and keep the mapping file private

Le rapport qui a été nettoyé des informations sensibles est également stocké dans /var/tmp. Cependant, le nom du fichier lui-même est révisé. Le nom d'hôte est générique et, surtout, obfuscated est ajouté au nom de fichier afin que vous puissiez identifier la version correcte du rapport.

Attention

Tenez compte des points suivants à propos de l'utilitaire sos clean :

  • La fonctionnalité clean est une méthode au mieux pour identifier puis masquer les informations sensibles. Toutefois, sos clean ne garantit pas que la couverture du processus de masquage est complète dans un système spécifique.

  • Les rapports traités à l'aide de la commande sos clean brouillent certains détails dont un tiers, tel qu'un représentant du support technique, pourrait avoir besoin pour fournir une meilleure aide lors de la résolution des problèmes.

  • Vous devez toujours auditer les archives et les rapports générés par l'utilitaire sos avant d'envoyer l'un de ces fichiers en externe.

Pour nettoyer automatiquement tout rapport sos que vous créez, utilisez la syntaxe de commande suivante lors de la génération d'un rapport :

sudo sos report --clean

Pour plus d'informations, saisissez man sos ou reportez-vous à la documentation utilisateur OS.

Consultation des résultats sosreport

Configurez et examinez l'ensemble des informations de débogage sur Oracle Linux.

La commande sos est configurée automatiquement pour collecter des informations matérielles, des fichiers de configuration système et des données de journal. Vous pouvez activer et désactiver des modules pour répondre aux exigences de protection des données.

Remarque

Les informations sur le module fournies dans ce tableau sont liées à sos 4.8. Pour vérifier les modules que vous avez installés, exécutez la commande sos report. La sortie inclut la version de l'utilitaire sos que vous exécutez.

La désactivation de modules empêche la commande sos de collecter certains détails qui peuvent être nécessaires pour le dépannage avancé, tels que les informations réseau.

Module

Type d'informations

Fichiers inclus

anaconda

Fichiers journaux d'installation

  • /root/install.log

  • /root/install.log.syslog

  • /var/log/anaconda

  • /var/log/anaconda.*

auditd

Fichiers journaux d'audit

  • /etc/audit/auditd.conf

  • /etc/audit/audit.rules

  • /var/log/audit/*

boot

Détails du processus d'initialisation du système

  • /etc/milo.conf

  • /etc/silo.conf

  • /boot/efi/efi/redhat/elilo.conf

  • /etc/yaboot.conf

  • /boot/yaboot.conf

cron

Commandes cron de l'utilisateur root

  • /etc/cron*

  • /etc/crontab

  • /var/log/cron

  • /var/spool/cron

cups

Fichiers journaux de l'imprimante

  • /etc/cups/*.conf

  • /etc/cups/*.types

  • /etc/cups/lpoptions

  • /etc/cups/ppd/*.ppd

  • /var/log/cups/*

date

Données contextuelles

  • /etc/localtime

devicemapper

Détails matériels

filesys

Liste de tous les fichiers utilisés

  • /proc/fs/*

  • /proc/mounts

  • /proc/filesystems

  • /proc/self/mounts

  • /proc/self/mountinfo

  • /proc/self/mountstats

  • /proc/[0-9]*/mountinfo

  • /etc/mtab

  • /etc/fstab

grub2

Configuration du démarrage du noyau et du système

  • /boot/efi/EFI/*/grub.cfg

  • /boot/grub2/grub.cfg

  • /boot/grub2/grubenv

  • /boot/grub/grub.cfg

  • /boot/loader/entries

  • /etc/default/grub

  • /etc/grub2.cfg

  • /etc/grub.d/*

hardware

Détails matériels

  • /proc/interrupts

  • /proc/irq

  • /proc/dma

  • /proc/devices

  • /proc/rtc

  • /var/log/mcelog

  • /sys/class/dmi/id/*

  • /sys/class/drm/*/edid

host

Identification de l'hôte

  • /etc/sos.conf

  • /etc/hostid

kernel

Fichiers journaux système

  • /etc/conf.modules

  • /etc/modules.conf

  • /etc/modprobe.conf

  • /etc/modprobe.d

  • /etc/sysctl.conf

  • /etc/sysctl.d

  • /lib/modules/*/modules.dep

  • /lib/sysctl.d

  • /proc/cmdline

  • /proc/driver

  • /proc/kallsyms

  • /proc/lock*

  • /proc/buddyinfo

  • /proc/misc

  • /proc/modules

  • /proc/slabinfo

  • /proc/softirqs

  • /proc/sys/kernel/random/boot_id

  • /proc/sys/kernel/tainted

  • /proc/timer*

  • /proc/zoneinfo

  • /sys/firmware/acpi/*

  • /sys/kernel/debug/tracing/*

  • /sys/kernel/livepatch/*

  • /sys/module/*/parameters

  • /sys/module/*/initstate

  • /sys/module/*/refcnt

  • /sys/module/*/taint

  • /sys/module/*/version

  • /sys/devices/system/clocksource/*/available_clocksource

  • /sys/devices/system/clocksource/*/current_clocksource

  • /sys/fs/pstore

  • /var/log/dmesg

libraries

Liste des bibliothèques partagées

  • /etc/ld.so.conf

  • /etc/ld.so.conf.d/*

logs

Fichiers journaux système

  • /etc/syslog.conf

  • /etc/rsyslog.conf

  • /etc/rsyslog.d

  • /run/log/journal/*

  • /var/log/auth.log

  • /var/log/auth.log.1

  • /var/log/auth.log.2*

  • /var/log/boot.log

  • /var/log/dist-upgrade

  • /var/log/installer

  • /var/log/journal/*

  • /var/log/kern.log

  • /var/log/kern.log.1

  • /var/log/kern.log.2*

  • /var/log/messages*

  • /var/log/secure*

  • /var/log/syslog

  • /var/log/syslog.1

  • /var/log/syslog.2*

  • /var/log/udev

  • /var/log/unattended-upgrades

lvm2

Détails matériels

memory

Détails matériels

  • /proc/pci

  • /proc/meminfo

  • /proc/vmstat

  • /proc/swaps

  • /proc/slabinfo

  • /proc/pagetypeinfo

  • /proc/vmallocinfo

  • /sys/kernel/mm/ksm

  • /sys/kernel/mm/transparent_hugepage/enabled

networking

Identification du réseau

  • /etc/dnsmasq*

  • /etc/host*

  • /etc/inetd.conf

  • /etc/iproute2

  • /etc/network*

  • /etc/nftables

  • /etc/nftables.conf

  • /etc/nsswitch.conf

  • /etc/resolv.conf

  • /etc/sysconfig/nftables.conf

  • /etc/xinetd.conf

  • /etc/xinetd.d

  • /etc/yp.conf

  • /proc/net/*

  • /sys/class/net/*/device/numa_node

  • /sys/class/net/*/flags

  • /sys/class/net/*/statistics/*

pam

Paramètres de sécurité de connexion

  • /etc/pam.d/*

  • /etc/security

pci

Détails matériels

  • /proc/bus/pci

  • /proc/iomem

  • /proc/ioports

process

Liste de tous les processus en cours d'exécution et détails des processus

  • /proc/sched_debug

  • /proc/stat

  • /proc/[0-9]*/smaps

processor

Détails matériels

  • /proc/cpuinfo

  • /sys/class/cpuid

  • /sys/devices/system/cpu

rpm

Packages logiciels installés

  • /var/lib/rpm/*

  • /var/log/rpmpkgs

sar

Données de ressource et d'utilisation

  • /var/log/sa/*

selinux

Paramètres de sécurité

  • /etc/sestatus.conf

  • /etc/selinux

  • /var/lib/selinux

services

Tous les services système définis

  • /etc/inittab

  • /etc/rc.d/*

  • /etc/rc.local

ssh

Configuration SSH

  • /etc/ssh/ssh_config

  • /etc/ssh/sshd_config

x11

Journaux de l'interface graphique pour le système X Window

  • /etc/X11/*

  • /var/log/Xorg.*.log

  • /var/log/Xorg.*.log.old

  • /var/log/XFree86.*.log

  • /var/log/XFree86.*.log.old

yum

Packages logiciels installés

  • /etc/pki/consumer/cert.pem

  • /etc/pki/entitlement/*.pem

  • /etc/pki/product/*.pem

  • /etc/yum/*

  • /etc/yum.repos.d/*

  • /etc/yum/pluginconf.d/*

  • /var/log/dnf.log