Переключитесь на новую установленную версию Perl для переноса файлов конфигурации otrs в CentOS 6
Начну с самого начала:
Случай: мне нужно обновить OTRS 5 (уже используется годами) до OTRS 6.
Я следовал за Обновлением от OTRS 5 до OTRS 6 Документов OTRS.
Я делал все как описано, пока не пришло время конвертировать XML-файлы конфигурации. Для этого мне нужен Perl.
Версия Perl по умолчанию установлена на 5.10.*. Для конвертации этих XML мне нужно как минимум 5.16.*.
Я установил Perl-5.20.* Вручную, скачав.gz и следуя инструкциям по установке.
Команда 'perl -v' все еще показывает perl-5.10
,
Я гуглил, как переключаться между несколькими версиями Perl, и нашел "perlbrew". Я установил это. Я использовал команду: perlbrew list
, Это должно показать мне все установленные Perls. Это не показывало мне ничего. Поэтому я установил Perl v.5.26.* Через Perlbrew и переключился на него. Казалось, работает.
Используя команду perl -v
все еще показывает мне Perl-5.10.*
,
Я прочитал весь интернет. Однако я не могу перейти на новую версию Perl, поэтому я не могу конвертировать эти XML. Поскольку Migration Script все еще говорит мне, установлен Perl 5.10 и необходим как минимум 5.16.
Что я делаю неправильно?
1 ответ
Линия Шебанга otrs.Console.pl
является #!/usr/bin/perl
Это означает, что при запуске из командной строки bin/otrs.Console.pl
будет использовать /usr/bin/perl
независимо от того, что другое perl
s вы установили.
Либо выполните команду как perl bin/otrs.Console.pl ...
или измените первую строку otrs.Console.pl
в #!/usr/bin/env perl
,
Отредактируйте согласно обсуждению в комментариях: Вам нужно было запустить команду как otrs
пользователь, и вы пытались сделать это через su otrs ...
, Проблема в том, что perlbrew
по умолчанию установит его perl
только для текущего пользователя. Таким образом, вы должны сначала войти как otrs
пользователь, затем используйте perlbrew
установить и переключиться на более новый Perl, а затем применить одно из предложенных выше решений.