LINUX.ORG.RU

PUIS, hdparm и чтение таблицы разделов


0

1

Хочу сделать так, чтобы винт с редко используемой информацией включался только при необходимости. Благо есть такая фича у современных HDD - PUIS (Power Up In Stand-by). Если она активна, то включении винт не раскручивается, а сразу попадает в режим ожидания. Активируется она программного или перемычкой.

Первый вопрос - знакомым с PUIS: почему в мане hdparm про опцию "-s" написано следующее: «Enable/disable the power-on in standby feature, if supported by the drive. VERY DANGEROUS. Do not use unless you are absolutely certain that both the system BIOS (or firmware) and the operating system kernel (Linux >= 2.6.22) support probing for drives that use this feature.»?
Зачем нужна поддержка биоса - линукс разве не выведет винт из stand-by самостоятельно при необходимости?
В чем мега-опасность - разве ее нельзя на худой конец обратно отключить, даже если винт не раскручен? Или имеется ввиду всего лишь невоможность загрузки с системного винта, если включить PUIS при отсутствии поддержки в BIOS?

Второй вопрос - а как в Linux реализовано чтение таблицы разделов при старте системы? Нельзя ли таблицу несистемного винта как-то закешировать на системном, чтобы первый не раскручивался при загрузке?

★★

Я поставил PUIS перемычку и винт не раскручивается до того как его начинает тормошить udev при загрузке. udev дожидается его готовности и только тогда система грузится дальше. Вопрос в том, как заставить udev не трогать его до того, как я ему дам соответствующую команду.

Винда при загрузке этот винт не трогает, она его вообще никак не видит, если он не был ракручен линуксом.

anonymous
()
Ответ на: комментарий от anonymous

винт не раскручивается до того как его начинает тормошить udev

Насколько я понимаю, «тормошение» заключается в считывании таблицы разделов. Надо разобраться, какая именно подсистема это делает и как ей подсунуть закэшированную.

shatsky ★★
() автор топика

Второй вопрос - а как в Linux реализовано чтение таблицы разделов при старте системы?

Этим занимается ядро, AFAIK.

GotF ★★★★★
()
Ответ на: комментарий от shatsky

Из вероятно соседствующих с искомой - libata, sg, block, vfs.

Это точно не должно быть в vfs и sg. Вряд ли в libata. Я уверен, что в block. Только что это меняет? Разве что отключить поддержку всех типов таблиц.

GotF ★★★★★
()
Ответ на: комментарий от GotF

Вот что я нашел в dmesg (WDC - диск с перемычкой PUIS):

(DVD привод тут ещё затисался)

[ 5.720020] ata4.01: qc timeout (cmd 0xef)

[ 5.720025] ata4.01: failed to IDENTIFY (SPINUP failed, err_mask=0x4)

[ 8.926783] ata4.00: ATAPI: HL-DT-ST DVDRAM GH22NS40, NL01, max UDMA/100

[ 8.933445] ata4.01: ATA-8: WDC WD3200AAJS-00VWA0, 12.01B02, max UDMA/133

[ 8.933449] ata4.01: 625142448 sectors, multi 0: LBA48 NCQ (depth 0/32)

[ 8.946783] ata4.00: configured for UDMA/100

[ 8.961389] ata4.01: configured for UDMA/133

Можно ли по слову ata4.01 запретить раскрутку диска? Т.Е. вообще временно игнорировать его.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.