Описание группы блоков

В описании группы блоков можно найти довольно интересную информацию. Например (см. листинг 7), битовая карта блоков располагаеться в блоке 2 (00 00 00 02h), а индексных дескрипторов в блоке 3 (00 00 00 03h). Таблица индексных дескрипторов начинается с блока 4 (00 00 00 04h). В данной группе имеется еще 6665 (lA09h) свободных блоков и 16404 (4014h) свободных индексных дескрипторов, которые могут позволить создать такое же количество файлов. В рассматриваемой группе, судя по представленной информации, всего 2 каталога.

С помощью отладчика файловой системы debugfs (справка о командах отладчика приведена в прил. 2) можно одновременно вывести информацию о суперблоке и группах блоков в более удобной форме. Для этого предлагается использовать команду:

debugfs -R stats device

Где вместо device указывается конкретный файл блочного устройства, например /dev/hda7, который соответствует логическому разделу жесткого диска с файловой системой ext2fs

Ural

<not available>

e21e03f0-78d6-lld8-8d23-el4cf2ed36f3

0xEF53

1 (dynamic)

has_journal filetype needs_recovery

(none)

clean

Continue

Linux

919296

1835008

Filesystem volume name: Last mounted on: Filesystem UUID: Filesystem magic number: Filesystem revision #: Filesystem features: sparse_super Default mount options: Filesystem state: Errors behavior: Filesystem OS type: Inode count: Block count:

31

Reserved block count: 91759

Free blocks: 1263777

Free inodes: 7 9917 9

First block: 0

Block size: 4096

Fragment size: 4096

Blocks per group: 327 68

Fragments per group: 327 68

Inodes per group: 16416

Inode blocks per group: 513

Filesystem created: Thu Mar 18 17:22:11 2004

Last mount time: Wed Mar 31 10:51:19 2004

Last write time: Wed Mar 31 10:51:19 2004

Mount count: 12

Maximum mount count: 39 лмаксимальное число монтирований

Last checked: Thu Mar 18 17:22:11 2004

Check interval: 15552000 (6 months)

Next check after: Tue Sep 14 18:22:11 2004

Reserved blocks uid: 0 (user root)

Reserved blocks gid: 0 (group root)

First inode: 11

Inode size: 128

Journal UUID: <none>

Journal inode: 8

Journal device: 0x0000

First orphan inode: 215730 Лпервый «осиротевший» дескриптор

Directories: 6542

Group 0: block bitmap at 2, inode bitmap at 3, inode table at 4 6907 free blocks, 16404 free inodes, 2 used directories

Group 1: block bitmap at 32770, inode bitmap at 32771, inode table at 32772 21539 free blocks, 13804 free inodes, 87 used directories

Group 2: block bitmap at 65536, inode bitmap at 65537, inode table at 65538 23284 free blocks, 14394 free inodes, 158 used directories

Group 3: block bitmap at 98306, inode bitmap at 98307, inode table at 98308 23711 free blocks, 14240 free inodes, 190 used directories

Group 4: block bitmap at 131072, inode bitmap at 131073, inode table at 131074 23287 free blocks, 14918 free inodes, 116 used directories

Group 5: block bitmap at 163842, inode bitmap at 163843, inode table at 163844 22903 free blocks, 14532 free inodes, 84 used directories

Листинг 8. Фрагмент листинга суперблока и групп блоков, полученный с помощью отладчика Debugfs

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