Eu não tive sorte com hdparm em um disco rígido externo montado em um gabinete USB, que eu uso para servir mídia com minidlna.
Me deparei com uma ideia daqui: link
Os melhores resultados vêm do uso do uuid do disco, que você pode encontrar com:
sudo blkid
O método a seguir requer acesso root, mas o hdparm também. Isso usa crontab para ler um bloco aleatório da unidade a cada 5 minutos e ignora todas as mensagens. Para ter certeza de que você tem o UUID correto, teste-o na linha de comando assim (certifique-se de usar o UUID desejado, não este):
sudo dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM
Você deve ver a saída assim:
1+0 records in
1+0 records out
512 bytes copied, 0.000738308 s, 693 kB/s'
Para suprimir esta mensagem, que pode acabar sendo escrita em algum lugar, potencialmente o / filesystem (que está em um SSD no meu caso), abaixo está o que eu estou usando no crontab raiz. Você chega lá com
sudo crontab -e
Em seguida, sob os comentários:
*/5 * * * * bash -c 'dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM' >/dev/null 2>&1
Espero que isso ajude alguém com problemas semelhantes. Infelizmente, isso ainda é gravado no syslog, mas existem maneiras de suprimir isso; veja esta postagem ServerFault .
[edit] 2017-01-07 09:02:
Consegui suprimir essas mensagens editando o /etc/rsyslog.d/50-default.conf para alterar essa linha:
*.*;auth,authpriv.none -/var/log/syslog
para isso:
*.*;cron,auth,authpriv.none -/var/log/syslog
Infelizmente, isso suprime todas as mensagens do cron; Não consegui fazer com que o cron redirecionasse o log do sistema de arquivos raiz (que está em um SSD antigo no meu caso, portanto, quero limitar as gravações), mas como isso é apenas um servidor doméstico, provavelmente não estou perdendo muito. Definitivamente, não recomendaria essa estratégia para uma máquina de produção.