Вот пользуетесь вы хостингом, а в какой-то момент приходит письмо, что заканчивается лимит на количество файлов. Проверяете, сколько свободного места — вроде бы много. Потом выясняется, что кроме свободного места на диске есть ещё какие-то индексные дескрипторы. В этой статье расскажем, что это такое, как они влияют на работу сайта и что делать, если почти использовали лимит.
Содержание
- Что такое индексные дескрипторы
- Что будет, если использовать все дескрипторы
- Как проверить количество использованных дескрипторов
- Что можно сделать
Что такое индексные дескрипторы
Мы используем операционную систему Linux на всех тарифах виртуального, VIP, реселлер и CMS-хостинга. Логика хранения данных в Linux и Windows отличается. В Windows есть только место на диске, которое занимает конкретный файл. А в Linux у каждого файла есть ещё один параметр — индексный дескриптор. По-английски он называется «inode».
Собственный индексный дескриптор есть у любого файла, письма и даже папки. В нём хранится служебная информация, например, размер и местоположение файла, права доступа, время последнего изменения. По сути, дескриптор — это данные о данных.
Проще всего представить файловую систему в виде библиотеки. Тогда файлы — это журналы и книги на стеллажах, а индексные дескрипторы — карточки в каталоге с местонахождением и описанием книг.
Чем больше файлов на сервере, тем сложнее серверу их обрабатывать. Возможно, при работе с хостингом вы замечали, что папки с большим количеством файлов даже открываются дольше. Это потому что сервер проверяет каждый файл перед тем, как открыть папку.
Диск и файловая система на виртуальном хостинге общие для всех пользователей сервера. Поэтому может быть такая ситуация, что слишком много файлов у кого-то одного, но сервер тормозит для всех. Поэтому мы и ввели ограничения на количество индексных дескрипторов для разных тарифов. Их можно посмотреть в описаниях к тарифам при нажатии на кнопку «Подробно о пакетах» и в Правилах пользования услугами:
Что будет, если использовать все дескрипторы
Если вы используете все дескрипторы, на хостинге перестанут создаваться новые файлы. Из-за этого могут возникнуть проблемы:
- сайт станет загружаться медленно;
- перестанут работать некоторые функции на сайте. Например, клиенты не смогут создать аккаунт или сделать заказ;
- начнут возникать ошибки 403 Forbidden или 503 Service Unavailable;
- перестанет работать почта.
Беспокоиться не о чем, пока вы не использовали 90 % дескрипторов. Когда это случится, мы отправим вам письмо на электронный адрес из вашего аккаунта.
Как проверить количество использованных дескрипторов
Общую статистику использованных дескрипторов можно посмотреть в cPanel. Меню со статистикой — справа на главной странице панели управления:
Здесь можно увидеть только общее количество использованных дескрипторов. К тому же эта статистика обновляется каждые 15 минут. Вы можете удалить файлы, но счётчик обновится не сразу.
Подробную статистику можно посмотреть в консоли. Для этого вам понадобится подключиться к виртуальному хостингу по протоколу SSH. Как это сделать можно прочесть тут.
Чтобы увидеть количество использованных дескрипторов в аккаунте, используйте такую команду:
find . | wc -l
В ответе увидите цифру — общее количество индексных дескрипторов. В пустом аккаунте с самого начала будет около 200 дескрипторов. Это системные файлы и папки.
Чтобы посмотреть, в какой папке больше всего файлов, введите команду:
find . -mindepth 2 | awk -F/ '{ print $2"/" }' | sort | uniq -c | sort -nr
В ответе увидите список всех папок в аккаунте с количеством дескрипторов в каждой из них.
Если хотите посмотреть подобный отчет содержимого папки «subdomains», перейдите в неё командой:
cd subdomains/
После этого введите такую-же команду, как и в предыдущем случае:
find . -mindepth 2 | awk -F/ '{ print $2"/" }' | sort | uniq -c | sort -nr
Ответ будет выглядеть так:
Подобным образом можно проверить количество дескрипторов в любой папке на хостинге.
Что можно сделать
Есть два способа решить проблему: перейти на тариф повыше или удалить ненужные файлы.
Переходить на более высокий тариф стоит, если проект развивается. Растёт сайт — растёт и количество файлов.
Если пока не готовы менять тариф, можно попробовать удалить ненужные файлы. Но будьте внимательны, чтобы случайно не удалить нужную папку.
Точно можно удалять письма и кэш. Если не удалять старые письма, они будут накапливаться и занимать лишние дескрипторы. Удалить ненужные письма можно через веб-интерфейс почты в cPanel.
Кэш — это временные или часто используемые файлы. Они могут накапливаться со временем, но без них сайт не перестанет работать.
Кэш может быть в папке «Iscache» в корне аккаунта или в директории с вашим сайтом. Поищите папки, в которые есть слово «cache».
Если не уверены, можно ли удалять папку, уточните это у разработчика сайта или темы
Нельзя удалять системные и служебные папки, это может нарушить работу сайта.
В системных папках хранятся файлы, которые нужны для правильной работы хостинга. Такие папки начинаются с точки, например, «.cagefs» или «.cpanel».
В служебных папках хранятся файлы, которые нужны для правильной работы сайта. Например, папки «etc», «logs», «mail», «ssl», «var», «tmp».
Перед тем, как удалять любые файлы, сделайте их резервную копию. Если случайно забыли сделать копию и удалили что-то важное, восстановите один из автоматических бэкапов.