The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Отключение HPA или решение проблемы определения 1Тб диска
Исходные данные:
   Motherboard: GA-965P-DS3 rev. 1.0
   Motherboard BIOS: BIOS F1
   HDD: Samsung HD103UJ (1 Терабайт)
   HDD: Western Digital WD10EACS (1 Терабайт)
   OS: Gentoo Linux
   hdparm v8.6

Проблема:

Недавно я приобрёл два SATA HDD размером в 1000Мб (1Тб): Samsung HD103UJ и
Western Digital WD10EACS.
Я подключил их оба к материнке и к моему удивлению в BIOS один из них (Samsung)
определился как 32Мб.
Манипуляции со шлейфами (портами SATA) биосом, операционкой и другие танцы с бубном не помогали. 
Samsung был реанимирован с помощью HDD Capacity Restore под Windows у товарища. 
Дома диск определился правильно. Предполагая, что проблема была с Samsung'ом я продолжил 
манипуляции с дисками дома. К моему удивлению я через некоторое время обнаружил, 
что Western Digital тоже стал определяться как 32Мб.


Причина:

Причина в том, что материнская плата (BIOS) резервировала некоторое место под свои нужды. 
Это зовется HPA (Host Protected Area). После данной манипуляции по каким-то причинам диск 
начинал определяться неправильно. Насколько мне известно, такое происходит только 
с терабайтными жесткими дисками, если объем меньше, то активизация HPA не повлияет 
на определение размера BIOS'ом. Активизация данной функции (области) происходила при подключении
 к определённому SATA порту. На моей материнке есть два типа SATA портов: т. н. SATA-II 0/1/2/3 
(желтые, от контроллера Intel ICH8) и т. н. GSATA-II 0/1 (красные, от контроллера J-Micron). 
Данный эффект происходил на порту SATA-II 0 (возможно и на других портах SATA-II; по крайней
 мере HDD на GSATA-II 0/1 не затрагивались). Соответственно в первом случае я подключал
 Samsung к SATA-II, а WD к GSATA-II, во втором случае, я их поменял (естественно, я не придавал этому значения).


Решение:

Под Windows данная проблема решается программой HDD Capacity Restore
 http://www.bestvistadownloads.com/download/t-free-hdd-capacity-restore-download-aqauycgh.html

Во  FreeBSD 8 это делается путём установки : hw.ata.setmax="1" в loader.conf

Под Linux это решается стандартными средствами - командой hdparm.

Вот пример:

Диск без HPA:

   $ hdparm -N /dev/sdd
   /dev/sdd:
    max sectors   = 1953525168/1953525168, HPA is disabled

Диск с HPA:

   $ hdparm -N /dev/sdc
   /dev/sdc:
    max sectors   = 586070255/586072368, HPA is enabled

Для отключения HPA для второго случая используем комманду

   $ hdparm -N p586072368 /dev/sdc

То есть мы приравниваем количество секторов, доступных пользователю, к
максимальном количеству секторов на диске.
Буква 'p' необходима для того, чтобы настройки сохранились в flash жесткого диска 
(то есть чтобы после выключения питания они сохранились). Менять параметр с ключем 'p' 
можно только один раз за сессию жесткого диска (сессия - промежуток времени
между включениям и выключением).
После изменения параметра необходимо выключить и включить винчестер (по факту - компьютер).

Что касается решения корня проблемы - есть мнение, что прошивка F7 материнской
платы ее устраняет, но я не пробовал.

Дополнительная информация:

http://en.wikipedia.org/wiki/Host_Protected_Area
http://www.linux.gr/cgi-bin/man/man2html?hdparm+8
http://www.gigabyte.ru/forum/viewtopic.php?f=23&t=25076&p=142923
http://www.gigabyte.com.tw/Products/Motherboard/Products_Spec.aspx?ProductID=2361
 
25.05.2008 , Автор: Kroz
Раздел:    Корень / Администратору / Система / Диски и файлы / Файловые системы

Обсуждение [ RSS ]
 
  • 1.1, butcher, 14:32, 26/05/2008 [ответить] [смотреть все]
  • +/
    Во FreeBSD 8.0 это делается путём установки hw.ata.setmax="1" в loader.conf.
     
     
  • 2.2, cvsup, 19:30, 26/05/2008 [^] [ответить] [смотреть все]
  • +/
    но какое это имеет отношение к SATA Port Multipliers не совсем понятно..
     
     
  • 3.3, butcher, 20:40, 26/05/2008 [^] [ответить] [смотреть все]
  • +/
    >но какое это имеет отношение к SATA Port Multipliers не совсем понятно..

    А где здесь хоть слово о SATA Port Multipliers?

     
  • 3.7, pavlinux, 14:24, 29/05/2008 [^] [ответить] [смотреть все]
  • +/
    TUNABLE_INT("hw.ata.setmax", &ata_setmax);

    SYSCTL_INT(_hw_ata, OID_AUTO, setmax, CTLFLAG_RDTUN, &ata_setmax, 0,
    "ATA disk set max native address");

     
  • 1.4, Аноним, 23:55, 26/05/2008 [ответить] [смотреть все]
  • +/
    Проприетарные биосы что-то совсем окуевают - нагло глючат, и вообще, какого ху ... весь текст скрыт [показать]
     
  • 1.5, Дмитрий Ю. Карпов, 19:28, 27/05/2008 [ответить] [смотреть все]  
  • +/
    Интересно, а если я на эту мат.плату поставлю диск с данными, то BIOS повредит мои данные при резервировании?
     
     
  • 2.6, User294, 15:15, 28/05/2008 [^] [ответить] [смотреть все]  
  • +/
    >Интересно, а если я на эту мат.плату поставлю диск с данными, то
    >BIOS повредит мои данные при резервировании?

    Мне интересно другое - зачем оно втихаря от харда пытается откусить себе кусочек и при том только от большого.Типа втихаря ставит себе бэкдор в надежде что юзер при терабайтном размере не заметит пропажи кусочка???

     
  • 1.8, Аноним, 17:31, 01/06/2008 [ответить] [смотреть все]  
  • +/
    Как это ... весь текст скрыт [показать]
     
  • 1.9, dRiZd, 19:13, 01/06/2008 [ответить] [смотреть все]  
  • +/
    Странно, у меня ASUS P5N32E SLI Plus поставил 6 штук
    SEAGATE ST31000340NS вместо ST3500320NS - ни каких проблем не обнаружил (Linux, Solaris, QNX, Win XP x64)
     
  • 1.10, spinoprav, 04:52, 13/07/2008 [ответить] [смотреть все]  
  • +/
    Огромное спасибо Kroz!
    Благодаря этой инфе мне удалось подключить свой терабайтный  самс к матери GA-P35-DS4  (rev. 2.0)   Тип BIOS Award Modular -  F12.
    До этого 3 суток танцевал с бубном без результата
    Собирался сдавать  в ремонт
    О слава Великому Инету
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:

     Добавить заметку
     Версия для печати
     
     Поиск заметки:
     

    Последние заметки
    - 12.05 Организация шифрованного бэкапа с помощью rdiff-backup, encfs и Dropbox
    - 11.05 Настройка беспроводного соединения в Debian GNU/Linux
    - 07.05 Использование Google Drive в Linux
    - 18.04 Использование нескольких сетевых стеков в Linux
    - 15.04 Восстановление стандартного KDE меню после его удаления (например, wine)
    - 11.04 Настройка gmirror при использовании GPT во FreeBSD 9
    - 09.04 Маршрутизатор на базе FreeBSD с приоритизация трафика средствами PF и ALTQ
    - 02.04 Частичное восстановление данных MySQL из бэкапа, созданного с использованием LVM
    - 21.03 Настройка DNSSEC в BIND 9.9
    - 17.03 Набор номера на Cisco IP Phone 7960/7940 из скрипта
    RSS | Следующие 15 записей >>


    ПОДПИШИСЬ НА ЖУРНАЛ Linux Format 2012!

    Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

    Каждый, кто оформит подписку, получает бонусы и подарки- объёмные наклейки на системный блок, диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

    Оформить подписку на год


      Закладки на сайте
      Проследить за страницей
    Created 1996-2012 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    RUNNet TopList