Como deixar a atualização do redmine após o upgrade do Ubuntu 14.04?

3

Eu não consegui atualizar meu redmine. Toda vez que eu corri apt-get upgrade , estou recebendo um erro ruby não encontrado:

Setting up redmine (2.4.2-1) ...
dbconfig-common: writing config to /etc/dbconfig-common/redmine/instances/default.conf
Creating config file /etc/redmine/default/database.yml.new with new version
dbconfig-common: flushing administrative password
Populating database for redmine instance "default".
This may take a while.
/usr/bin/env: ruby1.8: No such file or directory
Error when running rake db:migrate, check database configuration.
dpkg: error processing package redmine (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 redmine
E: Sub-process /usr/bin/dpkg returned an error code (1)

Estou preso agora. Meu redmine parou de funcionar.

Eu tentei "reduzir" ligando /usr/bin/ruby1.8 a / usr / bin / ruby, mas fiquei com erros diferentes.

Configurando o redmine (2.4.2-1) ... dbconfig-common: escrevendo a configuração em /etc/dbconfig-common/redmine/instances/default.conf

Creating config file /etc/redmine/default/database.yml.new with new version
dbconfig-common: flushing administrative password
Populating database for redmine instance "default".
This may take a while.
/usr/lib/ruby/1.9.1/rubygems/dependency.rb:247:in 'to_specs': Could not find rake (>= 0) amongst [] (Gem::LoadError)
        from /usr/lib/ruby/1.9.1/rubygems/dependency.rb:256:in 'to_spec'
        from /usr/lib/ruby/1.9.1/rubygems.rb:1231:in 'gem'
        from /usr/local/bin/rake:18:in '<main>'
Error when running rake db:migrate, check database configuration.
dpkg: error processing package redmine (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 redmine
E: Sub-process /usr/bin/dpkg returned an error code (1)

E então eu tentei reinstalar o ruby1.8 como sugerido nesta edição . Mas recebi um erro diferente ao instalar o ruby1.8.

apt-get install ruby1.8
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 redmine-sqlite : Depends: ruby-sqlite3 but it is not going to be installed
 ruby-fcgi : Depends: libruby1.9.1 (>= 1.9.2.0) but it is not going to be installed or
                      libruby2.0 (>= 2.0.0) but it is not going to be installed
 ruby-railties-3.2 : Depends: ruby-actionpack-3.2 (>= 3.2.16) but it is not going to be installed
                     Depends: ruby-actionmailer-3.2 (>= 3.2.16) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
    
por Hud Hood 04.08.2014 / 12:55

2 respostas

1

A (primeira) mensagem de erro mostrada foi:

/usr/bin/env: ruby1.8: No such file or directory

Isso está tentando executar ruby1.8 , mas não existe esse programa. Infelizmente, como revelado por um pesquisa "content of packages" , o ruby1.8 não é mais fornecido no Ubuntu 14.04.

Instalando o ruby1.8 de qualquer maneira:

Você pode instalar o ruby1.8 usando um dos dois métodos descritos nas respostas:

Atualmente, há duas respostas, uma sugerindo que ative um repositório de software a partir de 13.10 para instalar a versão antiga destinada à versão anterior , e o outro sugerindo para usar um (talvez especialmente) PPA experimental .

Não sei qual dos dois é melhor ou mais confiável. Qualquer um deveria funcionar.

Tentativa de usar ruby1.9 como ruby1.8:

Outra possibilidade, sugerida / inspirada por esta resposta tres a essa pergunta diferente em Stack Overflow , é "enganar" o script de instalação do redmine para agir como a última versão do ruby (ruby1.9) é ruby1.8. Isso não impedirá que o ruby1.9 funcione para aplicativos que precisam dessa versão, mas também não funcionará necessariamente corretamente; é uma questão de quão perto a vermelhidão depende do rubi1.8.

Para fazer isso, crie um link simbólico para ruby (que executa a versão padrão, neste caso 1.9) chamado ruby1.8 :

sudo ln -s /usr/bin/ruby /usr/bin/ruby1.8

(Update) Se você obtiver Could not find rake (>= 0) amongst [] (Gem::LoadError) :

Nas informações atualizadas adicionadas à sua resposta, você menciona o symlinking /usr/bin/ruby1.8 to /usr/bin/ruby (para fazer com que use o ruby1.9 instalado) e receba uma mensagem de erro em que o primeiro erro foi:

/usr/lib/ruby/1.9.1/rubygems/dependency.rb:247:in 'to_specs': Could not find rake (>= 0) amongst [] (Gem::LoadError)
        from /usr/lib/ruby/1.9.1/rubygems/dependency.rb:256:in 'to_spec'
        from /usr/lib/ruby/1.9.1/rubygems.rb:1231:in 'gem'
        from /usr/local/bin/rake:18:in '<main>'
Error when running rake db:migrate, check database configuration.

Você pode corrigir esse erro instalando o rake package:

sudo apt-get update
sudo apt-get install rake

Se o symlinking ruby1.8 to ruby não funcionar você decide tentar realmente instalar o ruby1.8, você deve remover o link primeiro, com sudo rm /usr/bin/ruby1.8 .

Se você tiver mais problemas, edite sua pergunta com detalhes. (Ou se você acha que os problemas são muito diferentes do que você perguntou aqui, você poderia fazer uma nova pergunta.) Boa sorte.

    
por Eliah Kagan 23.05.2017 / 14:39
1

Depois de tentar soluções diferentes e não conseguiu obter o redmine devidamente instalado. Eu finalmente consegui trabalhar em uma máquina diferente. E use os seguintes passos.

  • Backup do banco de dados redmine_default no mysql e restaurá-lo em outra máquina com o mesmo nome
  • Nova instalação do redmine na nova máquina.

    apt-get instala o redmine redmine-mysql

  • Siga os passos da instalação do redmine de aqui

A instalação / atualização funcionou com todos os meus dados existentes intactos.

Depois de alguns dias, fiz outro teste na máquina antiga e descobri que, ao desinstalar o redmine e limpá-lo, garantir que todos os vestígios de redmine e ruby anteriores fossem removidos, reinstalá-lo novamente desde o início, funcionaram !!!

Portanto, se a atualização for um problema, faça backup do banco de dados, desinstale o redmine

apt-get remove redmine redmine-mysql
apt-get purge redmine redmine-mysql

Restaure o banco de dados e siga a instalação acima

    
por Hud Hood 12.08.2014 / 05:48