O Fedora não deve ser atualizado dessa maneira. E você ainda nem chegou ao difícil (16-17). Dito isso, fiz isso dezenas de vezes e me deparei com praticamente todas as coisas concebíveis que poderiam dar errado. Aqui estão minhas recomendações.
Se for possível, a melhor e mais rápida maneira de fazer isso é criar uma nova instância de nuvem com o último lançamento do Fedora (17) e então transferir seus dados e configurações para ela. Em seguida, destrua a antiga instância da nuvem. Claro que isso depende da Rackspace ter uma imagem de instalação do Fedora 17, e eu não sei se eles fazem isso.
Eu tenho dois scripts de shell personalizados apenas para essa finalidade, um dos quais copia todos os arquivos de configuração de que preciso e os dados sendo fornecidos do sistema antigo, e o outro descompacta todos os dados criados pelo primeiro script e em seguida, instala todos os pacotes necessários.
Se você está determinado a continuar nesse caminho da loucura, continue lendo.
O erro Protected multilib versions
geralmente ocorre quando você tem duas versões diferentes de um pacote em seu sistema, e algumas vezes uma delas é de uma arquitetura e uma é de outra (por exemplo, o pacote antigo é i686 e o novo é x86_64) . Ele também pode ocorrer se uma execução anterior do yum foi interrompida e você tentou fazer outra transação do yum sem retomar a transação interrompida. Isso sugere que sua atualização do Fedora 14 para o 15 não foi tão completa quanto você pensava que era.
Primeiro, pare de tentar atualizar para o 16 ou superior até resolver esse problema.
Execute yum-complete-transaction
para concluir todas as atualizações pendentes do yum. Essa é a correção fácil. Se isso corrigir o problema, pule o restante disso. Se não, continue ...
Agora, para cada pacote que apresenta este erro, verifique o que você instalou:
rpm -q dracut initscripts
Você deve ter dois ou mais pacotes listados para cada um deles. Exclua um deles: se um for de 32 bits e o outro for de 64 bits, exclua o pacote de 32 bits mesmo que seja mais recente que o pacote de 64 bits. Caso contrário, exclua o pacote antigo. Em última análise, você deve ter apenas um de cada pacote instalado:
rpm -e dracut-00####.fc## initscripts-#.##-#.fc##
Se você encontrou apenas uma versão do pacote, você terá que excluí-lo do banco de dados RPM sem realmente removê-lo do sistema de arquivos (já que eles são necessários para inicializar e instalar). Por exemplo, se houvesse apenas uma versão do dracut:
rpm -e --nodeps --noscripts --justdb dracut-00####.fc##
Depois disso, você poderá continuar com yum --releasever=16 distro-sync
.
Após terminar a sincronização de distros, se você tiver que excluir a única versão de um pacote do banco de dados RPM, não continue com as instruções do Fedora até substituí-lo:
yum --releasever=16 reinstall dracut
Neste ponto, você deve continuar com as instruções do Fedora.
Tenha em mente no futuro: o Fedora só mantém duas versões de lançamento ativas a qualquer momento. Depois disso, as antigas distros podem ser removidas dos espelhos, impossibilitando a atualização dessa maneira. Então você deve ficar no máximo uma versão para trás. Como alternativa, considere usar uma distribuição mais estável, como CentOS para que você principalmente evitar esta confusão inteiramente.