Я новичок в VPS и очень плохо разбираюсь в Linux.
Я использовал общий хостинг с 3 лет, где у меня было почти 100 веб-сайтов Joomla, с 16 ГБ дискового пространства и 18 ГБ ежемесячной передачи.
На виртуальном хостинге было предупреждение о сбое резервного копирования Inodes, так как у меня много мелких файлов, но ни на сервере, ни на моих сайтах не произошло сбоя.
Теперь я перешел на VPS с 2 ГБ ОЗУ и жестким диском на 50 ГБ. После перехода на VPS и перемещения сайтов один за другим мой лимит Inodes превышен (137%).
Теперь, когда я пытаюсь распаковать zip-файл размером 600 МБ, он говорит, что предел памяти php превысил что-то ...... и мой сервер упал / отключился.
После обращения в службу поддержки хостинг-провайдера они сказали, что это происходит из-за моих inodes.
Любой, пожалуйста, помогите мне, как я могу настроить сервер, так что - 1. Если файлов больше, чем лимит inodes, просто запретите резервное копирование inodes, но не сбой сервера. 2. Если я загружаю файл большего размера, чем поддерживает сервер, или использую больше памяти, чем имеет сервер, просто отклоните текущую операцию, но не сбой сервера.
ad inodes - вам нужна более крупная файловая система. Иноды - это что-то вроде телефонного списка, каждый файл и каталог перечислены здесь, чтобы ОС могла легко это найти (они содержат метаданные файла и адрес на диске, где хранятся данные). Если у вас много крошечных файлов, этот список может быть полным, и вы не сможете создать ни одного нового файла - включая временные файлы, файлы pid и так далее. Поэтому вы должны ограничить количество ваших файлов, чтобы получить большую файловую систему.
ad memory limit - вы можете настроить его в php.ini, сколько памяти php может использовать. Когда этот лимит достигнут, PHP просто заканчивается фатальной ошибкой (это не аварийный сервер, просто ошибка в одном запросе). Вы должны установить этот лимит сверху. Но будьте осторожны - это определенно плохая идея - дать PHP всю память сервера. 2 Гб для извлечения 600MB zip слишком мало. Может быть, вы можете использовать функцию exec() и запустить unzip как обычную команду bash.
.