Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

10. Выводы

Что значит все выше сказанное? Для пользователей Линукс только одну вещь: необходимость быть уверенными в том, что LILO и fdisk используют правильную геометрию. Правильная геометрия для fdisk - та, которая используется ОС находящейся на том же диске, а для LILO - та которая позволяет успешно взаимодействовать с BIOS во время загрузки. (обычно эти две геометрии совпадают)

Как fdisk узнает о геометрии? Он спрашивает ядро,используя HDIO_GETGEO ioctl. Но пользователь может заставить fdisk использовать другую геометрию в интерактивном режиме или в командной строке.

Как LILO узнает о геометрии? Оно запрашивает ядро, используя HDIO_GETGEO ioctl. Но пользователь также может обойти эту геометрию, указав специальный параметр `disk=' в файле /etc/lilo.conf (см. lilo.conf(5)). Возможно также задание опции linear , которая заставит LILO хранить в его map файле LBA адреса, вместо CHS и будет определять геометрию при загрузке с помощью INT13(функция 8).

Как ядро узнает о геометрии? Во первых, возможно,что пользователь указал детальную геометрию в командной строке ядра `hda=cyls,heads,secs' (см. bootparam(7)),вручную или указав загрузчику необходимость передать эти параметры ядру. Например,для LILO нужно добавить строку `append = "hda=cyls,heads,secs"' в /etc/lilo.conf (см. lilo.conf(5)). Или же ядро может само догадаться о геометрии, опросив BIOS или "железо".

Начиная с версии ядра 2.1.79 возможно указание геометрии ядру с помощью файловой системы /proc. Например:

# sfdisk -g /dev/hdc
/dev/hdc: 4441 cylinders, 255 heads, 63 sectors/track
# cd /proc/ide/ide1/hdc
# echo bios_cyl:17418 bios_head:128 bios_sect:32 > settings
# sfdisk -g /dev/hdc
/dev/hdc: 17418 cylinders, 128 heads, 32 sectors/track
#

10.1 Вычисление параметров LILO.

Иногда бывает удобно указать какую либо конкретную геометрию указав `hda=cyls,heads,secs' в командной строке ядра. Почти всегда необходимо указывать secs=63, для того чтобы указать heads. (Наиболее удачными значениями на сегодняшний день будут heads=16 и heads=255.) Что необходимо указать для cyls? Это должно быть число соответствующее полной емкости диска в секторах C*H*S. Например для диска с 71346240 секторами (36529274880 байт) С должно быть вычислено как 71346240/(255*63)=4441 (посчитать это можно например с помощью bc) , и заданы следующие параметры hdc=4441,255,63. Как можно узнать полную емкость диска? Например ,

# hdparm -g /dev/hdc | grep sectors
 geometry     = 4441/255/63, sectors = 71346240, start = 0
# hdparm -i /dev/hdc | grep LBAsects
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=71346240
дает два способа нахождения полного числа секторов - 71346240. Нахождение путем просмотра сообщений выдаваемых ядром при загрузке
# dmesg | grep hdc
...
hdc: Maxtor 93652U8, 34837MB w/2048kB Cache, CHS=70780/16/63
 hdc: [PTBL] [4441/255/63] hdc1 hdc2 hdc3! hdc4 < hdc5 > ...
говорит нам о (как минимум) 34837*2048=71346176 секторах и соотвественно о 70780*16*63=71346240 секторах. В данном случае вторая величина корректна, но в общем то обе могут быть округлены в меньшую сторону. Это хороший способ получить представление о размере диска когда hdparm не доступен. Но некогда не задавайте слишком большое значение для cyls! В случае с SCSI дисками, точное число секторов выдается ядром при загрузке.
SCSI device sda: hdwr sector= 512 bytes. Sectors= 17755792 [8669 MB] [8.7 GB]
(и MB, GB округляются, но никогда в меньшую сторону, и являются `двоичными').
Вперед Назад Содержание
VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...