Maneira simples de manter ativo o disco rígido na atividade?

1

Como o hdparm não funciona para o meu drive externo USB (ele gira para o início), eu gostaria de simular manualmente o controle standby por um script simples com a seguinte ideia:

  • monitora E / S para o disco
  • quando, exceto pelo próprio script, não há E / S de outros processos por algum tempo, produza E / S fictícia para manter o disco ativo
    • após algum tempo, deixe a unidade girar para baixo
    • a E / S fictícia deveria, na melhor das hipóteses, ser nada do que realmente lê ou grava em disco (e, portanto, move a mecânica produzindo desgaste), mas talvez leia algum status, etc.

Eu não tenho experiência suficiente em scripts bash para saber quais comandos podem ser usados. Alguma sugestão? O sistema é o Arch Linux.

    
por user905686 02.04.2015 / 16:37

2 respostas

0

O Google deve receber o crédito por este:

link

#!/bin/bash
for ((N=0; N<10; N++))
do
        dd if=gigabytefile of=/dev/null skip=$((RANDOM % 1024)) bs=$((1024*1024)) count=1
done
    
por 02.04.2015 / 22:16
0

(estou ciente de que esta pergunta é mais de 2 anos de idade, no entanto, o problema ainda é real)

Estou usando o seguinte código para a minha unidade que não respeita as configurações do smartctl:

#!/bin/bash
while :
do
        date +%s > /second_drive/keepalive_linux.txt
        sync
        sleep 2
done

Para que seja executado na inicialização, usei:

EDITOR=nano crontab -e

e adicionado:

@reboot bash /path/to/script.sh

(a unidade é formatada com NTFS, a propósito)

É o mesmo comportamento que KeepAliveHD for Windows possui.

Embora isso possa ser feito de uma maneira melhor (como o OP descrito), é melhor do que nada por enquanto.

    
por 25.08.2017 / 02:44