Мне не повезло с hdparm на внешнем жестком диске, смонтированном в USB-корпусе, который я использую для обслуживания мультимедиа с мини-монитором. Р>
Мне пришла в голову идея отсюда: Ссылка
Лучшие результаты исходят от использования uuid диска, который вы можете найти с помощью:
sudo blkid
Следующий метод требует доступа root, но также hdparm. Это использует crontab для чтения случайного блока с диска каждые 5 минут и игнорирует все сообщения. Чтобы убедиться, что у вас есть правильный UUID, проверьте его в командной строке следующим образом (убедитесь, что вы используете нужный UUID, а не этот):
sudo dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM
Вы должны увидеть вывод следующим образом:
1+0 records in
1+0 records out
512 bytes copied, 0.000738308 s, 693 kB/s'
Чтобы подавить это сообщение, которое в конечном итоге может быть написано где-то, потенциально / файловая система (которая находится на SSD в моем случае), ниже - это то, что я использую в корневом каталоге crontab. Вы попадаете туда с
sudo crontab -e
Затем под комментариями:
*/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
Надеюсь, это поможет кому-то еще с подобными проблемами. К сожалению, это все еще записывается в syslog, но есть потенциальные способы подавить это; см. этот пост ServerFault .
[edit] 2017-01-07 09:02:
Я смог подавить эти сообщения, отредактировав /etc/rsyslog.d/50-default.conf, чтобы изменить эту строку:
*.*;auth,authpriv.none -/var/log/syslog
:
*.*;cron,auth,authpriv.none -/var/log/syslog
К сожалению, это подавляет все сообщения cron; Я не мог заставить cron перенаправлять ведение журнала с корневой файловой системы (которая находится на стареющем SSD в моем случае, поэтому я хочу ограничить запись), но поскольку это всего лишь домашний сервер, я, вероятно, не пропускаю много. Определенно не рекомендовать эту стратегию для производственной машины. Р>