воскресенье, 31 марта 2013 г.

Отключение резервирования с помощью tune2fs

Файловые системы ext* (т.е. ext2, ext3, ext4) по умолчанию резервируют 5% места на разделе для нужд суперпользователя. Даже в том случае, когда ФС забита до отказа, root может наслаждаться этими 5%. В том случае, если у вас /home находится на отдельном разделе, эти 5% - расточительство, т. к. суперпользователю в домашнем каталоге нечего делать с лишним местом. Проблему можно поправить при помщи утилиты tune2fs.

Для начала можно глянуть какая информация содержится в суперблоке раздела:

# tune2fs -l /dev/sda7

Получим что-то вроде этого:

tune2fs 1.42 (29-Nov-2011)
Filesystem volume name:   <none>
Last mounted on:          /home
Filesystem UUID:          748569b2-68a0-41f1-9d8b-84ae26529d89
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash
Default mount options:    user_xattr acl
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              4546560
Block count:              18177539
Reserved block count:     908876
Free blocks:              2625160
Free inodes:              4537731
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      1019
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Flex block group size:    16
Filesystem created:       Sat Sep 29 21:00:15 2012
Last mount time:          Sat Mar 30 16:06:26 2013
Last write time:          Sat Mar 30 16:06:26 2013
Mount count:              85
Maximum mount count:      -1
Last checked:             Sat Sep 29 21:00:15 2012
Check interval:           0 (<none>)
Lifetime writes:          839 GB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory hash:   half_md4
Directory Hash Seed:      d4446a19-7622-4ce2-9571-2b8accddffb7
Journal backup:           inode blocks


Здесь строка

Block count:              18177539

показывает общее количество блоков на разделе. Размер блоков показывает строка

Block size:               4096

и он составляет стандартные для ext* 4K. Количество зарезервированных блоков:

Reserved block count:     908876

Это и есть 5% от общего количества блоков.

Уменьшить количество резервных блоков можно с помощью команды:

# tune2fs -m 0 /dev/sda7

Здесь число после опции -m - это новый размер резервной области в процентах от общего размера раздела. В данном случае, резервная область устанавливается равной нулю, что вернуло мне почти 4 ГБ дискового пространства. Проверим:

# tune2fs -l /dev/sda7

и видим размер резервной области равный нулю:

Reserved block count:     0

Очень хорошо!

4 комментария:

  1. Проинсталировал систему Ubuntu 14.04 на чистый HDD. Разметку произвёл сам, в формате GPT. Выяснилось, что по умолчанию резервных блоков нет ни на одном из разделов ext4, включая тот, на котором стоит сама ОС. Почему так? Раньше такого не было на других машинах, может это как связанно с тем, что используется разметка gpt?

    ОтветитьУдалить
    Ответы
    1. Нет, это скорее связано с настройками mkfs, используемыми в дистрибутиве. У меня в федоре у рутовой фс есть резервные блоки, у хомяка нет. Таблица тоже gpt

      Удалить
  2. Прошу прощения за свой комментарий от 13 июня 2014 г., 4:08. Я в полубредовом состоянии умудрился отключить резервирование блоков ext4, и не заметить этого. Не спрашивайте как это я умудрился, факт остаётся фактом, в Ubuntu ext4 по умолчанию резервирует 5% как в gpt так и mbr. А статья прекрасна. Лучшая из известных мне в рунете, на данную тему.

    ОтветитьУдалить
    Ответы
    1. Прошу прощения за то, что не отвечал - как-то запарился. В любом случае - я рад, что ваш вопрос разрешился.
      Большое спасибо за похвалу - очень приятно.
      Насчет резервирования - ответивший вам Анонимный 31 июля 2014 г., 11:18 думаю прав, что некоторые дистры вполне способны отключать умолчальный 5% резерв.

      Удалить