Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> Файловая система —> tunefs

tunefs - настройка (тюнинг) существующей файловой системы

Автор: lissyara.


   tunefs - программа позволяющая менять настройки файловой системы (SoftUpdates, зарезервированное свободное место, ожидаемый средний размер файла, дополнительная метка тома...). Сама утилита только меняет параметрами. Запускается только на отмонтированных, или смонтированных в режиме "тока чтение" файловых системах. Сам я, практически, её юзал только для изменения зарезервированного места (по дефолту, 8% места на разделе резервируется - т.е. по достижении этого порога обычные пользователи не смогут вести запись в раздел, только root сможет. Связано это с тем, что при использовании более 85% места на диске начинается сильная фрагментация файлов и снижается быстродействие.) - на файловом сервере это было неактуально - там сетка была на порядок медленней чем диск, поэтому переставил с 8% до 2% (цифра взята с потолка - поэтому руководствоваться ей не надо).
   Ключики:
-A - ФС имеет несколько резервных копий суперблока - если задать эту опцию то всё копии будут меняться как и первичный суперблок. Потенциально опасно.
-a enable | disable - включить/выключить административные ACL (листы контроля доступа)
-e maxbpg - максимальное число блоков, которое может занять один файл в пределах группы цилиндров, прежде чем принудительно начнёт размещаться в другой группе цилиндров (Глубокий смысл в том, чтобы помешать одному файлу занять все блоки одной группы цилиндров, т.к. в дальнейшем будет медленный доступ к другим файлам размешённым в этой же группе). Для ФС где хранятся, в-основном, большие файлы, значение должно быть увеличено.
-f avgfilesize - задаёт ожидаемый средний размер файла
-L volname - добавить/изменить дополнительную метку тома ФС
-l enable | disable - собственно включены или отключены `мульти`метки тома... (если я правильно понял)
-m minfree - процент места, резервируемый от использования "обычными" пользователями (root может пользоваться этим местом). Если увеличить это значение выше заполненности диска (например свободно 9% а вы поставили 10%) - то юзеры будут в пролёте, пока не освободится 10 и более процентов места :)
-n enable | disable - включение/выключение Soft Updates (это такая феня для асинхронной записи на диск - прилично ускоряет работу. По дефолту начиная с 4.x (точно не помню) включается само для всех файловых систем, кроме корневой.)
-o space | time - как оптимизировать файловую систему - для минимизации времени поиска блоков, или для уменьшения фрагментации. В нормальных условиях ядро само смотрит что выбрать, исходя из процента фрагментации файловой системы.
-p - показывает текущие настройки файловой системы. Больше инфы можно получить программой dumpfs.
-s avgfpdir - задаёт ожидаемое число файлов в каталоге (среднее)
   Ну, и напоследок, пара опытов. Отмонтируем (на этом этапе не обязательно) и смотрим инфу по разделу:
/usr/home/lissyara/>df -h
Filesystem                  Size    Used   Avail Capacity  Mounted on
/dev/da0s1a                 989M     55M    855M     6%    /
devfs                       1.0K    1.0K      0B   100%    /dev
/dev/da0s1d                 5.8G     12K    5.3G     0%    /tmp
/dev/da1s1d                  17G    1.0G     14G     6%    /usr
/dev/da0s1e                 8.8G    7.9M    8.1G     0%    /var
192.168.8.251:/usr/ports     24G    5.2G     17G    23%    /usr/ports
/usr/home/lissyara/>umount /tmp
/usr/home/lissyara/>tunefs -p /dev/da0s1d
tunefs: ACLs: (-a)                                         disabled
tunefs: MAC multilabel: (-l)                               disabled
tunefs: soft updates: (-n)                                 enabled
tunefs: maximum blocks per file in a cylinder group: (-e)  2048
tunefs: average file size: (-f)                            16384
tunefs: average number of files in a directory: (-s)       64
tunefs: minimum percentage of free space: (-m)             8%
tunefs: optimization preference: (-o)                      time
tunefs: volume label: (-L)
/usr/home/lissyara/>

Ставим метку:
/usr/home/lissyara/>tunefs -l enable /dev/da0s1d
tunefs: multilabel set
/usr/home/lissyara/>tunefs -L "file system for temporary files" /dev/da0s1d
tunefs: bad volume label. Valid characters are alphanumerics.
/usr/home/lissyara/>tunefs -L FileSystemForTemporaryFiles /dev/da0s1d
/usr/home/lissyara/>tunefs -p /dev/da0s1d
tunefs: ACLs: (-a)                                        disabled
tunefs: MAC multilabel: (-l)                              enabled
tunefs: soft updates: (-n)                                enabled
tunefs: maximum blocks per file in a cylinder group: (-e) 2048
tunefs: average file size: (-f)                           16384
tunefs: average number of files in a directory: (-s)      64
tunefs: minimum percentage of free space: (-m)            8%
tunefs: optimization preference: (-o)                     time
tunefs: volume label: (-L)               FileSystemForTemporaryFiles
/usr/home/lissyara/>

Тут был облом - хотелось с пробелами - не дало. Не помогли ни кавычки ни экранирование. Также не дала сделать с подчёркиваниями или тире... Собака страшная :) Ну, а дальше идёт бессмысленный набор действий над файловой системой, который, вероятно, уменьшит её быстродействие :)
/usr/home/lissyara/>tunefs -a enable /dev/da0s1d
tunefs: ACLs set
/usr/home/lissyara/>tunefs -n disable /dev/da0s1d
tunefs: soft updates cleared
/usr/home/lissyara/>tunefs -e 4096 /dev/da0s1d
tunefs: maximum blocks per file in a cylinder group changes from 2048 to 4096
/usr/home/lissyara/>tunefs -f 32768 /dev/da0s1d
tunefs: average file size changes from 16384 to 32768
/usr/home/lissyara/>tunefs -s 32 /dev/da0s1d
tunefs: expected number of files per directory changes from 64 to 32
/usr/home/lissyara/>tunefs -m 1 /dev/da0s1d
tunefs: minimum percentage of free space changes from 8% to 1%
tunefs: should optimize for space with minfree < 8%
/usr/home/lissyara/>tunefs -o space /dev/da0s1d
tunefs: optimization preference changes from time to space
/usr/home/lissyara/>tunefs -p /dev/da0s1d
tunefs: ACLs: (-a)                                         enabled
tunefs: MAC multilabel: (-l)                               enabled
tunefs: soft updates: (-n)                                 disabled
tunefs: maximum blocks per file in a cylinder group: (-e)  4096
tunefs: average file size: (-f)                            32768
tunefs: average number of files in a directory: (-s)       32
tunefs: minimum percentage of free space: (-m)             1%
tunefs: optimization preference: (-o)                      space
tunefs: volume label: (-L)                FileSystemForTemporaryFiles
/usr/home/lissyara/>

Итак - включили ACL (на этом разделе надо вести чёткий учёт где и чьё что лежит! :))), отключили "soft updates" (ну, сами подумайте - а если отключат питание - в разделе /tmp могут быть бесценные данные которые повредятся :)), увеличили максимальное число блоков на файл (ну а куда нам торопиться?), увеличили максимальный средний размер файла (в /tmp же кино в основном хранить :)), уменьшили среднее число файлов  в директории (вот это пожалуй единственно верное и нужное для этой ФС из всего листинга...), уменьшили процент резервируемого места (фрагментация, дефрагментация... всё это от лукавого :)), ну и на бис сменили тип оптимизации. Просто так :)

P.S. Не воспринимайте серьёзно комментарии к последнему листингу. И сам листинг тоже. Весна, понимаешь, шизофрения обострилась... :)))



размещено: 2006-05-04,
последнее обновление: 2010-08-21,
автор: lissyara


Товаdfрищщи!, 2012-02-05 в 17:04:09

   Товарищщи!    Это поля для   ввода комментариев к статье, а   не для вопросов. Сюда  пишите  найденные баги,   или какие-то   фичи :)
Для  вопросов  есть  форум!



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.1243 секунд
Из них PHP: 55%; SQL: 45%; Число SQL-запросов: 77 шт.
Исходный размер: 21477; Сжатая: 6583