Шаблон:Вопросы:Запуск КРОС после сбоя по питанию
!!!ВНИМАНИЕ!!!
В случае, когда для проверки запуска PostgreSQL, был использован наш скрипт, в дальнейшем команда start/stop/restart для smpo-server будет иметь вид:
service smpo-server start/stop/restart
Иногда возникает проблема старта сервиса smpo-server после сбоя по электропитанию. Решение данного вопроса требует некоторых действий на уровне ОС. Данная проблема связана со спецификой ведения контроля запущенных процессов в ОС семейства Linux, где в качестве контроля работы процессов используется создание файлов с индексом процесса. Поэтому, после аварийного выключения компьютера(то же самое, что и нажать кнопку "Резет"), файлы контроля процессов могут не удаляться, особенно в том случае, если они хранятся в нестандартном месте. Для восстановления работы комплекса рекомендуется выполнить следующие действия: 1. После загрузки ОС необходимо запустить "Terminal Fly": "Пуск"->"Системные"->"Terminal Fly" 2. Все действия необходимо выполнить с правами суперпользователя, поэтому выполняем команду: sudo su 3. Проверяем запущен ли PostgreSQL: ps -aux|grep postgres В результате выполнения команды, Вы должны получить примерно следующий отклик системы В этом случае Вам необходимо перезагрузить сервис smpo-server: /etc/init.d/smpo-server restart Далее переходим к пункту 7 4. Если отклик системы отличается от изображения в п.3, тогда выполняем следующие команды systemctl stop postgresql /etc/init.d/smpo-server stop ps -aux|grep smpo Отклик системы должен выглядеть примерно таким образом: 4.1. Если отклик системы выглядит следующим образом: То это говорит о том, что процесс не выгружен. В этом случае необходимо выполнить следующие команды: kill -9 <номер процесса> - в нашем примере номера процессов 19360 и 19378 5. Далее необходимо удалить файлы фиксирующие статус выполнения сервиса smpo-server: rm /usr/local/smpo-server/conf/pid rm /usr/local/smpo-server/conf/smpo.active 6. Запускаем сервисы: systemctl start postgresql /etc/init.d/smpo-server start Для проверки выполнения команд набрать: ps -aux|grep postgres Отклик системы должен выглядеть, как на рисунке в п.3 7. Далее в браузере проверяем работу КРОС.
Так же Вы можете воспользоваться файлом rescuesmpo.sh для выполнения действий без внешнего контроля.
Необходимо скачать файл и выполнить его в окне терминала. Для этого необходимо выполнить следующие действия:
1. После загрузки ОС необходимо запустить "Terminal Fly": "Пуск"->"Системные"->"Terminal Fly"
2. Перейти в каталог, куда сохранен, скачанный файл. По-умолчанию это каталог Загрузки: cd Загрузки
3. Выполнить запуск скрипта: sh ./rescuesmpo.sh
4. Проверить запуск КРОС в браузере.
Так же, можно попробовать, автоматизировать процесс проверки запуска PostgreSQL после аварийного выключения.
В начало статьи