headermask image


Advertisement

LPI 101: Устройства, файловые системы Linux и стандарт FHS. Создание разделов и файловых систем

Блочные устройства и разделы

Кратко рассмотрим блочные устройства и разделы.

Блочные устройства

Блочное устройство представляет собой уровень абстракции, описывающий любое устройство хранения информации, которое может быть разбито на блоки определенного размера; доступ к каждому блоку осуществляется независимо от доступа к другим блокам. Такой доступ часто называют произвольным доступом.

Абстрагированное представление устройств в виде блоков фиксированного размера с произвольным доступом позволяет программам использовать их независимо от того, является ли устройство жестким диском, дискетой, CD- диском, сетевым диском или каким-либо другим устройством, например файловой системой в оперативной памяти.

Примерами блочных устройств могут быть первый жесткий диск (IDE) (/dev/hda) или второй SCSI-диск (/dev/sdb). Для просмотра каталога /dev используйте команду ls -l. Первый символ b в строке указывает на блочное устройство: флоппи- или CD-дисковод, IDE- или SCSI-диск; а c – на символьное устройство, например, накопитель на магнитной ленте или терминал. См. примеры в листинге 1.

Листинг 1. Блочные и символьные устройства Linux

[ian@lyrebird ian]$ ls -l /dev/fd0 /dev/hda /dev/sdb /dev/st0 /dev/tty0
brw-rw---- 1 ian floppy 2, 0 Jun 24 2004 /dev/fd0
brw-rw---- 1 root disk 3, 0 Jun 24 2004 /dev/hda
brw-rw---- 1 root disk 8, 16 Jun 24 2004 /dev/sdb
crw-rw---- 1 root disk 9, 0 Jun 24 2004 /dev/st0
crw--w---- 1 root root 4, 0 Jun 24 2004 /dev/tty0

Разделы

Для некоторых блочных устройств, таких как дискеты, CD и DVD- диски, принято использовать одну файловую систему на всем носителе. Однако на жестких дисках больших объемов и даже на небольших USB- накопителях доступное пространство принято делить или разбивать на несколько разделов.

Разделы могут отличаться по объему, на каждом из них может быть своя файловая система, так что один диск может использоваться для различных целей, включая использование его несколькими операционными системами. Например, я использую тестовые системы под несколькими различными дистрибутивами Linux, а также иногда под Windows®, и все они используют один или два общих жестких диска.

Из руководств 101 и 102 вы помните, что жесткий диск имеет геометрию, определяемую в терминах цилиндров, головок и секторов. Даже несмотря на то, что современные диски используют логическую адресацию блоков (LBA), которая в значительной степени маскирует геометрию диска, основной единицей размещения для разделов диска остается цилиндр.

Вывод информации о разделах

Информация о разделах диска хранится в таблице разделов. Таблица разделов содержит информацию о начале и окончании каждого раздела, информацию о его типе и о том, является ли он загрузочным или нет. Чтобы создать или удалить раздел, нужно отредактировать таблицу разделов, используя специальную программу. Для экзамена LPI вам необходимо знать программу fdisk, описанную здесь, хотя существуют и другие инструменты.

Для просмотра разделов используется команда fdisk с опцией -l. Если вы хотите просмотреть разделы для конкретного диска, добавьте имя устройства, например /dev/hda. Заметьте, что инструменты для разбиения на разделы требуют административных прав доступа. Листинг 2 показывает разделы на одном из моих жестких дисков.

Листинг 2. Просмотр разделов диска с помощью команды fdisk

[root@lyrebird root]# fdisk -l /dev/hda
Disk /dev/hda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2078 16691503+ 7 HPFS/NTFS
/dev/hda2 2079 3295 9775552+ c Win95 FAT32 (LBA)
/dev/hda3 3296 3422 1020127+ 83 Linux
/dev/hda4 3423 19457 128801137+ f Win95 Ext'd (LBA)
/dev/hda5 3423 3684 2104483+ 82 Linux swap
/dev/hda6 3685 6234 20482843+ 83 Linux
/dev/hda7 6235 7605 11012526 83 Linux
/dev/hda8 7606 9645 16386268+ 83 Linux
/dev/hda9 9646 12111 19808113+ 83 Linux
/dev/hda10 12112 15680 28667961 83 Linux
/dev/hda11 15681 19457 30338721 83 Linux

Замечания:

  • В заголовке отражена информация об объеме диска и его геометрии. Большинство больших дисков, использующих LBA, имеют 255 головок на цилиндр и 63 сектора в дорожке, что составляет 16065 секторов или 8225280 байт на цилиндр.
  • В данном примере первый раздел (/dev/hda1) помечен как загрузочный (или активный). Как вы видели в руководстве к теме 102, это обеспечивает загрузку раздела с помощью стандартной загрузочной записи DOS. Этот признак не имеет смысла в LILO или GRUB- загрузчиках.
  • Столбцы Start и End показывают начальный и конечный цилиндры для каждого раздела. Они не должны перекрываться, а должны следовать строго друг за другом без промежутков.
  • Столбец Blocks показывает число блоков размером 1 килобайт (1024 байт) в разделе. Максимальное количество блоков в разделе, следовательно, равняется половине произведения числа цилиндров (End + 1 – Start) на число секторов в цилиндре. Знак + в конце означает, что используются не все секторы раздела.
  • Поле Id указывает на предполагаемое использование раздела. Тип 82 – файл подкачки, 83 – раздел для хранения информации. Существует около 100 различных типов томов. Данный диск используется несколькими операционными системами, в том числе Windows/XP, поэтому на нем есть разделы с файловой системой NTFS (и FAT32).

Создание разделов с помощью команды fdisk

Только что вы узнали, как просмотреть данные о разделах диска с помощью fdisk. Эта команда также позволяет редактировать таблицу разделов с целью создания и удаления разделов.

Предупреждения

Прежде чем изменять разделы, необходимо запомнить несколько важных моментов. Если не следовать этим рекомендациям, вы рискуете потерять существующую информацию.

  • Не изменяйте разделы, которые используются в настоящий момент. Составьте план действий и четко его придерживайтесь.
  • Знайте возможности вашего инструментального средства. Fdisk не выполняет изменений без вашего подтверждения. Другие инструменты, как, например parter, могут применять изменения сразу.
  • Прежде чем начинать, создайте резервную копию важной информации, так как любая операция может привести к потере данных.
  • Инструменты для создания разделов диска оперируют таблицей разделов. Если ваш инструмент не выполняет также операций, связанных с перемещением, изменением размера, форматированием или другими способами изменения дискового пространства, ваши данные не будут повреждены. Если вы случайно допустите ошибку, как можно скорее прервите работу и обратитесь за помощью. Возможно, вы еще сможете восстановить разделы и данные.

Запуск fdisk

Для запуска fdisk в интерактивном режиме просто задайте в качестве параметра имя диска, например, /dev/had или /dev/sdb. В следующем примере показана загрузка с рабочего CD-диска Knoppix. Если вы обладаете правами администратора, то получите результат, аналогичный листингу 3.

Листинг 3. Интерактивный запуск fdisk

root@ttyp1[knoppix]# fdisk /dev/hda
The number of cylinders for this disk is set to 14593.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):

Современные диски содержат более 1024 цилиндров, поэтому обычно вы будете получать предупреждение, как в листинге 3. Нажмите m, чтобы получить список возможных однобуквенных команд, показанный в листинге 4.

Листинг 4. Помощь в fdisk

Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help):

Для просмотра разделов диска нажмите p; результат – в листинге 5.

Листинг 5. Просмотр существующей таблицы разделов

Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
Command (m for help):

Объем данного диска 120 ГБ, имеется раздел под Windows XP, занимающий около 20 ГБ. Это первичный раздел, помеченный как загрузочный, что типично для Windows-систем.

Формирование структуры диска для рабочей станции

Теперь используем часть свободного пространства для организации рабочей станции со следующими дополнительными разделами. На практике вы вряд ли будете использовать такое количество разных типов файловых систем, но здесь мы сделаем это для примера.

  • Еще один первичный раздел для наших загрузочных файлов. Он будет монтироваться как /boot и содержит файлы ядра и исходных RAM-дисков. Если вы используете загрузчик GRUB, то его файлы тоже будут располагаться здесь. Из руководства к теме 102 следует, что для этого необходимо около 100 Мбайт. Из листинга 5 видно, что объем цилиндра примерно 8 Мбайт, поэтому загрузочный раздел /boot займет 13 цилиндров. Это будет /dev/hda2.
  • Создадим расширенный раздел для размещения логических разделов, занимающий остальное свободное пространство. Это будет /dev/hda3.
  • Создадим раздел подкачки размером 500 Мбайт как /dev/hda5. Он займет 64 цилиндра.
  • Создадим логический раздел объемом около 20 ГБ для нашей Linux- системы. Это будет /dev/hda6.
  • Создадим отдельный раздел для данных пользователя размером 10 ГБ. В дальнейшем он будет монтироваться как /home, а пока это будет просто /dev/hda7.
  • И наконец, создадим маленький (2 ГБ) раздел для обмена данными между системами Linux и Windows. В дальнейшем на нем будет использоваться файловая система FAT32 (или vfat). Это будет /dev/hda8.

Создание разделов

Начнем с использования команды n для создания нового раздела; см. листинг 6.

Листинг 6. Создание первого раздела

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (2612-14593, default 2612):
Using default value 2612
Last cylinder or +size or +sizeM or +sizeK (2612-14593, default 14593): 2624
Command (m for help): p
Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
Command (m for help):

Мы берем значение по умолчанию для первого цилиндра и задаем значение 2624 для последнего цилиндра, в результате получаем раздел из 13 цилиндров. Из листинга 6 видно, что наш раздел в действительности занимает примерно 100 Мбайт. Поскольку это первичный раздел, он должен иметь номер от 1 до 4. Рекомендуется назначать номера разделов последовательно; если этого не делать, некоторые инструменты выдают предупредительные сообщения.

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

Теперь создадим расширенный раздел, который будет содержать логические разделы диска. Присвоим этому разделу номер 3 (/dev/hda3). Процесс и результат показан в листинге 7. Заметьте, что тип раздела назначается автоматически.

Листинг 7. Создание расширенного раздела

Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 3
First cylinder (2625-14593, default 2625):
Using default value 2625
Last cylinder or +size or +sizeM or +sizeK (2625-14593, default 14593):
Using default value 14593
Command (m for help): p
Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
/dev/hda3 2625 14593 96140992+ 5 Extended
Command (m for help):

Теперь перейдем к раздела файла подкачки как логического раздела внутри нашего расширенного раздела. Мы задаем для конечного цилиндра значение +64 (цилиндра) вместо того, чтобы считать самим. Отметьте, что при этом мы используем команду t, чтобы задать для вновь создаваемого раздела тип 82 (раздел подкачки Linux). Иначе это будет раздел с типом 83 (данные Linux).

Листинг 8. Создание раздела подкачки

Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (2625-14593, default 2625):
Using default value 2625
Last cylinder or +size or +sizeM or +sizeK (2625-14593, default 14593): +64
Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 82
Changed system type of partition 5 to 82 (Linux swap)
Command (m for help): p
Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
/dev/hda3 2625 14593 96140992+ 5 Extended
/dev/hda5 2625 2689 522081 82 Linux swap
Command (m for help):

Теперь определим основной раздел для Linux и раздел /home. Для этого просто зададим объемы +20480 Мбайт и +10240 Мбайт, т.е. 20 ГБ и 10 ГБ соответственно. Предоставим fdisk самостоятельно подсчитать число цилиндров. Результаты представлены в листинге 9.

Листинг 9. Создание основного раздела Linux

Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (2690-14593, default 2690):
Using default value 2690
Last cylinder or +size or +sizeM or +sizeK (2690-14593, default 14593): +20480M
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (5181-14593, default 5181):
Using default value 5181
Last cylinder or +size or +sizeM or +sizeK (5181-14593, default 14593): +10240M
Command (m for help): p
Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
/dev/hda3 2625 14593 96140992+ 5 Extended
/dev/hda5 2625 2689 522081 82 Linux swap
/dev/hda6 2690 5180 20008926 83 Linux
/dev/hda7 5181 6426 10008463+ 83 Linux
Command (m for help):

Последний раздел – раздел с файловой системой FAT32. Выполним уже знакомые действия для создания раздела /dev/hda9, определив объем как +2048 Мбайт, а затем изменим тип раздела на b (для FAT32 в версии Windows 95). Затем сохраним изменения.

Сохранение таблицы разделов

До настоящего времени мы редактировали таблицу разделов в оперативной памяти. Можно использовать команду q для выхода без сохранения изменений. Если что-то выполнено не так, как нужно, можно использовать d для удаления одного или более разделов и переопределить их заново. Если все сделано верно, используем v для проверки, а затем w, чтобы сохранить новую таблицу разделов и выйти. Смотрите листинг 10. Если вновь запустить fdisk -l, увидим, что изменения уже применены в Linux. В отличие от некоторых других операционных систем, для того, чтобы увидеть эти изменения, не всегда необходима перезагрузка. Перезагрузка может потребоваться, например, если раздел /dev/hda3 переназначается в /dev/hda2 из-за, того, что раздел /dev/hda2 был удален. Если перезагрузка необходима, fdisk сообщит вам об этом.

Листинг 10. Сохранение таблицы разделов.

Command (m for help): v
127186915 unallocated sectors
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
root@ttyp0[knoppix]# fdisk -l /dev/hda
Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
/dev/hda3 2625 14593 96140992+ 5 Extended
/dev/hda5 2625 2689 522081 82 Linux swap
/dev/hda6 2690 5180 20008926 83 Linux
/dev/hda7 5181 6426 10008463+ 83 Linux
/dev/hda8 6427 6676 2008093+ b W95 FAT32

Подробнее про fdisk

Можно отметить, что мы не изменяли загрузочный раздел. Наш диск по-прежнему имеет главную загрузочную запись Windows и соответственно будет загружаться с первого раздела, который помечен как загрузочный (раздел NTFS в нашем примере).

Ни LILO, ни GRUB не используют флаг загрузочного раздела. Если какой-либо из этих загрузчиков будет установлен в главной загрузочной записи, он может загрузить раздел Windows XP. Также можно установить LILO или GRUB в раздел /boot (/dev/hda2), пометить этот раздел как загрузочный и удалить загрузочный флажок с раздела /dev/hda1. Оставить первоначальную загрузочную запись полезно, если впоследствии на машине вновь будет использоваться только Windows.

Мы рассмотрели один из способов формирования рабочей станции в Linux.

Типы файловых систем

Linux поддерживает несколько различных типов файловых систем. Каждая имеет свои достоинства, недостатки и отличительные черты. Важное свойство файловой системы – журналирование – позволяет быстро восстановить систему после сбоя. Как правило, журналируемые системы предпочтительнее нежурналируемых, если у вас есть выбор. Ниже приведен краткий обзор типов файловых систем, которые необходимо знать для экзамена LPI. Более подробную информацию см. в разделе Ресурсы

Файловая система ext2

Файловая система ext2 (также известная как вторая расширенная файловая система) разработана для устранения недостатков в системе Minix, использовавшейся в ранних версиях Linux. Она широко использовалась в Linux в течение длительного времени. Ext2 не журналируется и в значительной степени вытеснена ext3.

Файловая система ext3

Файловая система ext3 дополняет возможности стандартной ext2 журналированием и поэтому представляет собой эволюционное развитие очень стабильной файловой системы. Она обеспечивает разумную производительность в большинстве ситуаций и продолжает совершенствоваться. Поскольку она представляет собой расширенный вариант системы ext2, есть возможность преобразовывать систему ext2 в ext3 и, в случае необходимости, обратно.

Файловая система ReiserFS

ReiserFS – это файловая система, основанная на B-дереве, с очень хорошими рабочими характеристиками, особенно для большого числа маленьких файлов. ReiserFS хорошо масштабируется и является журналируемой.

Файловая система XFS

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

Файловая система раздела подкачки

Пространство для подкачки должно быть отформатировано, но обычно оно не рассматривается как отдельная файловая система.

Файловая система vfat

Эта файловая система (также известная как FAT32) не является журналируемой и имеет множество недостатков по сравнению с файловыми системами, используемыми Linux. Она применяется для обмена данными между системами Windows и Linux, поскольку читается обеими. Не используйте эту файловую систему в Linux, за исключением случаев совместного использования данных системами Windows и Linux. Если распаковать архив Linux на диск с системой vfat, вы потеряете права доступа, например на выполнение программ, а также символические ссылки, которые могли храниться в архиве.

Как ext3, так и ReiserFS являются зрелыми файловыми системами и используются по умолчанию в ряде дистрибутивов. Обе они рекомендованы к широкому использованию.

Создание файловых систем

Для создания файловых систем в Linux используется команда mkfs, а для создания раздела подкачки – команда mkswap. Команда mkfs фактически является интерфейсом доступа к целому ряду команд, специфичных для конкретных файловых систем, например, mkfs.ext3 для ext3, mkfs.reiserfs для ReiserFS.

Поддержка каких файловых систем имеется в вашей системе? Чтобы это выяснить, используйте команду ls /sbin/mk*. Пример представлен в листинге 11.

Листинг 11. Команды для создания файловых систем

root@ttyp0[knoppix]# ls /sbin/mk*
/sbin/mkdosfs /sbin/mkfs.ext2 /sbin/mkfs.msdos /sbin/mkraid
/sbin/mke2fs /sbin/mkfs.ext3 /sbin/mkfs.reiserfs /sbin/mkreiserfs
/sbin/mkfs /sbin/mkfs.jfs /sbin/mkfs.vfat /sbin/mkswap
/sbin/mkfs.cramfs /sbin/mkfs.minix /sbin/mkfs.xfs

Отметьте различные формы некоторых команд. Например, команды mke2fs, mkfs.ext2 и mkfs.ext3 равнозначны, как и mkreiserfs и mkfs.reiserfs.

Существует несколько общих опций для всех mkfs-команд. Опции, которые специфичны для создаваемой файловой системы, передаются командам создания в зависимости от типа, определенного параметром -type. В наших примерах используется mkfs -type, но можно использовать и другие формы с тем же результатом. Например, можно использовать mkfs -type reiserfs, mkreiserfs или mkfs.reiserfs. Для вызова справочных страниц по конкретной файловой системе укажите в качестве имени соответствующую команду mkfs, например, man mkfs.reiserfs. Многие значения, приведенные в нижеследующих примерах вывода, управляются опциями для mkfs.

Создание файловой системы ext3

Листинг 12. Создание файловой системы ext3

root@ttyp0[knoppix]# mkfs -t ext3 /dev/hda8
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
251392 inodes, 502023 blocks
25101 blocks (5.00%) reserved for the super user
First data block=0
16 block groups
32768 blocks per group, 32768 fragments per group
15712 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Полезная опция, используемая при создании ext2 и ext3 – опция -L с именем, которая назначает метку тому. Метку можно использовать при монтировании файловой системы вместо имени устройства; это обеспечивает определенный уровень изоляции в отношении изменений, который необходимо отразить в различных управляющих файлах. Для просмотра и установки метки на существующую систему ext2 или ext3 используется команда e2label. Длина метки ограничена 16 символами.

Следует заметить, что ext3 ведет журнал. Если вы хотите добавить журналирование к существующей системе ext2, используйте команду tune2fs с опцией -j.

Создание файловой системы ReiserFS

Листинг 13. Создание файловой системы ReiserFS

.root@ttyp0[knoppix]# mkfs -t reiserfs /dev/hda6
mkfs.reiserfs 3.6.17 (2003 www.namesys.com)
A pair of credits:
Many persons came to www.namesys.com/support.html, and got a question answered
for $25, or just gave us a small donation there.
Jeremy Fitzhardinge wrote the teahash.c code for V3. Colin Plumb also
contributed to that.
Guessing about desired format. Kernel 2.4.26 is running.
Format 3.6 with standard journal
Count of blocks on the device: 5002224
Number of blocks consumed by mkreiserfs formatting process: 8364
Blocksize: 4096
Hash function used to sort names: "r5"
Journal Size 8193 blocks (first block 18)
Journal Max transaction length 1024
inode generation number: 0
UUID: 72e317d6-8d3a-45e1-bcda-ad7eff2b3b40
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
ALL DATA WILL BE LOST ON '/dev/hda6'!
Continue (y/n):y
Initializing journal - 0%....20%....40%....60%....80%....100%
Syncing..ok
Tell your friends to use a kernel based on 2.4.18 or later, and especially not a
kernel based on 2.4.9, when you use reiserFS. Have fun.
ReiserFS is successfully created on /dev/hda6.

Для задания метки тома используйте -l (или опцию –label с именем). Для добавления или просмотра метки к существующей системе ReiserFS используется команда reiserfstune. Максимальное число символов в метке – 16.

Cоздание файловой системы XFS

Листинг 14. Создание файловой системы XFS

root@ttyp0[knoppix]# mkfs -t xfs /dev/hda7
meta-data=/dev/hda7 isize=256 agcount=16, agsize=156382 blks
= sectsz=512
data = bsize=4096 blocks=2502112, imaxpct=25
= sunit=0 swidth=0 blks, unwritten=1
naming =version 2 bsize=4096
log =internal log bsize=4096 blocks=2560, version=1
= sectsz=512 sunit=0 blks
realtime =none extsz=65536 blocks=0, rtextents=0

Для задания метки тома в системе XFS используется опция -L с именем. Для добавления метки к существующей файловой системе XFS используется команда xfs_admin с опцией -L. Для просмотра метки используется команда xfs_admin с опцией -l. В отличие от ext2, ext3 и ReiserFS максимальное число символов в метке составляет 12.

Создание файловой системы vfat

Листинг 15. Создание файловой системы vfat

root@ttyp0[knoppix]# mkfs -t vfat /dev/hda8
mkfs.vfat 2.10 (22 Sep 2003)

Метка тома в системе FAT32 назначается с помощью опции -n. Команда e2label отображает или устанавливает метку тома в системе vfat, а также в разделах ext. Длина метки ограничена 16 символами.

Создание пространства подкачки

Листинг 16. Создание пространства подкачки

root@ttyp0[knoppix]# mkswap /dev/hda5
Setting up swapspace version 1, size = 534605 kB

Разделы подкачки, в отличие от обыкновенных файловых систем, не монтируются, а активизируются командой swapon. Стартовые сценарии Linux автоматически активизируют разделы подкачки.

Другие инструменты и файловые системы

Следующие инструменты и файловые системы не входят в цели данного экзамена LPI. Здесь мы приводим очень краткий обзор инструментов и файловых систем, которые вам могут встретиться.

Инструменты для создания разделов

Многие дистрибутивы Linux содержат команды cfdisk и sfdisk. Команда cfdisk предоставляет более удобный графический интерфейс, чем fdisk, используя библиотеку функций ncurses, как показано на рисунке 1. Команда sfdisk предназначена для использования программистами и допускает использование сценариев. Применяйте ее, только если умеете ею пользоваться.

Рисунок 1. Использование cfdisk
Использование cfdisk

Другим распространенным инструментом для работы с таблицей разделов является команда parted, с помощью которой можно изменять и формировать множество типов разделов, а также создавать и удалять их. Для изменения объема NTFS- раздела вместо команды parted используется ntfsresize. Команда qtparted использует графический интерфейс на базе Qt. Она выполняет как функции parted, так и ntfsresize.

Команда gparted – еще один инструмент с графическим интерфейсом, разработанный для среды GNOME. Она использует библиотеки GTK+GUI, как показано на рисунке 2.

Рисунок 2. Применение gparted
Применение gparted

Имеется также ряд коммерческих инструментов для создания дисковых разделов. Возможно, наиболее известный из них – PartitionMagic, теперь распространяемый Symantec.

Многие дистрибутивы позволяют делить диск на разделы, а иногда также сжимать существующие разделы Windows NTFS или FAT32 в процессе установки. Более точную информацию см. в руководстве по установке конкретного дистрибутива.

Диспетчер логических томов

Диспетчер логических томов (LVM) для Linux позволяет объединять несколько физических устройств хранения в единую группу томов. Например, можно добавить раздел к существующей группе томов, вместо того чтобы искать необходимое для вашей файловой системы непрерывное дисковое пространство.

RAID

RAID (резервированный массив независимых дисков) – это технология, обеспечивающая надежное хранение информации с использованием недорогих дисков, которые гораздо доступнее используемых в системах высшей ценовой категории. Существует несколько типов RAID-массивов. Технология RAID может быть реализована как на аппаратном уровне, так и на программном. Linux поддерживает оба варианта.

Другие файловые системы

Вам также могут встретиться файловые системы, не рассмотренные здесь.

Journaled File System (JFS) от IBM, в настоящее время используемая в корпоративных серверах компании IBM, разработана для серверных сред с высокой пропускной способностью. Она реализована для Linux и входит в состав некоторых дистрибутивов. Для создания файловой системы JFS используется команда mkfs.jfs.

Существуют и другие файловые системы, например cramfs, часто используемая встроенными устройствами.

В следующем разделе рассказывается, как поддерживать целостность файловой системы и что делать при возникновении неполадок.

Взято на ibm developerworks

Похожие посты
  • LPI 101: Устройства, файловые системы Linux и стандарт FHS. Установка владельца и группы файла
  • LPI 101: Устройства, файловые системы Linux и стандарт FHS. Монтирование и размонтирование файловых систем
  • LPI 101: Устройства, файловые системы Linux и стандарт FHS. Жесткие и символические ссылки
  • Описание более 350 команд Linux c примерами.
  • Почти готов Windows Server 2008, плагин для Firefox, создание своего дистриба Ubuntu
  • LPI 101: Устройства, файловые системы Linux и стандарт FHS. Целостность файловых систем
  • Создание записей в журнале событий операционной системы Windows Server 2003
  • Mac4Lin: как Linux превратить в Mac
  • Статья про создание raid-массива на системах LINUX
  • LPI 101: Устройства, файловые системы Linux и стандарт FHS. Дисковые квоты
  • Комментарии

    Your email is never published nor shared. Required fields are marked *

    *
    *