Я понимаю, что по умолчанию вновь созданные файловые системы будут создаваться с 5% пространства, выделенного для root. Я также знаю, что вы можете изменить определенное пространство с помощью:
tune2fs -m 1 /dev/sdXY
Что меня интересует, так это то, какова реальная цель этого зарезервированного пространства. Служит ли это для каких-либо практических целей, которые в некоторых случаях заслуживают более 5% пространства?
Причина, по которой я наткнулся на этот вопрос, заключается в том, что мы недавно создали хранилище файлов объемом 1 ТБ и не могли понять, почему из-за df -h мы упустили 5% нашей емкости.
filesystems
root
disk-usage
suitedupgeek
источник
источник
Ответы:
Экономия места для важных корневых процессов (и возможных действий по спасению) является одной из причин.
Но есть и другое. Ext3 довольно хорошо избегает фрагментации файловой системы, но как только вы наберете около 95% заполнения, такое поведение сойдет с обрыва, и вдруг производительность файловой системы станет беспорядочной. Таким образом, оставив зарезервированные 5%, вы получите буфер против этого.
Ext4 должен быть лучше в этом, как объяснил разработчик файловой системы Linux / гуру Теодор Цо :
источник
Если вы разрешите другим входить в вашу систему, например, через ssh, резервирование этих 5% блоков гарантирует, что внешние пользователи не смогут заполнить диск. Даже если вы не разрешаете другим входить в вашу систему, зарезервированные блоки не позволяют программам, не запущенным от имени root, заполнить ваш диск.
источник
С блоками, зарезервированными вашими пользователями, и сервисы, которые работают как определенные пользователи, а не как root, не могут заполнить файловую систему и потенциально могут нарушить другие функции, которые необходимо записать в указанную файловую систему - хотя сервисы, работающие как root, все еще могут сделать это полностью полный конечно.
Это также дает вам некоторое пространство для работы, когда пользователи жалуются, что диск заполнен, или службы начинают отказывать, потому что файловая система заполнена. Например, вы можете заархивировать некоторые файлы в zip / gz / 7zip архивы перед их удалением (хотя, если файловая система была полностью заполнена, есть вероятность, что у вас есть какая-то другая файловая система, в которой вы могли бы вместо этого создать архивный файл).
Долгое время по умолчанию было 5% , со времен, когда диски были намного меньше (десятки мегабайт, а не сотни гигабайт), поэтому 5% было не так уж много. К счастью , она легко может быть настроена вниз на меньший процент , как вы говорите, или установить на определенное количество блоков , если вы используете
tune2fs
«ы-r
вариант вместо-m
. В обоих случаях вы можете дать параметр 0 , чтобы включить резервирование от полностью - я бы не сделать это для/
,/tmp
,/var
и так далее, но вы можете для файловой системы , которая только действует как хранилище пользователя (скажем , глобальное file- поделиться) или тот, который просто содержит файлы фиксированного размера (например, виртуальные машины фиксированного размера), которые будут расти только при создании нового.источник
Значение по умолчанию 5% предназначено для системных разделов. Например, если ваше дисковое пространство заполнено, системные журналы (
/var/log
) и почтовый ящик root (/var/mail/root
) могут по-прежнему получать важную информацию. Для/home
общего или общего хранилища данных нет необходимости оставлять место для root. Для особых нужд вы можете сменить пользователя, который получает аварийное пространство (tune2fs -u 1234
).Есть еще одна причина, по которой файловая система ext [234] не заполняется полностью - это фрагментация .
источник