...
В случае использования статических IP-адресов и отсутствующего (некорректно настроенного) сервера DNS, кассовый терминал не сможет загрузить пакеты обновления, так как не сможет преобразовать ХОСТ_СЕРВЕРА_УКМ_4 в IP-адрес. Поэтому сразу после установки ПО кассовых терминалов или перед началом обновления необходимо проверить с терминалов доступность сервера УКМ 4 по имени хоста. Для этого достаточно, подключившись на кассовый терминал по по SSH, выполнить команду: ping ХОСТ_СЕРВЕРА_УКМ_4.
...
Расположение пакетов обновления сервера УКМ 4 может быть следующим:
1) локально – в одном из каталогов сервера УКМ 4;
2) на на удалённом Web- или FTP-сервере.
...
При загрузке пакетов обновления по FTP- или HTTP-протоколам необходимо учитывать следующие особенности:
1) суммарный размер пакетов обновлений может достигать нескольких сот мегабайт, поэтому не рекомендуется использовать протоколы FTP и HTTP для загрузки обновлений в условиях нестабильной связи;
2) при размещении пакетов обновлений на Web- или FTP-сервере необходимо проверить корректность вывода списка файлов в каталоге. Web- или FTP-сервер может обрезать имена файлов при выводе списка файлов.
...
Для обновления сервера УКМ 4 необходимо выполнить следующие действия:
1) Завершить работу всех программ, в том числе компонентов СуперМаг касса и СуперМаг Lillo фронт, если они установлены на одном компьютере с компонентом СуперМаг Сервер. Во избежание блокировки временных каталогов, закрыть все файловые менеджеры и архиваторы.
2) Проверить наличие свободного места для создания резервной копии на диске указанном в параметре dir_backup конфигурационного файла C:\Program Files\ukmserver\ukmupman\ukmupman.ini.
...
Для обновления сервера СуперМаг на 43 версию необходимо наличие на диске сервера свободного места = размер каталога БД MYSQL + 1Gb. Проверку свободного места необходимо выполнить до начала обновления. Расположение каталога БД MySQL задаётся параметром datadir в файле %systemroot%\my.ini (см. раздел "Восстановление системы").
3) Запустить менеджер обновлений сервера УКМ 4 с помощью Главного меню Windows:
Пуск -> Программы -> Супермаг -> Менеджер обновлений
4) Дождаться окончания обновления.
...
Менеджер обновлений сервера работает по следующему алгоритму:
1) Определяет номер текущей версии.
2) Обращается к ресурсу, указанному в параметре update_url, и считывает список доступных пакетов обновления, расположенных на данном ресурсе.
3) Анализирует возможность составить последовательность пакетов для обновления с текущей версии.
...
В случае отсутствия необходимых пакетов, завершает свою работу и запускает системные службы, указанные в секции [postupdate_services_start].
4) Останавливает системные службы, указанные в секции [prebackup_services_stop].
5) Выполняет создание резервной копии файлов, которые могут быть изменены в ходе обновления. Резервная копия создаётся в каталоге, указанном в параметре dir_backup.
46) Запускает системные службы, указанные в секции [preupdate_services_start].
67) Выполняет последовательную обработку пакетов обновлений.
...
В случае сбоя, завершает свою работу и запускает системные службы, указанные в секции [errupdate_services_start].
78) Завершает свою работу и запускает системные службы, указанные в секции [postupdate_services_start].
...
Менеджер обновления терминала работает по следующему алгоритму:
1) Определяет номер текущей версии.
2) Обращается к ресурсу, указанному в параметре URL для скачивания обновлений, и считывает список доступных пакетов обновления, расположенных на данном ресурсе.
3) Анализирует возможность составить последовательность пакетов для обновления с текущей версии.
- В случае наличия необходимых пакетов, скачивает их на локальный диск.
- В случае отсутствия необходимых пакетов, завершает свою работу и запускает кассовую программу.
4) Выполняет создание резервной копии файлов, которые могут быть изменены в ходе обновления.
5) Выполняет последовательную обработку скачанных пакетов обновлений.
6) Завершает свою работу и запускает кассовую программу.
...
Загрузка серверных пакетов обновления на Linux-сервер УКМ 4 может выполняться двумя способами:
1) автоматически автоматически – в ходе процедуры обновления сервера;
2) вручную.
Для автоматической загрузки пакетов обновления необходимо, чтобы в конфигурационном файле менеджера обновлений сервера /usr/local/ukmsrv/ukmupman/ukmupman.ini параметр update_url содержал URL для скачивания обновлений в виде:
...
Для запуска обновления Linux-сервера УКМ 4 требуется выполнить следующие действия:
1) подключиться к Linux-серверу УКМ 4 по SSH или войти в систему локально;
2) перейти в каталог /usr/local/ukmsrv/ukmupman;
3) запустить скрипт ukmupman.sh;
4) дождаться окончания работы скрипта;
5) проанализировать результат процедуры обновления с помощью протоколов обновления:
...
Для отката некорректного обновления, требуется выполнить следующие действия:
1) подключиться к Linux-серверу Супермаг УКМ 4 по SSH или войти в систему локально от имени пользователя root;
2) выполнить следующие команды:
cp -afv /usr/local/ukmsrv/srv-rollback /tmp
cd /tmp/srv-rollback
3) отредактировать файл srv-rollback.sh, заменив в нём в строке export DIR_BACKUP=/usr/local/ukmsrv/ukmupman/backup/NOVERSION переменную NOVERSION на номер версии, с которой было начато сбойное обновление;
4) запустить файл srv-rollback.sh.
Нештатные ситуации при обновлении
Внимание!
Если в ходе обновления возникают ошибки, связанные с форс-мажорными обстоятельствами (отключение электроэнергии и т.п.), можно воспользоваться данной инструкцией по откату. Однако, данная инструкция не является правилом, работающим при любых ситуационных условиях. Для принятия окончательного принятия решения по выходу из нештатной ситуации необходимо обратиться к разработчику!
При запуске обновления на сервере в каталоге:каталоге c:\Program Files\ukmserver\ukmupman\backup\<номер_текущей_версии>версии> создается резервная копия файлов, с помощью которой сервер можно вернуть к состоянию системы до запуска обновления.
Внимание! Перед началом отката сохраните содержимое каталогов: c:\Program Files\ukmserver\ukmupman\backup\<номер_текущей_версии>; и c:\Program Files\ukmserver\ukmupman\update.:
- .log-файлы из следующих каталогов (каталоги целиком сохранять не нужно):
- c:\Program Files\ukmserver (каталог "c:\Program Files\ukmserver\logs" сохранять сохранять не нужно);
- c:\Program Files\ukmserver\ukmupman;
- c:\Program Files\ukmserver\ukmupman\backup.
Для восстановления состояния сервера необходимо выполнить следующие действия:
1. Остановка служб:
1) Остановка
...
УКМ
...
-сервера.
2) Остановка MySQL.
3) Остановка Apache2.
2. Откат Apache + PHP:
1) Удаление всех файлов из каталога
...
C:\
...
PHP.
...
2) Распаковка содержимого архива
...
php-dir.
...
7z в каталог
...
C:\
...
PHP.
Примечание:
Для распаковки файлов резервных копий 7z можно использовать:
- архиватор 7-Zip;
- WinRAR версии 3.42 или более новый;
- plugin для FAR (см. папку 7-zip_plugin_for_FAR);
- plugin для Total Commander (см. папку 7-zip_plugin_for_Total_Commander).
Если существует
...
файл c:\Program Files\Apache Group\Apache2\conf\httpd.conf.php4.bak:, то необходима замена файла c:\Program Files\Apache Group\Apache2\conf\httpd.conf файлом c:\Program Files\Apache Group\Apache2\conf\httpd.conf.php4.bakПереименование и переименование файла c:\Program Files\Apache Group\Apache2\conf\httpd.conf.php4.bak на c:\Program Files\Apache Group\Apache2\php.ini.
3) Удаление всех файлов из каталога c:\Program Files\Apache Group\Apache2\htdocs\ukm.
4) Удаление каталога c:\Program Files\Apache Group\Apache2\htdocs\ukminstall
...
*Распаковка .
5) Распаковка содержимого архива «htdocshtdocs-ukm.7z» в 7z в каталог c:\Program Files\Apache Group\Apache2\htdocs\ukm.
Внимание!
Здесь и далее обратите внимание на то, что внутри 7z-архивов с резервными копиями хранится вся структура каталогов от корня диска (например, для htdocs-ukm.7z это: Program Files\Apache Group\Apache2\htdocs\ukm).
6) Если существует каталог c:\Program Files\Apache Group\Apache2\htdocs\UKM_SERVER
...
, то требуется удаление этого каталога.
7) Распаковка содержимого архива
...
htdocs-ukm_server.
...
7z в каталог С:\.
8) Если существует каталог
...
C:\Program Files\Zend2.
...
bak, то
...
требуется удаление каталога «CC:\Program Files\Zend»;переименование Zend и переименование каталога «CC:\Program Files\Zend2.bak»bak в «CC:\Program Files\Zend»Zend.
3. Откат MySQL:
1) Замена файла
...
%systemroot%\my.
...
ini файлом my.ini из резервной копии.
2) Если существует каталог
...
C:\
...
MYSQL4, то требуется удаление каталога
...
C:\
...
MYSQL и переименование каталога C:\MYSQL4
...
в
...
C:\
...
MYSQL.
3) Если существует файл резервной копии
...
mysql-data.
...
7z, то требуется удаление каталога
...
MYSQL4DATA. Каталог
...
MYSQL4DATA находится на диске, который был указан в
...
my.
...
ini в параметре
...
datadir. Если после установки УКМ 4 файл
...
my.
...
ini не менялся, то каталог
...
MYSQL4DATA находится на диске C:\.
4) Если существует файл резервной копии
...
mysql-data.
...
7z, то требуется удаление содержимого каталога «C:\MYSQL\
...
DATA.
5) Распаковка содержимого архива
...
mysql-data.
...
7z в каталог
...
C:\MYSQL\
...
DATA.
4. Откат Демодемо-кассы:
- Если была установлена демо-касса, то требуется:
1) Удаление всех файлов из каталога c:\Program Files\ukmclient-demo.
2) Распаковка содержимого архива
...
ukmclient-demo.
...
7z в каталог
...
c:\Program Files\ukmclient-
...
demo.
5. Откат дистрибутива кассы:
1) Удаление всех файлов из каталога c:\Program Files\ukmclient.
2) Распаковка содержимого
...
архива ukmclient-dir.
...
7z в каталог
...
c:\Program Files\
...
ukmclient.
6. Откат сервера УКМ 4.
Внимание!
Перед выполнением следующего шага проверьте, что содержимое каталога "c:\Program Files\ukmserver\ukmupman\backup\<номер_текущей_версии>" сохранено в каталоге, отличном от "c:\Program Files\ukmserver".
1) Удаление вместе с содержимым каталога
...
c:\Program Files\ukmserver
...
.
2) Распаковка содержимого архива
...
ukmserver-dir.
...
7z в каталог
...
c:\Program Files\ukmserver
...
.
7. Добавление в переменную окружения PATH путей: «CC:\PHP» PHP и «C C:\PHP\DLLS»DLLS, если переменная окружения PATH их не содержит.
8. Запуск служб:
- "MySQL";"
- УКМ Сервер"-сервер;
- "Apache2";
- с помощью Web-интерфейса проверьте корректность запуска службы "УКМ-сервер".
9. Сетевая настройка:
...
1) Для каталога c:\Program Files\ukmclient
...
создать сетевой ресурс с именем
...
ukminst.
2) Дать локальному пользователю
...
__ukmuser__
...
права на чтение данного ресурса.
Инструкция по откату обновления на 43 версию на кассовом терминале - СТАРЬО И АЦТОЙ
Инструкция предназначена для возврата кассового терминала к состоянию до начала обновления.
Данную инструкцию можно использовать в случаях, если СТАРТОВАЯ_ВЕРСИЯ обновления меньше чем 43 - то есть для ситуаций, когда в ходе обновления 43 версия является промежуточной или конечной (например: 42sp3 -> 43; 42sp6 -> 43; 42sp6 -> 4301; 42sp6 -> 4302).
Внимание!
В случае если СТАРТОВАЯ_ВЕРСИЯ больше или равна 43 - данную инструкцию использовать не следует.
Для отката обновления выполнить следующие действия.
1. Сохранить для анализа лог файлы обновления.
- Для этого загрузить с кассы следующие файлы:
- /usr/local/ukmclient/update/*.log
- /usr/local/ukmclient/ukmupman/*.log
- /usr/local/lillo/ukmupman/*.log
- /tmp/43update/*.log
Внимание!
В ходе обновления выполняется изменение структуры каталогов, поэтому в разные моменты времени в процессе обновления некоторые из указанных каталогов могут отсутствовать.
Примечание:
Для копирования файлов по SSH можно использовать следующие программы:
В ходе обновления на 43 версию, выполняется отключение на кассе Samba сервера поэтому для копирования файлов на кассу и с кассы следует использовать SSH.
2. Скопировать на кассу в каталог «/tmp» файл «cli-rollback-43.tgz» из архива архива "Откат на кассе.zip"
3. Подключиться к кассе по SSH и выполнить следующие команды:
- cd /tmp
- tar xzf cli-rollback-43.tgz
- cd cli-rollback-43
4. Отредактировать файл файл «cli-rollback-43.sh»:
- заменить в этом файле в строке export DIR_BACKUP="/usr/local/ukmclient/backup/NOVERSION"
значение в кавычках на путь к резервной копии созданной во время обновления
Например: export DIR_BACKUP="/usr/local/ukmclient/backup/00004205"
5. Выполнить команду: ./cli-rollback-43.sh
6. В ответ на запрос запрос «Are you sure to perform rollback?» ввести «yes» и нажать клавишу ввести «yes» и нажать клавишу [Enter].
7. Дождаться окончания процедуры отката.
Об успешном выполнении отката будет свидетельствовать появление сообщения:
...
Rollback performed without errors ДАТА_ВРЕМЯ SUCCESS: ./cli-rollback-43-internal.sh completed.
...
В случае ошибки появится сообщение: ERROR: ./cli-rollback-43-internal.sh failed
Для анализа причины ошибки следует просмотреть протокол отката отката «cli-rollback-43.log»
8. В случае успешного завершения процедуры отката перезагрузить кассу с помощью команды команды reboot
Внимание!
В ходе процедуры отката содержимое каталога резервной копии, указанное в переменной DIR_BACKUP переносится в каталог /tmp/backup-copy-43 ,а сам каталог резервной копии удаляется.
9. В случае если в ходе отката возникнет ошибка, для повторного запуска отката необходимо создать каталог, указанный в переменной переменной «DIR_BACKUP» и и скопировать в него содержимое каталога каталога «/tmp/backup-copy-43».
Инструкция по откату обновления на Linux кассе при обновлении с версий 43 и старше
Инструкция предназначена для возврата кассы к состоянию до начала обновления, в случае если СТАРТОВАЯ_ВЕРСИЯ обновления 43 или больше, то есть для ситуаций, когда СТАРТОВАЯ_ВЕРСИЯ обновления больше или равна 43.
Внимание!
В случае если СТАРТОВАЯ_ВЕРСИЯ меньше 43 - , данную инструкцию использовать не следует.
Для отката обновления требуется выполнить следующие действия.:
1. ) Сохраните для анализа лог-файлы обновления. Для этого загрузите с кассы следующие файлы:
- /usr/local/ukmclient/ukmupman/*.log
- /usr/local/lillo/ukmupman/*.log
2. ) Скопируйте на кассу в каталог /tmp файл файл cli-rollback-post43.tgztgz из архива. - чо за сцылка на архив???
3. ) Подключитесь к кассе по SSH и выполните следующие команды:
- cd /tmp
- tar xzf cli-rollback-post43.tgz
- cd cli-rollback-post43
4) Отредактируйте файл cli-rollback.sh, заменив в нём в строке
export DIR_BACKUP="/usr/local/ukmclient/ukmupman/backup/NOVERSION"
значение в кавычках на путь к резервной копии, созданной во время обновления.
5) Для ukmclient-касс резервная копия располагается в каталоге
/usr/local/ukmclient/ukmupman/backup/НОМЕР_ВЕРСИИ_С_КОТОРОЙ_НАЧАТО_ОБНОВЛЕНИЕ.
Для Lillo-касс резервная копия располагается в каталоге
/usr/local/lillo/ukmupman/backup/НОМЕР_ВЕРСИИ_С_КОТОРОЙ_НАЧАТО_ОБНОВЛЕНИЕ.
Например:
export DIR_BACKUP="/usr/local/ukmclient/ukmupman/backup/00004301"
5. 6) Выполните команду
./cli-rollback.sh
67) В ответ на запрос:
Are you sure to perform rollback?
наберите на клавиатуре: yes[Enter]
7. 8) Дожидайтесь окончания процедуры отката. Об успешном выполнении отката будет свидетельствовать появление следующего сообщения:
========================================================== Rollback performed without errors ДАТА_ВРЕМЯ SUCCESS: ./cli-rollback-internal.sh completed. ==========================================================
...
В случае успешного завершения процедуры отката перезагружать кассу не нужно. Кассовая программа будет запущена автоматически.
Внимание!
В ходе процедуры отката содержимое каталога резервной копии, указанное в переменной DIR_BACKUP, переносится в каталог /tmp/!backup-copy!, а сам каталог резервной копии удаляется.
8. 9) В случае, если в ходе отката возникнет ошибка, для повторного запуска отката необходимо создать каталог, указанный в переменной DIR_BACKUP, и скопировать в него содержимое каталога /tmp/!backup-copy!
Инструкция по откату обновления для Windows клиентов
...
УКМ 4 при обновлении с версии 43 или более новой
Инструкция предназначена для возврата компонентов "Супермаг касса" и "Супермаг Lillo фронт" к состоянию до начала обновления, в случае, если СТАРТОВАЯ_ВЕРСИЯ обновления 43 или больше (пример 43 -> 43sp1, 43sp1 -> 44)
...