Описание группы блоков
В описании группы блоков можно найти довольно интересную информацию. Например (см. листинг 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. Из инфориации о дисковом пространстве, выделенном каждой из групп блоков, можно узнать конкретный диапазон номеров индексных дескрипторов и логических блоков, что может быть использовано для дальнейших оценок и расчетов.