Como usar o comando linux strace?

Como usar o comando linux strace?

O "strace”É um utilitário de linha de comando Linux que é uma ferramenta útil e poderosa para capturar, monitorar e solucionar problemas dos programas em um sistema. Ele registra e intercepta as chamadas do sistema, o que é bastante útil quando algum programa trava e não é executado conforme o esperado.

O "strace”A ferramenta de comando imprime como o programa opera e se comunica com o sistema. Com isso, o usuário pode decifrar facilmente onde os erros estão ocorrendo enquanto carrega o programa.

O "LTRACE”Comando é um utilitário de sistema Unix que é bastante semelhante ao“strace”Comando, a diferença é que ele captura as chamadas dinâmicas de bibliotecas compartilhadas. A ferramenta de comando "ltrace" não é uma ferramenta útil para rastrear bibliotecas estaticamente vinculadas.

A sintaxe do “strace”O comando é:

Strace [Opções…] [Comando]

Como instalar o comando “strace”?

O "strace”É uma ferramenta embutida nos sistemas Linux, mas se não for pré-instalada na máquina, digite o comando fornecido no terminal:

$ sudo apt install strace

Como usar as opções de comando “strace”?

Executar as opções fornecidas para verificar o funcionamento de “strace”Comando:

Chamadas do sistema de rastreamento

Para rastrear a lista de todas as chamadas do sistema do sistema, execute o “strace”Comando com o“df”Comando em um terminal:

$ strace df -h

(A opção "-h" exibirá a saída em formato legível pelo homem)

Ponteiro de instrução durante as chamadas do sistema

Para exibir o ponteiro de instrução enquanto cada chamada do sistema do programa está listada no terminal, use o comando fornecido:

$ strace -i df -h

Tempo de saída de rastreamento

Para exibir a hora do relógio do dia para a saída de rastreamento em cada linha, digite o “-t”Opção com o comando fornecido:

$ sudo strace -t df -h

Tempo consumido na chamada do sistema

Execute o “-T”Opção na linha de comando para exibir o tempo

consumido de cada chamada de sistema, que inclui seu horário inicial e de término:

$ strace -t df -h

Rastrear chamadas específicas do sistema

Nas seções acima, vimos as listas para rastrear chamadas do sistema, mas se você quiser rastrear chamadas específicas do sistema, faça -o através do “-e”Opção usando as seguintes maneiras:

Supunha -se que você gostaria de rastrear as chamadas do sistema de "Read", o comando seria:

$ sudo strace -e rastreio = leia df -h

Aqui, Trace é denominado como “qualificador" e a "ler”É o seu valor.

Para rastrear a chamada do sistema de valor de qualificador “sinal”, Digite o comando:

$ sudo strace -e rastrear = sinal df -h

Para rastrear as chamadas do sistema de valor qualificador “rede", tipo:

$ sudo strace -e rastrear = rede df -h

Para rastrear todas as chamadas do sistema que incluem “memória", tipo:

$ strace -e rastrear = memória df -h

(OBSERVAÇÃO: Algumas das ações precisamsudo”Privilégios para funcionar enquanto alguns podem ser feitos sem ele).

Conclusão

O "strace”Comando é um utilitário UNIX usado para rastrear chamadas e bibliotecas do sistema. Através de "strace”Comando, você pode monitorar e capturar as chamadas do sistema para solucionar os problemas do programa. O "LTRACE”O comando é semelhante ao“strace”Comando, mas não captura as bibliotecas estaticamente vinculadas.