Отключение неиспользуемых жестких дисков

1

У меня есть компьютер с сервером Ubuntu 12.10 в качестве собственного домашнего сервера. Есть несколько жестких дисков, подключенных к нему через USB. Сервер работает 24-7, и мне было интересно, есть ли какой-либо способ или какие-либо команды, которые можно использовать, чтобы отключить диски, если они не используются, и после отправки запроса на чтение / запись для диска, диски будут автоматически снова включили для обработки запроса?

Поэтому я в основном хочу скрипт, который может делать следующее (если это не копает вглубь ядра Linux):

  1. Если запрос чтения / записи на диск X не был отправлен в течение y минут, поверните X и запомните, что X был подключен.

  2. Если отправлен запрос на чтение / запись, предназначенный для X, включите X и обработайте запрос.

  3. Начните с 1 снова.

Некоторые из этих накопителей содержат данные, которые я иногда не использую в течение нескольких недель / месяцев, поэтому я не хочу, чтобы их срок службы сокращался, если я просто простаиваю. И я не хочу включать / выключать диски каждый раз, когда я их использую.

goocreations
источник
1
Вы могли бы рассмотреть программу, как spindown.
Дэн Д.

Ответы:

3

Я думаю, что вы ищете утилиту hdparm, которая позволяет вам играть с параметрами диска.

Различные диски принимают разные параметры, и разные диски имеют разные уровни поддержки, например -J wukk устанавливает время простоя дисков WD Green. (но вы, вероятно, хотите что-то вроде -S или, по-видимому, -s, но man hdparm обеспечит низкий уровень.

davidgo
источник
0

Если вам нужен такой точный контроль, вам, вероятно, придется отключить управление питанием дисков и сделать это самостоятельно: поддерживать работающую программу (или запускать ее каждые x минут), которая просматривает данные доступа к дискам, например, в / sys / block / SDA / sda9 / стат. Если ваш сценарий обнаруживает, что в течение вашего порогового периода не было обращений, вы выключаете соответствующий диск (если это еще не сделано).

Хауке Лагинг
источник