fdisk - утилита управления таблицами слайсов жесткого диска

Версия для печатиОтправить другуPDF version
НАЗВАНИЕ
     fdisk - утилита управления таблицами слайсов жесткого диска

СИНТАКСИС
     fdisk [-BIaipstu] [-b загрузчик] [-1234] [диск]
     fdisk -f файл_конфигурации [-itv] [диск]
ПРОЛОГ
     Чтобы BIOS смог загрузить ядро, необходимо придерживаться определённых
     соглашений.  Нулевой сектор диска должен содержать загрузочный код,
     таблицу слайсов и магическое число.  Используя слайсы BIOS, диск может
     быть поделён на несколько частей.  BIOS считывает нулевой сектор и прове-
     ряет магическое число.  Затем загрузочный код из нулевого сектора прове-
     ряет таблицу слайсов, чтобы найти слайс, помеченный как ``активный''.
     Затем он считывает программу начальной загрузки из активного слайса, и
     если слайс помечен как загрузочный, запускает её.  В DOS может быть
     несколько слайсов, один из которых будет активным.  Утилита fdisk для DOS
     позволяет разделить дисковое пространство на слайсы и пометить один из
     них как активный.

     Утилита fdisk для FreeBSD служит тем же целям, что и аналогичная ей ути-
     лита для DOS.  Первая форма вызова используется для вывода информации о
     параметрах слайсов или для её редактирования в интерактивном режиме.
     Вторая - для записи таблицы слайсов c использованием файла конфигурации
     файл_конфигурации; она предназначена для использования другими сценариями
     или программами.
ОПИСАНИЕ

     fdisk поддерживает следующие опции:
     -a      Только изменить активный слайс.  Игнорируется в сочетании с
             опцией -f.

     -b загрузчик
             Использовать код загрузки из файла загрузчик.  По умолчанию
             используется /boot/mbr.
     -B      Изменить код загрузки в нулевом секторе диска.  Игнорируется в
             сочетании с опцией -f.

     -f файл_конфигурации
             Установить параметры слайсов из файла файл_конфигурации.  С помо-
             щью файла конфигурации меняются параметры только явно указанных
             слайсов, но если также указана опция -i, то перед чтением файла
             конфигурации все существующие слайсы удаляются (помечаются как
             неиспользуемые, ``unused'').  При указании `-' в качестве файла
             конфигурации будет использоваться стандартный ввод.  Описание
             формата файла конфигурации смотрите ниже в секции ФАЙЛ
             КОНФИГУРАЦИИ.
             ПРЕДУПРЕЖДЕНИЕ: в отличие от интерактивного режима, при использо-
             вании опции -f изменения вносятся без запроса на подтверждение.
             Соблюдайте осторожность!

     -i      Инициализировать нулевой сектор диска.  Перед редактированием,
             существующие слайсы будут помечены как неиспользуемые
             (``unused'').  (Сравните с -u.)
     -I      Инициализировать таблицу слайсов в секторе 0 одним слайсом
             FreeBSD на весь диск.

     -p      Вывести таблицу слайсов в формате конфигурационного файла
             fdisk и выйти; см. ФАЙЛ КОНФИГУРАЦИИ ниже.

     -s      Вывести краткую информацию и выйти.
     -t      Режим тестирования: изменения на диск записываться не будут.  Как
             правило, используется совместно с опцией -f чтобы узнать, что
             было бы записано в таблицу слайсов.  Включает опцию -v.

     -u      Редактировать таблицу слайсов диска в секторе 0.  Игнорируется в
             сочетании с опцией -f.
     -v      Выводить подробные сообщения.  В сочетании с -f, fdisk печатает
             записываемую таблицу слайсов.

     -1234   Оперировать только с одним слайсом.  Игнорируется в сочетании с
             опцией -f.
     В качестве аргумента диска допустимо указание как просто имени диска
     (например, da0), так и полного пути к нему.  Если аргумент не указан,
     fdisk пытается определить имя диска по умолчанию по имени устройства, на
     котором находится корневая файловая система.

     При вызове без аргументов печатается таблица слайсов из сектора 0.
Пример:
             ******* Working on device /dev/ad0 *******
             parameters extracted from in-core disklabel are:
             cylinders=769 heads=15 sectors/track=33 (495 blks/cyl)

             parameters to be used for BIOS calculations are:
             cylinders=769 heads=15 sectors/track=33 (495 blks/cyl)
             Warning: BIOS sector numbering starts with sector 1
             Information from DOS bootblock is:
             The data for partition 1 is:
             sysid 165,(FreeBSD/NetBSD/386BSD)
                 start 495, size 380160 (185 Meg), flag 0
                     beg: cyl 1/ sector 1/ head 0;
                     end: cyl 768/ sector 33/ head 14
             The data for partition 2 is:
             sysid 164,(unknown)
                 start 378180, size 2475 (1 Meg), flag 0
                     beg: cyl 764/ sector 1/ head 0;
                     end: cyl 768/ sector 33/ head 14
             The data for partition 3 is:

             The data for partition 4 is:
             sysid 99,(ISC UNIX, other System V/386, GNU HURD or Mach)
                 start 380656, size 224234 (109 Meg), flag 80
                     beg: cyl 769/ sector 2/ head 0;
                     end: cyl 197/ sector 33/ head 14
     Диск поделён на три слайса, которые полностью его охватывают.  Второй
     слайс частично перекрывается с концом первого.  (Используется в целях
     отладки.)

     sysid               используется для маркировки слайсов.  FreeBSD резер-
                         вирует для себя магическое число 165 в десятичной
                         системе счисления (A5 в шестнадцатеричной).
     start и size        поля, содержащие начальный адрес и размер слайса в
                         секторах.

     flag 80             указывает на то, что это активный слайс.
     cyl, sector и head  поля используются для указания начального и конечного
                         адресов слайса (цилиндр, сектор и головка соответ-
                         ственно).

     Замечание: эти числа вычисляются исходя из геометрии диска, предполагае-
     мой BIOS, и хранятся в загрузочном секторе.

     Флаги -i и -u указывают программе на то, что таблица слайсов должна быть
     изменена.  Если флаг -f не был указан, работа с утилитой будет происхо-
     дить в диалоговом режиме.  В этом случае никакие изменения на диск запи-
     сываться не будут, пока вы явно не потребуете этого.
     Утилита покажет каждый слайс и спросит, хотите ли вы его отредактировать.
     В случае утвердительного ответа, fdisk будет последовательно переходить
     от поля к полю, отображая старое значение и запрашивая новое.  Когда вы
     закончите редактировать слайс, fdisk выведет информацию о нём и спросит,
     согласны ли вы с введёнными значениями, и если ответ будет утвердитель-
     ным, перейдёт к следующему слайсу.

     Правильно вычислить значения cyl, sector, и head бывает сложно, поэтому
     по умолчанию они вычисляются автоматически.  Тем не менее, при необходи-
     мости вы можете задать их самостоятельно.
     После того, как все слайсы были обработаны, вам будет предложено изменить
     ``активный'' слайс.  Наконец, когда все новые данные будут собраны, ути-
     лита запросит подтверждение на запись в нулевой сектор.

     Разница между флагами -u и -i заключается в том, что -u редактирует
     (обновляет) параметры существующих слайсов, тогда как -i используется для
     их ``инициализации'' (старые значения игнорируются).  Если редактируется
     первый слайс, то -i настроит его так, чтобы он охватывал весь диск, и
     сделает его активным.
ЗАМЕЧАНИЯ
     При автоматическом вычислении начального цилиндра, головки и т.д. исполь-
     зуется набор значений, отражающих геометрию диска на основе данных BIOS.
     По умолчанию эти значения берутся из метки диска в ядре (in-core disk
     label), но fdisk предоставляет возможность изменить их.  Это позволяет
     создать загрузочный блок, который может работать с дисками, использующими
     трансляцию адресов через BIOS.

     Размечая диск вручную убедитесь, что слайсы FreeBSD начинаются на границе
     цилиндра.
     Изменение параметров существующего слайса с большой вероятностью может
     привести к потере данных, хранящихся на этом слайсе.

     Имеет смысл несколько раз запустить fdisk в интерактивном режиме, чтобы
     просмотреть все изменения, которые она произведёт.  Это безопасно при
     условии, что вы ответите отрицательно на последний вопрос, ``Should we
     write new partition table?''.  Имеется ряд тонкостей конфигурации, кото-
     рые утилита fdisk обнаруживает, но которые не описываются подробно в этой
     странице справочника.
ФАЙЛ КОНФИГУРАЦИИ
     При использовании опции -f таблица слайсов диска может быть записана с
     помощью значений, указанных в файле файл_конфигурации.  Формат этого
     файла достаточно прост: каждая строка является либо комментарием, либо
     спецификацией, как показано ниже:

     # комментарий ...
             строки, начинающиеся с # являются комментариями и игнорируются.
     g spec1 spec2 spec3
             Задать геометрию BIOS, использующуюся для вычисления параметров
             слайсов.  Должно быть указано три значения, с буквой перед каждым
             числом:

             cnum    Установить число цилиндров равным num.
             hnum    Установить число головок равным num.

             snum    Установить число секторов на дорожку равным num.
             Значения могут быть указаны в любом порядке, т.к. первая буква
             однозначно определяет какое значение имеется ввиду.  Однако, в
             любом случае, должны быть указаны все три.

             Эта строка должна предшествовать строкам, задающим параметры
             слайсов.
             Значения могут быть в таких диапазонах:

                   1 <= число цилиндров
                   1 <= число головок <= 256
                   1 <= число секторов на дорожке < 64
             Число цилиндров должно быть меньше либо равным 1024.  Это не
             строго обязательно, но если вы укажете число, большее 1024, будет
             выдано предупреждение.  Следует учитывать, что загрузочные слайсы
             FreeBSD, содержащие корневую (``/'') файловую систему, должны
             располагаться в первых 1024 цилиндрах, иначе могут возникнуть
             проблемы c загрузкой.  Это ограничение не распространяется на не-
             загрузочные слайсы.

             Пример геометрии диска (все варианты идентичны) с 1019 цилин-
             драми, 39 головками и 63 секторами на дорожке:
                   g       c1019   h39     s63
                   g       h39     c1019   s63
                   g       s63     h39     c1019

     p slice type start length
             Задать слайсу с номером slice (1-4) тип type, начальный сектор
             start и размер length секторов.
             Изменениям подвергнутся только те слайсы, параметры которых
             заданы такими строками, остальные слайсы сохранят свои прежние
             параметры.  Однако, если существующая таблица слайсов будет
             некорректна или же будет указана опция -i, все существующие
             слайсы будут удалены (помечены как неиспользуемые), и для раз-
             метки необходимо будет задать соответствующие p строки.  При
             задании параметров для нескольких слайсов следует задать
             несколько строк p, по одной на каждый слайс.

             Эти строки должны следовать за строкой, задающей геометрию, если
             такая строка присутствует в файле.
             Для FreeBSD слайсов значение type равно 165.  Указание нулевого
             типа аналогично удалению слайса (пометкой его ``unused''), однако
             полям start и length в этом случае также должны быть присвоены
             произвольные значения, например, 0.

             Замечание: при необходимости, начальное смещение будет округлено
             вверх до границы головки, а конечное смещение - вниз до границы
             цилиндра.
             Пример: чтобы удалить 4-й слайс и сделать его неиспользуемым
             (``unused''):

                   p       4       0       0       0
             Пример: чтобы установить 1-й слайс как слайс для FreeBSD, начина-
             ющийся с 1-го сектора размером в 2503871 секторов (эти значения
             будут округлены вверх и вниз таким образом, чтобы слайс попадал
             на границы головки и цилиндра соответственно):

                   p       1       165     1       2503871
     a slice
             Сделать слайс slice активным.  Эта строка может располагаться в
             файле где угодно, но может быть только одна такая строка на весь
             файл.

             Пример: чтобы сделать активным 1-й слайс:

                   a       1
ФАЙЛЫ
     /boot/mbr  Код загрузчика по умолчанию.

СМОТРИ ТАКЖЕ
     boot0cfg(8), bsdlabel(8), newfs(8)
ПРОБЛЕМЫ
     Код загрузчика по умолчанию не всегда правильно распознает все типы слай-
     сов, в частности те, которые были введены начиная с MS-DOS 6.x.

     Данная утилита могла бы быть более дружественной пользователю.
     Большинство новичков FreeBSD не понимают разницы между ``слайсом'' и
     ``разделом'', что приводит к проблемам.

     С помощью этой утилиты невозможно отдать весь диск целиком под использо-
     вание FreeBSD.  Для этого нужно использовать утилиту bsdlabel(8).
Голосов пока нет

Вставай, Україно!

Литература