Как не дать ядру Linux разбудить вторичный жесткий диск из спящего режима?


11

Есть ли способ проинструктировать ядро ​​(Linux) не активировать вторичный жесткий диск после системного цикла сна / пробуждения? Я спрашиваю, потому что в моем ноутбуке у меня есть SSD в качестве основного диска, содержащего системный корень и дополнительный жесткий диск, где я храню систему резервного копирования и файлы, к которым я время от времени обращаюсь. Поскольку ноутбук обычно проходит много ежедневных циклов сна / пробуждения (я имею в виду приостановку в ОЗУ, а не гибернацию) в течение многих дней, я бы хотел перевести дополнительный жесткий диск в спящий режим вручную и дать указание ядру держать его в спящем режиме во время сна системы. / циклы пробуждения.


1
Если вы хотите отправить жесткий диск вручную, вы можете использовать его hdparm -Y /dev/sdb. Если ваша система обращается к вашему диску, он автоматически снова раскручивается. Вы также можете определить это /etc/hdparm.confс помощью /dev/disk/by-label/DATA4 { spindown_time = 180 } я рекомендую использовать метки для ваших дисков, так как вы никогда не можете полагаться на то, какой диск был обнаружен вашей системой первым. Имейте в виду, что вам нужна более новая версия hdparm (у меня 9.43) для отправки дисков с меткой в ​​спящий режим.
syss

Ответы:


1

Поскольку вы используете только резервный жесткий диск для резервного копирования, я бы посоветовал fstab не подключать диск автоматически и создать сценарий резервного копирования, который монтирует диск, создает резервную копию и снова отключает диск.

Пример строки fstab с опцией noauto:

/dev/sdb1 /media/backup ext4 user,noauto 0 0

bash скрипт для бэкапа будет чем начинаться mount /media/backupи заканчиватьсяumount /media/backup


Это не мешает ядру проверять диск при загрузке.
23

0

Я не думаю, что это возможно. При загрузке диск проверяется BIOS / UEFI, а не только ядром.

Однако я инструктирую систему переводить диск в спящий режим сразу после загрузки системы. Проверьте https://wiki.archlinux.org/index.php/Hdparm#Putting_a_drive_to_sleep_directly_after_boot .

В моем случае у меня есть:

/usr/local/lib/systemd/system/rsleephdd.service

[Unit]
Description="Ranolfi's script to sleep hard drives on boot"

[Service]
Type=oneshot
ExecStart=/usr/bin/hdparm -q -S 120 -Y /dev/sdc

[Install]
WantedBy=multi-user.target

Не имеет значения, монтируется ли диск или его разделы с помощью fstab (или в этом случае crypttab) или нет.

Строго говоря, (править) ядро может игнорировать диск путем его исправления . Это не помешает приводу проснуться, хотя - напротив, патч, с которым я связан, не даст вам получить доступ к диску, вы не сможете получить доступ к файлам даже время от времени, а также не сможете подключить диск к спать.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.