como saber o tempo de execução de uma tarefa em segundo plano no Linux

como saber o tempo de execução de uma tarefa em segundo plano no Linux

Estou trabalhando com ataque de software no Linux. Quando inicio a recuperação de um array raid após uma falha no disco, esta tarefa acontece em segundo plano. /proc/mdstatdeveria mostrar o tempo estimado de recuperação, mas não está correto. No meu caso /proc/mdstatestava apresentando estimativa de 15 horas mas a recuperação foi feita em torno de 10 horas. Existe uma maneira de saber o tempo exato de execução do daemon de recuperação?

Responder1

Você pode executar um script simples em segundo plano que verifica o "status de reconstrução" e descarta o tempo de espera:

tick=$(date +%s)
while [ -n "$(cat /proc/mdstat | grep 'rebuilding')" ]; do
    sleep 10
done
tock=$(date +%s)
echo $(($tock-$tick))

mdadmtambém tem uma --monitoropção que enviará email quando eventos forem gerados. Nunca o usei, mas pode valer a pena dar uma olhada, já que uma reconstrução completa pode ser qualificada como um evento digno de nota.

informação relacionada