На главную
- Инструкции для UNIX-систем
- Обзор
- Подключение к серверу по SSH
- Подключение к серверу по SFTP
- Авторизация по SSH-ключу
- Смена или сброс пароля root
- Смена пароля root для MySQL
- Добавление пользователей
- Управление правами доступа
- Защита SSH от подбора пароля. Fail2ban
- Создание дампа базы и восстановление данных
- Установка LAMP на Ubuntu
- Установка phpMyAdmin на Ubuntu с LAMP
- Установка SSL-сертификата на Nginx
- Установка модулей PHP (CentOS)
- Установка модулей PHP (Debian / Ubuntu)
- Настройка параметров PHP (CentOS)
- Настройка параметров PHP (Debian / Ubuntu)
- Настройка перенаправлений
- Настройка перенаправлений (Nginx)
- Настройка FTP в Ubuntu 20.04
- Оптимизация MySQL с помощью MySQLTuner
- Сканирование с помощью ClamAV
- Управление службами в systemd
- Логирование в systemd
- Аудит системных событий
- Добавление дополнительного IP
- Настройка статического IP
- Добавление и удаление диска
- Изменение размера диска
- Монтирование резервных копий
- Создание swap, изменение его размера
- Установка и удаление программ. Менеджеры пакетов
- Установка графической оболочки XFCE на Ubuntu
- Настройка iptables
- Настройка OpenVPN
- Установка произвольной ОС на сервер
- Удаленный доступ к MySQL
- Установка QEMU-агента
- Установка Zabbix-агента
- Установка и работа с PostgreSQL
- Установка почтового сервера iRedMail
- Настройка почтового сервера iRedMail
- Установка SSL на сервер с Keitaro
- Запуск Wordpress на сервере c Ubuntu
- Запуск бота в фоновом режиме
- Установка сертификатов Минцифры
- Подготовка образа для создания облачного сервера
- Создание и развертывание образа с помощью утилиты dd
- Установка Minecraft на CentOS 7
- Запуск сервера Minecraft
- Запуск сервера с CS 1.6 и EngineGP
- Запуск сервера RageMP
- Настройка сети Outline
- Изменение настроек DNS-серверов
- Диагностика и решение проблем
- Обзор
- Базовая диагностика при проблемах в работе сайта
- Проблемы с базой данных
- Анализ дискового пространства: ncdu, du
- Данные о дисках: df, lsblk, parted, fdisk
- Контроль нагрузки и процессов: top, htop, atop
- Завершение процессов OOM Killer
- Переполнение inodes
- Проверка файловой системы
- Ускорение работы сайта: перенос MySQL в tmpfs
- Устранение ошибки «Could not get lock /var/lib/dpkg/lock»
- Другие возможные проблемы
- Инструкции для Windows
- Панели управления
Базовая диагностика при проблемах в работе сайта
Если в работе вашего сайта, размещенного на VDS, возникли неполадки (недоступность сайта, ошибки 500, 502, 504, ошибки базы данных и др.), рекомендуем перед обращением в службу технической поддержки выполнить базовую диагностику по инструкции ниже. Полученная информация поможет либо решить проблему самостоятельно, либо ускорить обработку обращения нашими специалистами.
Доступен ли сервер из внешней сети?
Проверить доступность сервера проще всего с помощью любого сервиса в сети, предоставляющего такую возможность: найти подобные сайты можно по запросам «ping online», «проверка доступности», «сервис ping» и так далее; их очень много и они бесплатны.
Также проверку можно выполнить из командной строки вашего компьютера.
В командной строке выполните:
ping IP_адрес_сервера
Если сервер доступен, в выводе сразу начнет отображаться информация об отправке пакетов и получении ответов от сервера. Это выглядит примерно следующим образом:
Для остановки выполнения команды нажмите Ctrl+C.
Если обмен пакетами не происходит — сервер недоступен.
В этом случае попробуйте проверить сетевые настройки на сервере. Для этого необходимо подключиться по SSH или использовать веб-консоль в панели управления.
Выполните команду:
ifconfig
Пример вывода с корректными настройками:
Если строка inet addr
пустая, есть проблема с сетевыми настройками, которую можно попробовать решить настройкой статического IP-адреса.
Запущены ли службы для работы сайтов?
Для проверки работы служб подключитесь к серверу по SSH или используйте веб-консоль в панели управления.
Проверки выполняются командой вида:
service имя_службы status
Например, для Apache это будет команда:
service apache2 status
или:
service httpd status
Для Nginx:
service nginx status
Для MySQL:
service mysql status
service mysqld status
Для MariaDB:
service mariadb status
Примеры запущенных служб:
Если в выводе не фигурирует слово running
, служба не запущена.
В этом случае в первую очередь необходимо попытаться запустить службу. Это выполняется командой вида:
service имя_службы start
Например, для Apache2:
service apache2 start
Или:
service httpd start
Nginx:
service nginx start
MySQL:
service mysql start
service mysqld start
MariaDB:
service mariadb start
После запуска службы повторно проверьте работу сайтов. Если проблема сохраняется, переходите к следующим проверкам.
Состояние дискового пространства
Общую информацию можно получить командой:
df -h
В выводе будут данные о размере диска и доступном объеме.
Если дисковое пространство исчерпано, необходимо принять меры: расширить диск или удалить ненужные файлы.
Для работы с дисковым пространством можно использовать утилиты ncdu
и du
. Подробнее о работе с ними — в статье Анализ дискового пространства: ncdu, du.
Состояние inodes
Если индексные дескрипторы — inodes — исчерпаны, это тоже может быть причиной неполадок. В работе сервера начнут возникать ошибки и появляться уведомления о недостаточном дисковом пространстве.
Подробнее о диагностике и устранении проблемы см. в статье Переполнение inodes.
Наличие необходимых прав для директорий с логами
Необходимо проверить, назначены ли права на запись для директорий, в которые пишутся логи основных служб сервера.
Это директории:
/var/log/mysql/
/var/log/nginx/
/var/log/apache2/ или /var/log/httpd/
Проверить наличие нужных прав можно командой:
ls -l /var/log/
Пример вывода:
Здесь мы видим, что у интересующих нас каталогов установлены корректные права, а именно — у владельца есть права на запись, чтение и исполнение (rwx):
drwxr-x--- 2 root adm 4096 Aug 16 09:26 apache2
drwxrwxr-x 2 mysql adm 4096 Aug 16 09:26 mysql
drwxr-xr-x 2 root adm 4096 Aug 16 09:27 nginx
Если у каталога нет нужных прав, их можно установить командой chmod
:
chmod -R 755 /путь/к/каталогу/
Например:
chmod -R 755 /var/log/nginx/
В данном случае будут установлены права 755, т.е. rwxr-xr-x, то есть полный набор прав для владельца и права на чтение и исполнение — для остальных.
Если при проверке вы видите, что директория с логами той или иной службы отсутствует, ее необходимо создать командой mkdir и установить нужные права, например:
mkdir /var/log/mysql/
chmod -R 775 /var/log/mysql/
После того, как выполнены проверки дискового пространства, inodes и прав, повторно запустите службы и проверьте работу сайта.
Если часть служб по-прежнему не запускается или сохраняются проблемы в работе сайта, создайте обращение в техническую поддержку и сообщите в нем полученную в ходе диагностики информацию.