Оказалось, что единственным верным решением, всё таки, было последовательное обновление.
Процесс обновления прошел успешно. В конце возникли несколько ошибок которые решились переустановкой пакетов расширений и их донастройкой.
Привожу ниже процесс обновления. Может кому-нибудь он пригодится.
============ 3.0.11 -> 3.1.21 ==============
1. Создаем резервную установленного OTRS
2. Копируем резервную копию на новый сервер
3. Восстанавливаем базу данных на новом сервере:
mysql> CREATE DATABASE otrs CHARACTER SET utf8;
shell> mysql -p -h localhost otrs < DatabaseBackup.sql
4. Останавливаем сервисы:
shell> service crond stop
shell> service postfix stop
shell> service httpd stop
5. Устанавливаем следующую версию OTRS. Для этого скачиваем пакет и устанавливаем его:
shell> wget
http://ftp.otrs.org/pub/otrs//RPMS/rhel ... noarch.rpm
shell> rpm -ivh otrs-3.1.21-01.noarch.rpm
6. Заменяем следующие файлы из резервной копии:
Kernel/Config.pm
Kernel/Config/GenericAgent.pm
Kernel/Config/Files/ZZZAuto.pm
var/*
7. Устанавливаем права доступа:
shell> cd /opt/otrs/
shell> bin/otrs.SetPermissions.pl --otrs-user=otrs --web-user=apache --otrs-group=apache --web-group=apache /opt/otrs
8. Обновляем базу данных:
8.1 Обновление схемы часть 1:
shell> cat scripts/DBUpdate-to-3.1.mysql.sql | mysql -p -f -u root otrs
8.2 Проверяем настройки подключения к базе данных в файле Kernel/Config.pm и запускаем скрипт миграции базы данных:
shell> scripts/DBUpdate-to-3.1.pl
Внимание! Нельзя продолжать обновление если скрипт завершился неудачно во избежание потери данных
8.3 Обновление схемы часть 2:
shell> cat scripts/DBUpdate-to-3.1-post.mysql.sql | mysql -p -f -u root otrs
9. Обновляем кэш конфигурации:
shell> bin/otrs.RebuildConfig.pl
shell> bin/otrs.DeleteCache.pl
10. Обновление до следующей версии закончено! Больше информации об изменениях можно прочитать в файле UPGRADING
============ 3.1.21 -> 3.2.16 ==============
1. Устанавливаем следующую версию OTRS. Для этого скачиваем пакет и обновляем его:
shell> wget
http://ftp.otrs.org/pub/otrs//RPMS/rhel ... noarch.rpm
shell> rpm -Uvh otrs-3.2.16-01.noarch.rpm
При этом OTRS автоматически сохранит старые конфигурационные файлы
2. Устанавливаем права доступа:
shell> cd /opt/otrs/
shell> bin/otrs.SetPermissions.pl --otrs-user=otrs --web-user=apache --otrs-group=apache --web-group=apache /opt/otrs
3. Проверяем необходимые Perl-модули и устанавливаем недостающие:
shell> /opt/otrs/bin/otrs.CheckModules.pl
4. Обновляем базу данных:
4.1 Запускаем скрипт, который поменяет систему хранения данных с MyISAM на InnoDB:
shell> bin/otrs.MySQLInnoDBSwitch.pl
4.2 Проверяем настройки базы данных:
shell> bin/otrs.CheckDB.pl
4.3 Обновляем схему:
shell> cat scripts/DBUpdate-to-3.2.mysql.sql | mysql -p -f -u root otrs
4.4 Запускаем скрипт миграции базы данных от имени пользователя otrs:
Находим пользователя otrs в /etc/passwd:
Меняем:
otrs
503:48:OTRS System User:/opt/otrs/:/bin/false
на:
otrs
503:48:OTRS System User:/opt/otrs/:/bin/bash
shell> su - otrs
shell> scripts/DBUpdate-to-3.2.pl
Внимание! Нельзя продолжать обновление если скрипт завершился неудачно во избежание потери данных
5. Обновляем кэш конфигурации:
shell> bin/otrs.RebuildConfig.pl
shell> bin/otrs.DeleteCache.pl
6. Удаление метаданных из архивированных заявок.
В OTRS 3.2 из архивируемых заявок удаляется информация об агентах (история просмотров, подписки), что позволяет уменьшить размер данных в базе данных при больших количествах заявок.
Таким образом, для очистки метаданных уже архивированных заявок следует выполнить скрипт:
shell> bin/otrs.CleanupTicketMetadata.pl --archived
Если вы хотите сохранять всю информацию, то в конфигурации системы (SysConfig) следует поменять настройки на "Нет" в следующих параметрах:
Ticket::ArchiveSystem::RemoveSeenFlags
Ticket::ArchiveSystem::RemoveTicketWatchers
7. Обновление до следующей версии закончено! Больше информации об изменениях можно прочитать в файле UPGRADING.md
============ 3.2.16 -> 3.3.8 ==============
1. Устанавливаем следующую версию OTRS. Для этого скачиваем пакет и обновляем его:
shell> wget
http://ftp.otrs.org/pub/otrs//RPMS/rhel ... noarch.rpm
shell> rpm -Uvh otrs-3.3.8-01.noarch.rpm
При этом OTRS автоматически сохранит старые конфигурационные файлы
2. Устанавливаем права доступа:
shell> cd /opt/otrs/
shell> bin/otrs.SetPermissions.pl --otrs-user=otrs --web-user=apache --otrs-group=apache --web-group=apache /opt/otrs
3. Проверяем необходимые Perl-модули и устанавливаем недостающие:
shell> /opt/otrs/bin/otrs.CheckModules.pl
4. Обновляем базу данных:
4.1 Проверяем настройки базы данных:
shell> bin/otrs.CheckDB.pl
4.2 Обновляем схему:
shell> cat scripts/DBUpdate-to-3.3.mysql.sql | mysql -p -f -u root otrs
4.3 Запускаем скрипт миграции базы данных от имени пользователя otrs:
shell> su - otrs
shell> scripts/DBUpdate-to-3.3.pl
Внимание! Нельзя продолжать обновление если скрипт завершился неудачно во избежание потери данных
5. Обновляем кэш конфигурации от имени пользователя otrs:
shell> su - otrs
shell> bin/otrs.RebuildConfig.pl
shell> bin/otrs.DeleteCache.pl
6. Стартуем серисы:
shell> service httpd start
shell> service postfix start
shell> service crond start
shell> service otrs start
7. Заходим в "Управление пакетами" и обновляем/устанавливаем, удаляем устаревшие.
Обновление закончено!
Также рекомендуют импортировать списки управления доступом (ACL) в новый редактор в панели администрирования.