LINUX.ORG.RU

hdparm - можно ли ею запретить выключение hdd?

 


0

2

Подскажите с ситуацией. Постоянно выключаются диски, что очень мешает при обращении к ним или к папке /media/username/ - жать, пока все (4-5 кроме системного hdd) не раскрутят свои шпиндели. Да и просто жалко сокращать срок жизни дисков постоянными раскрутками. Пусть выключаются когда этого я сам захочу.

Отсюда вопросы:

а) Как посмотреть время до выключения и изменить его? б) Как вообще запретить выключать все или НЕКОТОРЫЕ hdd?

Ubuntu 14.04.LTS Диски: http://storage7.static.itmages.ru/i/16/0210/h_1455139477_2141180_651e89a837.jpg

Как это сделать с помощью hdparm (или с помощью чего другого) сам не очень понял...

man hdparm

Я на ноуте свой WD насилую так

# hdparm -B 254 /dev/sda

Это выставление максимального (или бесконечного) таймаута парковки винта. Чтобы прописать какое-то меньшее значение надо поколдовать

kma21 ★★★★
()
Последнее исправление: kma21 (всего исправлений: 1)

hdparm -B 254 /dev/sdX

Только значение после опции -B часто зависит от модели диска и его производителя. На моих 2х1TB WD Caviar Blue и 2х SSD от Crucial вышеприведенная команда работает на ура.

anonymous
()
hdparm -B 255 /dev/sdX

отключает энергосбережение полностью

Deleted
()

Если wd green, выполни hdparm -J 0 --please-destroy-my-drive диск (опция так страшно называется, потому что это реализация нестандартных команд из wdidle).

anonymous
()

Обычно диски не настроены на остановку при неактивности (хотя это можно сделать через hdparm или smartctl). При этом последние WD из коробки настроены на парковку головок через несколько секунд неактивности, но это не остановка шпинделя, а гораздо быстрее.

legolegs ★★★★★
()

Еще может помочь опция -S 0 для hdparm. Этот ключ как раз означает таймаут до остановки шпинделя, 0 отключает эту фичу.

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

Уважаемые пингвины, благодарю вас за ответы. Поэкспериментировал.

man hdparm я насиловал, но аглицкого не знаю, всё ниасилил, печаль. Есть ли перевод этого мана на русский? Видел ставят $ как индикатор начала комстроки. А зачем перед командой ставите комментирование # ? Это забота о пользователях, изучающих команды методом «ввести не глядя, и посмотреть результат»?

Я попробовал выставить для своих дисков:

  • sudo hdparm -B 255 /dev/sdb
    /dev/sdb:
     setting Advanced Power Management level to disabled
     HDIO_DRIVE_CMD failed: Input/output error
     APM_level	= not supported
    
  • sudo hdparm -B 255 /dev/sdc
    /dev/sdc:
     setting Advanced Power Management level to disabled
     APM_level	= off
  • sudo hdparm -B 255 /dev/sdd
     setting Advanced Power Management level to disabled
    SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 0a 00 00
     00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 0a 00 00
     00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     APM_level	= not supported
  • sudo hdparm -B 255 /dev/sdg /dev/sdg:
     setting Advanced Power Management level to disabled
    

/dev/sdd подключён через usb контейнер. /dev/sdg подключён через usb адаптер. Причём WD Green 1TB и дополнительного страшного параметра «hdparm -J 0 --please-destroy-my-drive диск» не потребовал. А что такое wdidle?

Вроде бы никто за эти дни теста не засыпал. Но при перезагрузке мне придется заново выполнять эти команды? Или они записались в настройки винтов и в других осях если подключить тоже (ня!) не будут засыпать?

Чему равен hdparm -B 254 ? это 254 секунды, или в чем выражено число 254? Как посмотреть текущее значение? sudo hdparm -i /dev/sdx — много инфы выводит, не могу найти там пункт нужный.

$ sudo hdparm  -i  /dev/sda

/dev/sda:

 Model=WDC WD5000BPKT-00PK4T0, FwRev=01.01A01, SerialNo=WD-WX71E91EKSP5
 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50
 BuffType=unknown, BuffSize=16384kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=976773168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio3 pio4 
 DMA modes:  mdma0 mdma1 mdma2 
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 AdvancedPM=yes: unknown setting WriteCache=enabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1,2,3,4,5,6,7

 * signifies the current active mode

Таймаут до остановки шпинделя -S 0, тоже, в каких это еденицах, если задать инное число?

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

1) $ означает выполнение команды от обычного пользователя, # — от рута, только и всего. Желательно перед выполнением нагугленных команд поинтересоваться, что означают указанные там опции.

2) Можно установить страницы манов на языке, отличном от английского. Возможно, у тебя уже они есть. Проверь, набрав LC_ALL=ru_RU.UTF-8 man man. Если есть текст на русском, то замени последний man на то, что тебе нужно посмотреть.

3) На вопросы про параметры опций -B и -S полный ответ даст мануал на русском.

4) Настройки не постоянны, сбросятся при переподключении/перезагрузке. Либо ручками каждый раз делай, либо пропиши в правила udev.

5) Очень рекомендую подучить английский до технического уровня.

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

1) Проверил на примере apt-get update. $apt-get update — да, выполняется как от обычного юзера. #apt-get update — нет эффекта на экране. #gparted — Он графическое окно выдает, если запустился бы, точно не пропустил. Эффекта нет. #х!й — тоже без эффекта. Вот я и думал, что это комментарий. linux ubuntu 14.04.lts

2) На русском: LC_ALL=ru_RU.UTF-8 man man нет, мана на русском нет: LC_ALL=ru_RU.UTF-8 man hdparm

3) =(

4) А как это сделать грамотно? С привязкой не к sdx а к серийнику винта? (они иногда меняются) 5) почти. но сложный текст ускользает. Я вообще японский учу, его бы не забыть)

6) Перезагрузился, да все по-брежнему. А как ещё сделать, чтобы у меня самомонтировались не смонтированные, которые самомунтируются при обращении только? Вот на картинке, R`lyeh и выше, пока не ткнешь или не обратишься из софта, несмонтирован. Монтировать через mount в другие папки бы не хотелось.

http://storage9.static.itmages.ru/i/16/0212/h_1455285092_3872324_d0bd3c9723.png

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

В догонку к 1) Alt+Shift+3 — закоментировать строку в терминале и нажать enter Как видно из примера, в качестве символа комментария используется именно # (решётка)

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

Он имеет в виду command prompt(PS1), вводить его не нужно.

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