O que é um sosreport e como gerá-lo em Red Hat Enterprise Linux 4.6 e versões posteriores?
Environment
- Red Hat Enterprise Linux 4.6 ou acima
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise MRG
Issue
- O que é um
sosreport
?- Como reunir arquivos de log do sistema, detalhes da configuração e informação de um sistema Red Hat Enterprise Linux para compartilha-lo com o Suporte Técnico de Red Hat para que seja analisado?
- Estou abrindo um chamado com o Suporte Técnico de Red Hat a fim de receber assistência técnica. Quais informações devo compartilhar para uma analise inicial do sistema?
- Como gerar um
sosreport
?- Se o sistema não iniciar ou não funcionar por tempo suficiente para gerar um sosreport, consulte o seguinte documento que detalha métodos alternativos:
- Se o arquivo for muito grande e tem dificuldades para subi-lo, veja o seguinte documento que contem opções para compartilhar arquivos grandes:
- Como instalar o pacote que contem o sosreport
- O que fazer se o sosreport ficar travado
- Efeitos secundários do sosreport
Resolution
Para guests virtuais de Azure
- Siga as instruções em: "Como criar um sosreport de uma máquina virtual de Microsoft Azure e compartilhe o reporte com Red Hat"
O que é um sosreport:
O comando sosreport é uma ferramenta que coleta diagnósticos do sistema e arquivos de configuração no Red Hat Enteprise Linux. Por exemplo, a versão corrente do Kernel, módulos carregados e arquivos de configuração do sistema e serviços. O comando também roda programas externos para obter mais informações e armazena o resultado em um arquivo.
Como executar um sosreport:
Uma vez que o pacote sos
tenha finalizado instalado, execute o seguinte comando para rodar o sosreport:
Nota: sosreport precisa permissão de root para ser executado.
# sosreport
Este comando normalmente finalizará em alguns minutos no Red Hat Enterprise Linux 6. Em versões mais antigas e também dependendo das configurações locais, o sosreport poderá demorar um pouco mais para finalizar. Se você tiver qualquer dúvida com relação ao tempo para gerar o sosreport, contate o suporte Red Hat para mais detalhes.
Assim que o comando sosreport completar, será gerado um arquivo compactado no diretório /tmp. Diferentes versões usam diferentes tipos de compressão ('gz', 'bz2', or 'xz'). O resultado final deverá ser enviado para nosso suporte, normalmente anexo a um caso de suporte.
O tamanho do arquivo final depende da configuração atual do sistema e qualquer outra opção adicional ao comando sosreport (por exemplo, especificar a opção "all_logs
" para coletar todos os logs do syslog poderá aumentar significantemente o tamanho do arquivo final).
Caso o sosreport coletado seja muito grande para enviar pelo Portal do Cliente, o mesmo poderá ser enviado para nosso Red Hat FTP em dropbox.redhat.com.
Para evitar a necessidade de entrar detalhes sobre usuário e conta interativamente, você poderá usar o comando sosreport` no modo 'batch' usando a opção --batch. Neste caso as informações sobre o usuário serão obtidas do arquivo de configuração RHN.
# sosreport --batch
O comando sosreport tem uma estrutura modular que permite o usuário ativar e desativar módulos pela linha de comando. Para listar os módulos disponíveis (plug-ins) use a opção '-l':
# sosreport -l
Para desativar um módulo, informe o nome após passar a opção '-n' (--skip-plugins). Por exemplo, para desativar os módulos 'kvm' e 'amd':
# sosreport -n kvm,amd
Alguns módulos podem prover opções adicionais. Por exemplo, nas instalações do Red Hat Enterprise Linux 4 e 5, o módulo rpm coleta a saída do "rpm -Va" por padrão, como esta informação algumas vezes pode levar tempo para ser coletada podemos desativá-la via:
# sosreport -k rpm.rpmva=off
Gerar sosreport no RHN Proxy Server
Para coletar mais detalhes do RHN Proxy Server, rode o seguinte comando:
# sosreport -o rhn
Nota:
1. Red Hat Enterprise Linux 4.5 e anterior incluem a versão sysreport
para coletar detalhes do sistema e serviços. Se possível, atualize seu sistema com o pacote sos
incluído nas versões mais recentes. Apesar disso, a saída do comando sysreport
ainda continua válida para envio ao suporte da Red Hat. Para mais detalhes veja o seguinte artigo (em inglês) What is a sysreport and how to run it in Red Hat Enterprise Linux?
2. O pacote sos nas versões Red Hat Enterprise Linux 4 e 5 também inclui a versão sysreport do comando. Abaixo segue um link simbólico para compatibilidade:
# ls -l /usr/sbin/sysreport
lrwxrwxrwx 1 root root 19 Nov 3 2008 /usr/sbin/sysreport -> /usr/sbin/sosreport
Para usar a versão original do sysreport script (legacy), execute o seguinte:
# sysreport.legacy
Esta ferramenta irá rever e coletar informações detalhadas sobre o hardware e a configuração do seu sistema Red Hat Linux.
Esta informação será usada para diagnosticar problemas com seu sistema e será considerada informação confidencial.
A Red Hat usará esta informação APENAS para fins de diagnóstico.
Instalar sosreport:
Para executar o comando sosreport
, o pacote sos
deve estar instalado. O pacote é parte do grupo predeterminado e é instalado automaticamente na maioria dos sistemas.
Se por alguma razão o pacote não está presente, deve ser adicionado manualmente seguindo estes passos:
Red Hat Enterprise Linux 5 e versões acima
Se o sistema estiver registrado na RHN, use o comando yum
:
# yum install sos
Se o sistema não estiver registrado na RHN, o pacote sos
pode ser descarregado desde o site web da RHN ou desde os CDs ou DVDs de instalação. O comando rpm pode ser utilizado para instalar o pacote em qualquer versão de Red Hat Enterprise Linux:
# rpm -Uvh sos-<version>.noarch.rpm
Red Hat Enterprise Linux 4 Update 6 ou acima
Se o sistema estiver registrado com Red Hat Network (RHN), sos
pode ser instalado usando o comando up2date
:
# up2date sos
O que fazer caso o sosreport travar?
-
Se estiver rodando RHEL5, faça um background do processo do sosreport (ctrl-z) antes de matá-lo a través de PID. Caso contrário, você vai encontrar o problema documentado na [KCS#55275] (https://access.redhat.com/solutions/55275)
-
Caso a falha seja devido a mensagem "No space left on device":
- Verifique se o sistema de arquivos /tmp possui espaço suficiente:
# df -h /tmp
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_ren-lv_root
50G 49G 1M 99% /
- Libere espaço adicional ou aponte o sosreport para um diretório diferente, por exemplo:
# soserport --tmp-dir /caminho/para/outro/diretorio/
- O sosreport pode ter travado por um plugin específico
Tente determinar com qual plugin fica travado.
- Aumente a verbosidade do sosreport -vvvv
- Faça um strace
Uma vez que determine qual é o plugin que trava, exclua-o
Ingresse o seguinte comando para mostrar todos os plugins:
sosreport -l
e.g. Para excluir o plugin de filesys
sosreport -n filesys
-
Caso contrário, em vez de recolher a falha no sosreport, um relatório manual pode ser criado executando o seguinte script. Observe que isso só será uma parte do que é coletado em um sosreport standard.
#!/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 #este comando pode demorar um pouco para rodar 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/message* var/log -R cd /tmp tar -cvjf ${host}_hungsos.tar.bz2 $sos_dir
Gerar um sosreport desde modo resgate
Se o sistema não iniciar, o soreport pode ser coletado desde um entorno de resgate com o propósito de resolução.
Veja: How to generate sosreport from the rescue environment?
Gerar um sosreport para uma locação alternativa
Se houver restrições em /tmp, é possível forçar o sosreport para uma locação alternativa.
Veja: How do I make sosreport write to an alternative location?
Gerar um sosreport sosreport manualmente
Se tudo falhar e não é possível gerar um sosreport, a seguinte solução indica como gerar os arquivos manualmente:
Veja: Sosreport fails. What data should I provide in its place?
Side effects of sosreport:
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.
Comments