Por que o dumpe2fs é chamado sem interação do usuário?

4

Eu postei uma pergunta aqui porque meus HDs continuam girando sem motivo aparente e queriam descobrir qual processo faz com que eles aconteçam.

Nos comentários a essa pergunta, foi-me dito para usar iosnoop que (sem argumentos ou switches) gerou algumas centenas de linhas nos poucos minutos que levou um dos HDDs para gerar aleatoriamente. Depois de copiar a saída e dizer ao Emacs para remover todas as linhas com o número do dispositivo correspondente ao cartão SD (sobre acessos aos quais não me importo), fico com isto:

COMM         PID    TYPE DEV      BLOCK        BYTES     LATms
dumpe2fs     19467  R    8,0      272648       4096      23.25
^C
Ending tracing...

Como só resta 1 linha de dados, parece razoável supor que o culpado foi identificado. Mas por que dumpe2fs é chamado aleatoriamente? Mais importante que isso: como faço para parar, de preferência sem quebrar coisas (o que a solução suja de renomear o arquivo correspondente pode fazer)?

A execução manual de sudo dumpe2fs /dev/sda1 faz com que o HDD correspondente seja acelerado. O comando, no entanto, já retorna sua saída e termina antes que o HDD seja girado (sem o atraso de 7 segundos que eu experimento ao acessar arquivos enquanto os HDDs são desativados).

Eu uso o Ubuntu Mate 16.04.

    
por UTF-8 04.12.2017 / 16:28

1 resposta

4

Para descobrir por que dumpe2fs está sendo executado, você pode substituí-lo por um registrador. Renomeie /sbin/dumpe2fs para /sbin/dumpe2fs.real e crie um script chamado /sbin/dumpe2fs contendo

#!/bin/sh
echo dumpe2fs "$@" >> /var/log/dumpe2fs-search.log
date >> /var/log/dumpe2fs-search.log
pstree >> /var/log/dumpe2fs-search.log
exec dumpe2fs.real "$@"

Em seguida, examine o arquivo de log para determinar o que está sendo executado em dumpe2fs ...

    
por 04.12.2017 / 17:21