Можно ли (7 дней) запланировать время сна жесткого диска?

9

Я ищу способ составления расписания, когда внешний жесткий диск, подключенный к моему Linux (Debian 9), переходит в режим сна (перестает вращаться).

Чтобы поместить это в содержание: у меня есть окно Linux, которое работает как мультимедийный сервер. Если сделан вызов для извлечения контента, который находится на внешнем жестком диске, то часто для того, чтобы жесткий диск проснулся и начал вращаться, часто требуется 15-30 секунд, что а) расстраивает и б) иногда вызывает таймауты с мультимедийным сервером. Я мог бы настроить жесткий диск на бодрствование и вращение 24/7, но это кажется пустой тратой, когда большую часть времени я использую мультимедийный сервер только дома.

Существует ли какой-либо программный инструмент или команда, которую я мог бы использовать для установки еженедельного расписания, когда вращается жесткий диск - например, понедельник-пятница: вращение между 17:00 и 23:00; суббота-воскресенье: вращение между 15:00 и 23:00. ИНОСТРАННОЕ ВРАЩЕНИЕ по требованию и сон согласно системный таймер

Алекс Уорд
источник
1
Таким образом, вы сокращаете время работы диска, но запускаете / останавливаете его - 40 раз в неделю. Запуск / остановка диска не обходится без затрат. Если электричество не очень дорого там, где вы находитесь, оно может не стоить усилий.
Вальтинатор
1
@waltinator Современные жесткие диски предназначены для обработки сотен тысяч циклов пуск-стоп, поэтому один цикл в день абсолютно не вреден. Буквально тысячи лет потребуется, чтобы убить жесткий диск из-за чрезмерного количества замедлений с такой скоростью. Во всяком случае, я был бы больше обеспокоен часами бесполезного вращения.
Дмитрий Григорьев
@waltinator Справедливый аргумент, но суть в том, что это фактически приведет к чистому УМЕНЬШЕНИЮ при повышении / понижении скорости, так как в данный момент оно вращается вверх и вниз более или менее каждый раз, когда запрашивается контент с мультимедийного сервера, особенно во время раз я хочу составить расписание. Как вы говорите, каждый раз, когда двигатель вращается, он, вероятно, будет стоить больше энергии, поэтому, если он будет вращаться по вечерам, это может привести к снижению потребления энергии.
Алекс Уорд

Ответы:

17

Cronjob позволил бы это:

# At 11pm every day, enable sleep after 30s
0 23 * * * /sbin/hdparm -S6 /dev/disk/by-id/...

# At 5pm on weekdays, disable sleeping
0 17 * * 1-5 /sbin/hdparm -S0 /dev/disk/by-id/...

# At 3pm on the weekend, disable sleeping
0 15 * * 0,6 /sbin/hdparm -S0 /dev/disk/by-id/...
Стивен Китт
источник