Ошибка при установке веб-окружения - разбор причин
Установка веб-окружения обрывается на пакетах или заканчивается неработающим сервером. Разбираем причины в порядке убывания частоты.
С чего начать
Смотрим, на чём именно оборвалась установка:
# журнал установки пишется одним файлом, последние строки называют пакетtail -50 /var/log/bitrix-env-install.loggrep -iE 'error|fail|conflict' /var/log/bitrix-env-install.log | tail -20Названный в ошибке пакет - половина ответа. Конфликт версий, недоступный репозиторий и нехватка места выглядят в журнале по-разному, и лечатся они тоже по-разному.
Проверяем систему до повторного запуска:
cat /etc/os-release | head -2 # версия дистрибутиваfree -m | head -2 # свободная памятьdf -h / /home # свободное местоgetenforce # состояние SELinux
# убитые системой процессы: так выглядит нехватка памяти в журнале ядраdmesg | grep -i 'killed process' | tail -5Окружение рассчитано на определённые дистрибутивы, и на соседних оно ставится через раз. Четыре значения выше отсекают сразу три частые причины из пяти описанных ниже.
Смотрим, не занят ли сервер чужим веб-сервером:
# кто слушает 80 и 443: занятый порт ломает установку молчаss -lntp | grep -E ':80|:443'
# следы чужих сборок и панелей управления хостингомrpm -qa | grep -iE 'httpd|nginx|apache|isp|cpanel' | headОкружение рассчитывает на чистую систему и своими руками ставит весь набор служб. Оставшаяся от прошлой установки панель управления перехватывает те же порты и те же конфигурационные файлы.
Причины
-
Система не из поддерживаемых примерно 30% случаев
ПризнакУстановка падает на первых же пакетах, в журнале конфликты зависимостей.
ПроверкаСверяем дистрибутив и его версию с требованиями окружения.
Что делатьСтавим окружение на поддерживаемый дистрибутив; на прочих собирают связку веб-сервера, PHP и базы вручную.
-
На сервере уже стоит чужой веб-сервер примерно 25% случаев
ПризнакУстановка проходит, но сайт не открывается либо служба не стартует из-за занятого порта.
ПроверкаСмотрим, кто слушает 80 и 443 порты, и какие пакеты веб-сервера уже установлены.
Что делатьУдаляем чужой веб-сервер и панель управления до установки: окружение рассчитывает на чистую систему.
-
Репозиторий пакетов недоступен примерно 20% случаев
ПризнакОшибка загрузки пакета или таймаут, повтор даёт тот же результат.
ПроверкаПроверяем доступ наружу и разрешение имён с самого сервера.
Что делатьОткрываем исходящие подключения на сервере или прописываем зеркало репозитория в его настройках.
-
Не хватает памяти или места на диске примерно 15% случаев
ПризнакУстановка обрывается на середине без внятной ошибки, процесс убит системой.
ПроверкаСмотрим свободную память и место на разделах, а также сообщения ядра об убитых процессах.
Что делатьДобавляем память или файл подкачки и освобождаем место; минимальные требования окружения выше, чем у голой системы.
-
SELinux блокирует запись и запуск примерно 10% случаев
ПризнакПакеты встали, но службы не стартуют, а в системном журнале отказы доступа.
ПроверкаПроверяем режим SELinux и ищем записи об отказах в системном журнале.
Что делатьПереводим SELinux в разрешающий режим до установки, как этого требует документация окружения.
Частые вопросы
Можно ли поставить окружение поверх панели управления хостингом?
Нет, они управляют одними и теми же службами и конфликтуют за настройки. Сервер под окружение берут чистым, без панели и стороннего веб-сервера.
Установка прошла, а сайт не открывается - куда смотреть?
Сначала на то, стартовали ли службы веб-сервера и PHP, потом на конфигурацию сайта в окружении. Пустая страница при живых службах означает, что сайт в окружении ещё не заведён.
Сколько памяти нужно серверу?
Меньше двух гигабайт установка проходит с трудом, а рабочий магазин требует заметно больше. При нехватке процесс установки убивает система, и в журнале остаётся обрыв без ошибки.
Ставить окружение или собирать связку вручную?
Окружение экономит время и даёт штатное меню обслуживания. Ручная сборка нужна там, где дистрибутив не поддерживается или на сервере уже живут чужие сервисы.
Смежное
- BitrixVM и веб-окружение - оглавление подтемы
- Установка и настройка BitrixVM - штатный путь установки
- Обновление окружения и смена версии PHP - что делать после установки
- Сервер и поиск - устройство сервера целиком
- Мастер установки не проходит - следующий этап: окружение встало, а продукт не ставится