Использование FDISK для перекраивания пространства на диске
или семь раз отмерь, один раз отрежь


Чтобы создать раздел под Linux, применим версию Linux хорошо знакомой вам программы fdisk. После регистрации в системе как 'root', запустите команду

            fdisk <имя_жесткого_диска_где_создаем_раздел_Linux>             
Имена бывают следующие:
Например, чтобы создать раздел для Linux на первом SCSI диске, используйте следующую команду:
            fdisk /dev/sda
Если использовать fdisk без аргументов, по умолчанию будет предполагаться /dev/hda.

Чтобы создать раздел на втором диске на вашей машине, просто укажите

            fdisk /dev/hdb         (для IDE диска) 
или         fdisk /dev/sdb         (для SCSI диска)
Разделы для Linux совсем не обязательно должны находиться на одном и том же диске. Можно, например, создать раздел под корневую файловую систему на '/dev/hda', а раздел под своппинг на '/dev/hdb'. Конечно, fdisk нужно запустить для каждого создаваемого раздела.

Использование fdisk достаточно просто.


Linux именует разделы относительно дисков, к которым они принадлежат. Например, первый раздел на диске '/dev/hda' будет называться '/dev/hda1', второй '/dev/hda2' и так далее. Если на диске есть логические разделы, они нумеруются начиная с '/dev/hda5', '/dev/hda6' и так далее.

П р е д о с т е р е ж е н и е:
НЕ используйте Linux версию fdisk для удаления разделов, не относящихся к системе Linux!
(Т.е. не создавайте и не удаляйте MS-DOS разделы этой версией fdisk, вместо этого используйте MS-DOS версию fdisk.)
Если вы все же попытаетесь создать разделы MS-DOS таким образом, то MS-DOS их не признает и не сможет корректно загрузиться.

Рассмотрим работу fdisk на примере. Предположим, что у нас есть единственный раздел, выделенный под MS-DOS, занимающий 61393 блока на диске и остаток места на диске свободен для Linux. (В Linux один блок равен 1024 байтам, следовательно 61693 блока равны приблизительно 61Мб.) Создадим два раздела: один для своппинга и один для корневой файловой системы.

Сначала используем команду 'p', чтобы посмотреть текущую таблицу разделов. Как видно, '/dev/hda1' (первый раздел на '/dev/hda') является разделом под DOS размером 61693 блока.


______________________________________________________________________

   Command (m for help):   p

   Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders
   Units = cylinders of 608 * 512 bytes
       
   Device Boot  Begin   Start     End  Blocks   Id  System
/dev/hda1   *       1       1     203   61693    6  DOS 16-bit >=32M

  Command (m for help):
______________________________________________________________________

Теперь создадим новый раздел, используя команду 'n'.
Выделим для корневого раздела Linux 80Мб.

______________________________________________________________________

  Command (m for help):  n
  Command action
    e   extended
    p   primary partition (1-4)
  p
______________________________________________________________________

На вопрос: хотим мы создать раздел extended или primary, ответим primary. В большинстве случаев вы будете создавать primary разделы, до тех пор пока вам не понадобится больше четырех разделов на одном диске.

______________________________________________________________________

  Partition number (1-4): 2
  First cylinder (204-683):  204
  Last cylinder or +size or +sizeM or +sizeK (204-683): +80M
______________________________________________________________________

Первый цилиндр должен быть первым цилиндром, следующим за концом последнего занятого раздела. В любом случае, '/dev/hda1' заканчивается 203 цилиндром, так что мы укажем начало нового раздела с 204 цилиндра.
Как вы, наверное, заметили, если мы используем значение "+80М", то это означает раздел размером в 80Мб. Аналогично, "+80К" означает размер 80Кб, а "+80" соответственно только 80б.
Далее мы создадим наш swap раздел, выделим ему 10Мб, '/dev/hda3'.

______________________________________________________________________

  Command (m for help): n
  Command action
    e   extended
    p   primary partition (1-4)
  p
		    
  Partition number (1-4): 3
  First cylinder (474-683):  474
  Last cylinder or +size or +sizeM or +sizeK (474-683):  +10M
______________________________________________________________________

Снова посмотрим содержимое таблицы разделов. Запишите себе куда-нибудь размеры (в блоках) для каждого раздела, эта информация понадобится позднее.


______________________________________________________________________

  Command (m for help): p
  Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders
  Units = cylinders of 608 * 512 bytes

  Device Boot  Begin   Start     End  Blocks   Id  System
/dev/hda1   *      1       1     203   61693    6  DOS 16-bit >=32M
/dev/hda2        204     204     473   82080   83  Linux native
/dev/hda3        474     474     507   10336   83  Linux native
______________________________________________________________________

Обратите внимание, что swap раздел, здесь '/dev/hda3', имеет тип "Linux native" (т.е. такой же, какой имеет раздел под файловую систему Linux). Необходимо изменить ему тип на "Linux swap", чтобы инсталляционная программа смогла определить его как таковой. Сделать это можно с помощью команды fdisk 't' :

______________________________________________________________________

  Command (m for help): t
  Partition number (1-4): 3
  Hex code (type L to list codes): 82
______________________________________________________________________

Используете команду 'L', чтобы посмотреть какие бывают типы разделов;
вы увидите, что код 82 соответствует типу "Linux swap".

Чтобы выйти и сохранить сделанные изменения, используйте команду 'w'.
Чтобы выйти БЕЗ сохранения результатов проделанной работы, используйте команду 'q'.

После того как вы выйдите из программы fdisk, система может предложить вам перезагрузиться, чтобы сделанные изменения возымели свое действие. Обычно нет причины перезагружаться после применения fdisk - версия fdisk дистрибутива Slackware достаточно разумная, чтобы модифицировать разделы без перезагрузки.


П р е д у п р е ж д е н и е
вам все же придется перезагрузиться, если изменения коснулись одного или более разделов типа extended или logical - Linux в настоящий момент не умеет модифицировать список таких разделов.



УрбанСофт