Как можно отключить некоторые жесткие диски в системе?

У меня есть самосборный сервер "типа NAS", работающий на Windows Server, и я планирую сменить операционную систему. В данном сервере установлено 6 HDD, из которых половина используется для бэкапов, которые проводятся не чаще одного-двух раз в месяц. Поскольку это происходит довольно редко, я хотел бы программно отключать неиспользуемые бэкапные диски в периоды бездействия, чтобы уменьшить уровень шума, который они создают. 

Каковы варианты реализации этой функции и в какой операционной системе это будет проще всего сделать? Я ранее использовал OpenMediaVault (OMV) версии 4, где функция остановки шпинделей работала только на определенных дисках, но в последней версии (7) я столкнулся с тем, что диски не отключаются. Можете подсказать, как это исправить и возможно ли это вообще? 

P.S. Я осведомлен о потенциальном вреде от частого включения и отключения HDD, поэтому прошу не упоминать это в ответах.
  • 29 января 2025 г. 20:44
Ответы на вопрос 2
Для реализации отключения неиспользуемых жестких дисков в системе NAS на базе Windows Server и OpenMediaVault, можно рассмотреть несколько подходов.

### Варианты для Windows Server:

1. **Управление через Diskpart**: 
   Вы можете использовать утилиту `diskpart` для отключения дисков вручную или создавать скрипты на PowerShell для автоматизации процесса. Для отключения диска можно использовать команды, подобные следующим:

   ```powershell
   Get-Disk | Where-Object { $_.Number -eq <номер_диска> } | Set-Disk -IsOffline $true
   ```

   Чтобы снова включить диск, достаточно поменять `$true` на `$false`.

2. **Использование утилит третьих сторон**: 
   Программы типа CrystalDiskInfo могут позволить управлять режимами питания, в том числе отключением дисков на время простоя.

3. **Планировщик заданий**: 
   Вы можете настроить задачи в Планировщике Windows для автоматизации включения и отключения дисков.

### Варианты для OpenMediaVault (OMV):

1. **Настройки управления питанием**:
   OMV, как вы правильно заметили, имеет встроенные функции управления батареей, но они могут работать не для всех конфигураций. Если у вас возникли проблемы с отключением дисков в OMV 7, вы можете попробовать следующее:

   - Проверьте настройки в разделе `Система -> Управление дисками` и убедитесь, что для ваших дисков активированы параметры для управления питанием.
   - Убедитесь, что диски не находятся под нагрузкой (нет активных операций чтения/записи), чтобы система могла их отключить.

2. **Использование скриптов**:
   Если стандартные функции OMV вас не устраивают, рассмотрите возможность создания скриптов:
   - Вы можете использовать команды `hdparm` или `udisksctl` для управления питанием дисков через SSH, создавая задания cron для автоматизации.

   Например:

   ```bash
   udisksctl unmount -b /dev/sdX
   udisksctl power-off -b /dev/sdX
   ```

   Замените `/dev/sdX` на соответствующий диск.

### Рекомендации:

- **Выбор системы**: Если вам важна простота и гибкость настройки, то возможно стоит рассмотреть более продвинутую версию Linux (как Ubuntu Server или другой дистрибутив с поддержкой систем хранения) для сборки NAS. В них больше возможностей для кастомизации работы с жесткими дисками.

- **Мониторинг состояния дисков**: Убедитесь, что у вас есть подходящий мониторинг состояния, чтобы избежать потенциальных проблем с неожиданным отключением дисков, особенно если вы делаете это через скрипты.

- **Планирование задач с учетом нагрузки**: Настройка задач на автоматическое отключение/включение дисков лучше всего делать в периоды, когда система не используется активно.

Если вы сталкиваетесь с конкретными ошибками в OMV или другими проблемами, не стесняйтесь уточнить их, возможно, есть решение для вашего случая!
На OpenWRT, которую использую как NAS, есть пакет hd-idle. Можно настраивать через веб.
Похожие вопросы