FreeBSD - изменение зарезервированного обьема дискового пространства

Версия для печатиОтправить другуPDF version

FreeBSD Logo

Собирая очередной програмнный RAID5 на FreeBSD, решил обратить внимание сообщества на следующий момент:

# df -h

Filesystem          Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm0a    446G    4,4G    405G     1%    /
devfs               1,0K    1,0K      0B   100%    /dev
/dev/raid5/raid5     13T    8,0K     12T     0%    /raid5

"Пропал" терабайт доступного дискового пространства... Как это возможно?

Дело в том, что часть каждого раздела UFS (по умолчанию 8%) зарезервировано для использования операционной системой и пользователем root. Утилита df не учитывает это при подсчёте значения в колонке Capacity, так что оно может превышать 100%. Обратите внимание, что колонка Blocks всегда больше, чем сумма значений в колонках Used и Avail, обычно на 8%.

В моем случае, поскольку раздел довольно большой, потеря дискового пространства довольно существенная, поэтому изменим размер зарезервированного пространства до 2% (260GB должно быть более чем достаточно...)

Отмонтируем раздел:

umount /dev/raid5/raid5

С помощью утилиты tunefs изменим размер зарезервированного дискового пространства:

tunefs -m 2 /dev/raid5/raid5
tunefs: minimum percentage of free space changes from 8% to 2%
tunefs: should optimize for space with minfree < 8%

Монтируем раздел:

mount -t ufs /dev/raid5/raid5 /raid5

Проверяем результат:

df -h

Filesystem          Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm0a    446G    4,4G    405G     1%    /
devfs               1,0K    1,0K      0B   100%    /dev
/dev/raid5/raid5     13T    8,0K     13T     0%    /raid5

Поскольку в даном выводе размер зарезервированного пространства не подсчитать, ознакомимся с выводом утилиты df без ключа -h:

# df

Filesystem         1K-blocks    Used       Avail Capacity  Mounted on
/dev/mirror/gm0a   467188468 4627044   425186348     1%    /
devfs                      1       1           0   100%    /dev
/dev/raid5/raid5 14191346200       8 13907519268     0%    /raid5

Посчитаем процентное соотношение:

13907519268 х 100 / 14191346200 = 97,99

Получается 98% доступно... Все сходится.

Также стоит обратить внимание еще на такой момент. При уменьшении зарезервированного дисткового пространства до 5% и ниже, FFS отключает алгоритм оптимизации выделения свободных блоков, что приводит к росту фрагментации, росту затрат дискового пространства при расположении файлов (из-за неоптимального расположения, части блоков остаются не занятыми, если файл не занимает его целиком) и, теоретически, к снижению скорости чтения. Здесь стоит подумать и выбирать: оставить зарезервированное пространство, либо отказываться от него и иметь возможность заюзать лишние гигабайты, и получить выше перечисленные проблемы.

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

Ваша оценка: Нет Средняя: 4.4 (5 голосов)

Вставай, Україно!

Литература