wanted to update otrs5.0.42 to znuny 6.0.48 on a test system.
The update also runs through, only the SysConfig is partly not taken over (FQDN, SendmailModul etc.).
Here the process:
Code: Select all
-----------------Stop services-----------------
Testsystem ~ # systemctl stop apache2.service
Testsystem ~ # systemctl stop postfix
Testsystem opt # su -c 'bin/Cron.sh stop' – otrs
Testsystem opt # su -c 'bin/otrs.Daemon.pl stop' – otrs
-----------------Backup-----------------
Testsystem ~ # cd /opt
Testsystem opt # mkdir backup/
Testsystem opt # mkdir backup/backup_otrs5.0.42/
Testsystem opt # mkdir backup/backup_otrs5.0.42/var/
Testsystem opt # ls -l
total 12
drwxr-xr-x 3 root root 4096 Oct 25 13:25 backup
lrwxrwxrwx 1 root root 12 Feb 23 2023 otrs -> otrs-5.0.42/
drwxr-xr-x 9 otrs www-data 4096 Feb 23 2023 otrs-5.0.42
drwxr-xr-x 9 otrs www-data 4096 Feb 23 2023 znuny-6.0.48
Testsystem opt # cp /opt/otrs/Kernel/Config.pm backup/backup_otrs5.0.42/
Testsystem opt # cp /opt/otrs/Kernel/Config/Files/ZZZAAuto.pm backup/backup_otrs5.0.42/
Testsystem opt # cp -r /opt/otrs/var/* backup/backup_otrs5.0.42/var/
Testsystem opt # cd backup/backup_otrs5.0.42/
Testsystem backup_otrs5.0.42 # ls -l
total 244
-rw-r----- 1 root root 7139 Oct 25 13:25 Config.pm
drwxr-xr-x 15 root root 4096 Oct 25 13:26 var
-rw-r----- 1 root root 234617 Oct 25 13:26 ZZZAAuto.pm
Testsystem backup_otrs5.0.42 # cd var
Testsystem var # ls -l
total 76
drwxr-xr-x 2 root root 4096 Oct 25 13:26 article
drwxr-xr-x 2 root root 4096 Oct 25 13:26 cron
drwxr-xr-x 2 root root 4096 Oct 25 13:26 fonts
drwxr-xr-x 3 root root 4096 Oct 25 13:26 httpd
drwxr-xr-x 3 root root 4096 Oct 25 13:26 log
-rw-r----- 1 root root 23707 Oct 25 13:26 logo-otrs.png
drwxr-x--- 2 root root 4096 Oct 25 13:26 packagesetup
drwxr-xr-x 3 root root 4096 Oct 25 13:26 processes
drwxr-x--- 3 root root 4096 Oct 25 13:26 run
drwxr-xr-x 2 root root 4096 Oct 25 13:26 sessions
drwxr-xr-x 2 root root 4096 Oct 25 13:26 spool
drwxr-xr-x 2 root root 4096 Oct 25 13:26 stats
drwxr-xr-x 3 root root 4096 Oct 25 13:26 tmp
drwxr-xr-x 3 root root 4096 Oct 25 13:26 webservices
Testsystem var # cd /opt
Testsystem opt # mkdir backup/backup_otrs5.0.42/backup_database_otrs_5.0.42/
Testsystem opt # cd /opt/otrs/scripts/
Testsystem scripts # ./backup.pl -d /opt/backup/backup_otrs5.0.42/backup_database_otrs_5.0.42/
Backup /opt/backup/backup_otrs5.0.42/backup_database_otrs_5.0.42//2023-10-25_13-28/Config.tar.gz ... done
Backup /opt/backup/backup_otrs5.0.42/backup_database_otrs_5.0.42//2023-10-25_13-28/Application.tar.gz ... done
Dump MySQL data to /opt/backup/backup_otrs5.0.42/backup_database_otrs_5.0.42//2023-10-25_13-28/DatabaseBackup.sql ... done
Compress SQL-file... done
Testsystem scripts # /opt/znuny-6.0.48/bin/otrs.SetPermissions.pl
Testsystem scripts # cp -av /opt/otrs/Kernel/Config.pm /opt/znuny-6.0.48/Kernel/
'/opt/otrs/Kernel/Config.pm' -> '/opt/znuny-6.0.48/Kernel/Config.pm'
-----------------Update-preparation-----------------
Testsystem scripts # rm /opt/otrs
Testsystem scripts # ln -s /opt/znuny-6.0.48/ /opt/otrs
Testsystem scripts # cd /opt
Testsystem opt # ls -l
total 12
drwxr-xr-x 3 root root 4096 Oct 25 13:25 backup
lrwxrwxrwx 1 root root 18 Oct 25 13:43 otrs -> /opt/znuny-6.0.48/
drwxr-xr-x 9 otrs www-data 4096 Feb 23 2023 otrs-5.0.42
drwxr-xr-x 9 otrs www-data 4096 Feb 23 2023 znuny-6.0.48
Testsystem opt # /opt/otrs/bin/otrs.CheckModules.pl --all
o Apache::DBI......................ok (v1.12)
o Apache2::Reload..................ok (v0.13)
o Archive::Tar.....................ok (v2.36)
o Archive::Zip.....................ok (v1.68)
o Crypt::Eksblowfish::Bcrypt.......ok (v0.009)
o CSS::Minifier::XS................ok (v0.11)
o Date::Format.....................ok (v2.24)
o DateTime.........................ok (v1.54)
o DateTime::TimeZone.............ok (v2.47)
o DBI..............................ok (v1.643)
o DBD::mysql.......................ok (v4.050)
o DBD::ODBC........................Not installed! To install, you can use: 'apt-get install -y libdbd-odbc-perl'. (optional - Required to connect to a MS-SQL database.)
o DBD::Oracle......................Not installed! (optional - Required to connect to a Oracle database.)
o DBD::Pg..........................Not installed! To install, you can use: 'apt-get install -y libdbd-pg-perl'. (optional - Required to connect to a PostgreSQL database.)
o Digest::SHA......................ok (v6.02)
o Encode::HanExtra.................ok (v0.23)
o IO::Socket::SSL..................ok (v2.069)
o JavaScript::Minifier::XS.........ok (v0.13)
o JSON::XS.........................ok (v4.03)
o List::Util::XS...................ok (v1.55)
o LWP::UserAgent...................ok (v6.53)
o Mail::IMAPClient.................ok (v3.42)
o IO::Socket::SSL................ok (v2.069)
o Authen::SASL...................ok (v2.16)
o Authen::NTLM...................ok (v1.09)
o ModPerl::Util....................ok (v2.000011)
o Moo..............................ok (v2.004004)
o Net::DNS.........................ok (v1.29)
o Net::LDAP........................ok (v0.68)
o Net::SMTP........................ok (v3.11)
o Template.........................ok (v2.27)
o Template::Stash::XS..............ok (undef)
o Text::CSV_XS.....................ok (v1.45)
o Time::HiRes......................ok (v1.9764)
o XML::LibXML......................ok (v2.0134)
o XML::LibXSLT.....................ok (v1.99)
o XML::Parser......................ok (v2.46)
o YAML::XS.........................ok (v0.82)
Bundled modules:
o Algorithm::Diff..................ok (v1.1903)
o Apache::DBI......................ok (v1.12)
o CGI..............................ok (v4.36)
o CSS::Minifier....................ok (v0.01)
o Class::Inspector.................ok (v1.31)
o Crypt::PasswdMD5.................ok (v1.40)
o Crypt::Random::Source............ok (v0.14)
o Email::Valid.....................ok (v1.202)
o Encode::Locale...................ok (v1.05)
o Exporter::Tiny...................ok (v1.002001)
o IO::Interactive..................ok (v1.022)
o JSON.............................ok (v2.94)
o JSON::PP.........................ok (v2.27203)
o JavaScript::Minifier.............ok (v1.15)
o LWP..............................ok (v6.53)
o Linux::Distribution..............ok (v0.23)
o Locale::Codes....................ok (v3.52)
o MIME::Tools......................ok (v5.509)
o Mail::Address....................ok (v2.18)
o Mail::Internet...................ok (v2.18)
o Math::Random::ISAAC..............ok (v1.004)
o Math::Random::Secure.............ok (v0.080001)
o Module::Find.....................ok (v0.15)
o Module::Refresh..................ok (v0.17)
o Moo..............................ok (v2.004004)
o Mozilla::CA......................ok (v20211001)
o Net::HTTP........................ok (v6.17)
o Net::IMAP::Simple................ok (v1.2209)
o Net::SSLGlue.....................ok (v1.058)
o PDF::API2........................ok (v2.033)
o SOAP::Lite.......................ok (v1.20)
Argument "v4" isn't numeric in sprintf at /opt/otrs/bin/otrs.CheckModules.pl line 876.
o Sisimai..........................ok (vv4.25.11)
o Sys::Hostname::Long..............ok (v1.5)
o Text::CSV........................ok (v1.95)
o Text::Diff.......................ok (v1.44)
o Types::TypeTiny..................ok (v1.010000)
o URI..............................ok (v1.71)
o YAML.............................ok (v1.23)
o namespace::clean.................ok (v0.27)
o parent...........................ok (v0.236)
-----------------Update-process-----------------
Testsystem opt # su - otrs
otrs@Testsystem:~$ scripts/DBUpdate-to-6.pl
Migration started ...
Checking requirements ...
Requirement check for: Check framework version ...
Requirement check for: Check required Perl version ...
Requirement check for: Check required database version ...
Requirement check for: Check database charset ...
Requirement check for: Check required Perl modules ...
Requirement check for: Check if database has been backed up ...
Did you backup the database? [Y]es/[N]o: Y
Requirement check for: Migrate PostMaster pre-filters that execute system commands ...
Requirement check for: Migrate dashboard widgets that execute system commands ...
Requirement check for: Upgrade database structure ...
Requirement check for: Migrating time zone configuration ...
Requirement check for: Update calendar appointment future tasks ...
Requirement check for: Migrate GenericAgent jobs configuration ...
Requirement check for: Migrate TicketAppointment rules configuration ...
Requirement check for: Create entries in new article table ...
Requirement check for: Migrate ArticleType in ProcessManagement Data ...
Requirement check for: Migrate ArticleType in PostMaster filters ...
Requirement check for: Remove Generic Agent system commands ...
Executing tasks ...
Step 1 of 49: Check framework version ...
Step 2 of 49: Check required Perl version ...
Step 3 of 49: Check required database version ...
Step 4 of 49: Check database charset ...
Step 5 of 49: Check required Perl modules ...
Step 6 of 49: Check installed CPAN modules for known vulnerabilities ...
Step 7 of 49: Check if database has been backed up ...
Step 8 of 49: Migrate PostMaster pre-filters that execute system commands ...
Step 9 of 49: Migrate dashboard widgets that execute system commands ...
Step 10 of 49: Upgrade database structure ...
Step 11 of 49: Migrate configuration ...
Step 12 of 49: Refresh configuration cache after migration of OTRS 5 settings ...
Step 13 of 49: Migrating ticket storage configuration ...
Step 14 of 49: Migrating article search index configuration ...
Step 15 of 49: Migrating ticket zoom customer information widget configuration ...
Step 16 of 49: Drop deprecated table gi_object_lock_state ...
Step 17 of 49: Migrate PossibleNextActions setting ...
Step 18 of 49: Migrate ZoomExpand setting ...
Step 19 of 49: Migrating time zone configuration ...
Step 20 of 49: Migrating modified settings ...
Step 21 of 49: Create appointment calendar tables ...
Step 22 of 49: Create ticket number counter tables ...
Step 23 of 49: Update calendar appointment future tasks ...
Step 24 of 49: Add basic appointment notification for reminders ...
Step 25 of 49: Create Form Draft tables ...
Step 26 of 49: Clean and drop group_user permission_value column ...
Step 27 of 49: Migrate GenericAgent jobs configuration ...
Step 28 of 49: Migrate TicketAppointment rules configuration ...
Step 29 of 49: Migrate Merged Ticket history name values ...
Step 30 of 49: Migrate ticket statistics ...
Step 31 of 49: Migrate ticket notifications ...
Step 32 of 49: Create entries in new article table ...
Step 33 of 49: Post changes on article related tables ...
Step 34 of 49: Migrate ArticleType in ProcessManagement Data ...
Step 35 of 49: Migrate ArticleType in PostMaster filters ...
Step 36 of 49: Migrate chat articles ...
Step 37 of 49: Add history types ...
Step 38 of 49: Initialize default cron jobs ...
Copying /opt/otrs/var/cron/aaa_base.dist to /opt/otrs/var/cron/aaa_base...
done.
Copying /opt/otrs/var/cron/otrs_daemon.dist to /opt/otrs/var/cron/otrs_daemon...
done.
Step 39 of 49: Migrate web service configuration ...
Step 40 of 49: Migrate package repository configuration ...
Step 41 of 49: Migrate ticket search profiles ...
Step 42 of 49: Add missing foreign keys that point to database table "article" ...
Step 43 of 49: Remove Generic Agent system commands ...
Step 44 of 49: Uninstall merged packages ...
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Class/ReturnValue.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Class/Accessor.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Class/Accessor/Chained.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Class/Accessor/Fast.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Class/Accessor/Chained/Fast.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Property.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/FreeBusy.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/TimeZone.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Event.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Journal.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Todo.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/TimeZone/Standard.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/TimeZone/Daylight.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/Procedure.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/None.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/Display.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/URI.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/Email.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Data/ICal/Entry/Alarm/Audio.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Date/ICal.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Date/Leapyear.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Date/ICal/Duration.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Devel/StackTrace.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Devel/StackTrace/Frame.pm
Notice: Skiped framework file: /opt/otrs/Kernel/cpan-lib/Text/vFile/asData.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AgentAppointmentAgendaOverview.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AdminAppointmentNotificationEvent.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AgentAppointmentCalendarOverview.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AgentAppointmentEdit.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AgentAppointmentList.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/AgentAppointmentPluginSearch.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Modules/PublicCalendar.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/LinkObject/Appointment.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Preferences/AppointmentNotificationEvent.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AdminAppointmentNotificationEventTransportEmailSettings.tt
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AdminAppointmentNotificationEvent.tt
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AgentAppointmentAgendaOverview.tt
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AgentAppointmentCalendarOverview.tt
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AgentAppointmentEdit.tt
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Dashboard/AppointmentCalendar.pm
Notice: Skiped framework file: /opt/otrs/Kernel/Output/HTML/Templates/Standard/AgentDashboardAppointmentCalendar.tt
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/CalendarTemplateGenerator.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Event/Transport/Email.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Event/Transport/Base.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Appointment.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Plugin.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Plugin/Ticket.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Event/Notification.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Event/TicketAppointments.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Export/ICal.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Import/ICal.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Ticket/DynamicField.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Ticket/EscalationTime.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Calendar/Ticket/PendingTime.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Daemon/DaemonModules/SchedulerTaskWorker/CalendarAppointment.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/LinkObject/Appointment.pm
Notice: Skiped framework file: /opt/otrs/Kernel/System/Ticket/Event/TicketAppointments.pm
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar/Event/Transport/Email.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar/Appointment.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar/Plugin.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar/Export/ICal.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Calendar/Import/ICal.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/Admin/AdminAppointmentNotificationEvent.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentAgendaOverview.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentCalendarOverview.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentCreate.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentDashboardWidget.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentNotification.t
Notice: Skiped framework file: /opt/otrs/scripts/test/Selenium/Agent/AgentAppointmentTimeZone.t
Notice: Skiped framework file: /opt/otrs/scripts/test/sample/Calendar/SampleCalendar.ics
Notice: Skiped framework file: /opt/otrs/var/httpd/htdocs/skins/Agent/default/css/Core.AppointmentCalendar.css
Notice: Skiped framework file: /opt/otrs/var/httpd/htdocs/skins/Agent/default/css/Core.AppointmentCalendar.Agenda.css
Notice: Skiped framework file: /opt/otrs/var/httpd/htdocs/skins/Agent/default/css/Core.AppointmentCalendar.Manage.css
Notice: Skiped framework file: /opt/otrs/var/httpd/htdocs/js/Core.Agent.AppointmentCalendar.js
Step 45 of 49: Clean up the cache ...
Step 46 of 49: Refresh configuration cache another time ...
Step 47 of 49: Deploy ACLs ...
Step 48 of 49: Deploy processes ...
Step 49 of 49: Check invalid settings ...
Skipping missing settings for now...
PostmasterDefaultQueue is invalid, select one of the choices below:
[1] Test
Your choice: 1
Process::DefaultQueue is invalid, select one of the choices below:
[1] Test
Your choice: 1
Deployment successful.
Done.
Migration completed!
otrs@Testsystem:~$ bin/otrs.Console.pl Admin::Package::UpgradeAll
There are no installed packages
Done.
otrs@Testsystem:~$ perl bin/otrs.Console.pl Maint::Config::Rebuild
Rebuilding the system configuration...
Done.
otrs@Testsystem:~$ exit
logout
-----------------Start services-----------------
Testsystem opt # su -c 'bin/Cron.sh start' - otrs
(using /opt/znuny-6.0.48) done
Testsystem opt # systemctl start apache2
Testsystem opt # systemctl start postfix
Testsystem opt # cat /opt/otrs/RELEASE
PRODUCT = Znuny LTS
VERSION = 6.0.48
BUILDDATE = Tue Dec 20 14:20:56 CET 2022
BUILDHOST = znuny.01
COMMIT_ID = de9da0f8a14b7aa2c3ca59141a5df9442faabdba