Ir para o conteúdoIr para navegação de página: página anterior [tecla de acesso p]/próxima página [tecla de acesso n]
documentation.suse.com / Documentação do SUSE Linux Enterprise Server / Guia de Upgrade / Fazendo upgrade online
Aplica-se a SUSE Linux Enterprise Server 15

5 Fazendo upgrade online

O SUSE oferece uma ferramenta gráfica intuitiva e uma ferramenta de linha de comando simples para fazer upgrade de um sistema em execução para um novo pacote de serviço. Elas oferecem suporte para rollback de pacotes de serviço e muito mais. Este capítulo explica passo a passo como fazer upgrade do pacote de serviço com essas ferramentas.

5.1 Visão geral conceitual

A SUSE lança novos pacotes de serviço para a família do SUSE Linux Enterprise regularmente. Para facilitar aos clientes a migração para um novo pacote de serviço e minimizar o tempo de espera, o SUSE suporta a migração online durante a execução do sistema.

A partir do SLE 12, o YaST Wagon foi substituído pela migração do YaST (GUI) e pela migração do Zypper (linha de comando). Os seguintes recursos são suportados:

  • Sistema sempre em um estado definido até a atualização do primeiro RPM

  • Cancelamento possível até a atualização do primeiro RPM

  • Recuperação simples, em caso de erro

  • Rollback por meio de ferramentas do sistema; sem necessidade de backup/restauração

  • Uso de todos os repositórios ativos

  • Capacidade de ignorar um pacote de serviço

Atenção
Atenção: Migração online não suportada para versões principais

A migração online apenas é suportada para migração entre pacotes de serviço. A migração online não é suportada para fazer upgrade para novas versões principais. Para obter os detalhes, consulte o Capítulo 1, Upgrade de caminhos e métodos.

Use a migração offline para fazer upgrade para uma nova versão principal. Para obter os detalhes, consulte o Capítulo 4, Fazendo upgrade offline.

5.2 Workflow de migração de service pack

É possível executar a migração do pacote de serviço pelo YaST, zypper ou AutoYaST.

Antes de começar a migração de um pacote de serviço, o sistema deve ser registrado no SUSE Customer Center ou em um servidor RMT local. É possível também usar o SUSE Manager.

Independentemente do método, a migração de service pack consiste nas seguintes etapas:

  1. Localize os destinos de migração possíveis em seus sistemas registrados.

  2. Selecione um destino de migração.

  3. Solicite e habilite novos repositórios.

  4. Execute a migração.

A lista de destinos de migração depende dos produtos que você instalou e registrou. Se você tem uma extensão instalada para a qual ainda não há um novo SP disponível, talvez nenhum destino de migração seja oferecido a você.

A lista de destinos de migração disponíveis para o seu host sempre será recuperada do SUSE Customer Center e depende dos produtos ou extensões instalados.

5.3 Cancelando a migração do pacote de serviço

É possível cancelar a migração do pacote de serviço apenas em fases específicas do processo:

  1. Até o upgrade do pacote ser iniciado, há apenas mudanças mínimas no sistema, como para serviços e repositórios. Restaure /etc/zypp/repos.d/* para reverter ao estado anterior.

  2. Depois que o upgrade do pacote é iniciado, você poderá reverter ao estado anterior usando um instantâneo do Snapper (consulte o Chapter 7, System Recovery and Snapshot Management with Snapper).

  3. Depois que o destino de migração for selecionado, o SUSE Customer Center mudará os dados do repositório. Para reverter esse estado manualmente, use SUSEConnect --rollback.

5.4 Fazendo upgrade com a ferramenta Migração Online (YaST)

Para executar a migração do pacote de serviço com o YaST, use a ferramenta Migração Online. Por padrão, o YaST não instala nenhum pacote de um repositório de terceiros. Se um pacote foi instalado de um repositório de terceiros, o YaST impede que os pacotes sejam substituídos pelo mesmo pacote que vem do SUSE.

Nota
Nota: Reduzir o tamanho da instalação

Ao executar a migração do SP, o YaST instalará todos os pacotes recomendados. Principalmente no caso das instalações mínimas personalizadas, isso pode aumentar o tamanho da instalação do sistema de forma significativa.

Para mudar esse comportamento padrão e permitir apenas os pacotes necessários, ajuste /etc/zypp/zypp.conf e defina a seguinte variável:

solver.onlyRequires = true
installRecommends=false # or commented

Isso muda o comportamento de todas as operações de pacote, como a instalação de patches ou novos pacotes.

Para iniciar a migração do pacote de serviço, faça o seguinte:

  1. Desative todas as extensões não utilizadas em seu servidor de registro para evitar conflitos futuros de dependência. Se você se esquecer de uma extensão, o YaST detectará posteriormente os repositórios de extensões não utilizadas e as desativará.

  2. Se você efetuou login em uma sessão do GNOME em execução na máquina que você pretende atualizar, alterne para um console de texto. Não é recomendável executar a atualização de uma sessão GNOME. Observe que isso não se aplica quando o login é efetuado de uma máquina remota (a menos que você esteja executando uma sessão VNC com GNOME).

  3. Se você é assinante do LTSS, verifique se o repositório de extensões LTSS está ativo.

  4. Execute a atualização online do YaST para obter as atualizações de pacote mais recentes para o seu sistema.

  5. Instale o pacote yast2-migration e suas dependências (no YaST em Software › Gerenciamento de Software).

  6. Reinicie o YaST; do contrário, o módulo recém-instalado não será mostrado no centro de controle.

  7. No YaST, escolha Migração Online (dependendo da versão do SUSE Linux Enterprise Server da qual você está fazendo upgrade, este módulo será classificado como Sistema ou Software). O YaST mostra os destinos de migração possíveis e um resumo. Se houver mais de um destino de migração disponível para o seu sistema, selecione um deles na lista.

  8. Selecione um destino de migração na lista e clique em Avançar para continuar.

  9. Se a ferramenta de migração oferecer repositórios de atualização, recomenda-se clicar em Sim para continuar.

  10. Se a ferramenta Migração Online encontrar repositórios obsoletos de DVD ou de um servidor local, será altamente recomendado desabilitá-los. Os repositórios obsoletos são de um SP anterior. Todos os repositórios antigos do SUSE Customer Center ou da RMT são removidos automaticamente.

  11. Confira o resumo e clique em Avançar para continuar a migração. Clique em Iniciar Atualização para confirmar.

  12. Reinicie o sistema após a migração bem-sucedida.

5.5 Fazendo upgrade com o Zypper

Para executar a migração do pacote de serviço com o Zypper, use a ferramenta de linha de comando zypper migration do pacote zypper-migration-plugin.

Nota
Nota: Reduzir o tamanho da instalação

Ao executar a migração do SP, o YaST instalará todos os pacotes recomendados. Principalmente no caso das instalações mínimas personalizadas, isso pode aumentar o tamanho da instalação do sistema de forma significativa.

Para mudar esse comportamento padrão e permitir apenas os pacotes necessários, ajuste /etc/zypp/zypp.conf e defina a seguinte variável:

solver.onlyRequires = true
installRecommends=false # or commented

Isso muda o comportamento de todas as operações de pacote, como a instalação de patches ou novos pacotes. Para mudar o comportamento do Zypper para uma única chamada, adicione o parâmetro --no-recommends à linha de comando.

Para iniciar a migração do pacote de serviço, faça o seguinte:

  1. Se você efetuou login em uma sessão do GNOME em execução na máquina que você pretende atualizar, alterne para um console de texto. Não é recomendável executar a atualização de uma sessão GNOME. Observe que isso não se aplica quando o login é efetuado de uma máquina remota (a menos que você esteja executando uma sessão VNC com GNOME).

  2. Registre a máquina do SUSE Linux Enterprise, caso ainda não tenha feito isso:

    tux > sudo SUSEConnect --regcode YOUR_REGISTRATION_CODE
  3. Se você é assinante do LTSS, verifique se o repositório de extensões LTSS está ativo.

  4. Execute zypper migration:

    tux > sudo zypper migration
    Executing 'zypper  patch-check'
    
    Refreshing service 'SUSE_Linux_Enterprise_Server_12_x86_64'.
    Loading repository data...
    Reading installed packages...
    0 patches needed (0 security patches)
    
    Available migrations:
    
        1 | SUSE Linux Enterprise Server 12 SP1 x86_64
        2 | SUSE Linux Enterprise Server 12 SP2 x86_64

    Algumas observações sobre o processo de migração:

    • Se houver mais de um destino de migração disponível para o seu sistema, o Zypper permitirá selecionar um SP na lista. Isso equivale a ignorar um ou mais SPs. Lembre-se de que a migração online para produtos base (SLES, SLED) permanece disponível apenas entre os SPs de uma versão principal.

    • Por padrão, o Zypper usa a opção --no-allow-vendor-change, que é passada para o zypper dup. Se um pacote foi instalado de um repositório de terceiros, essa opção impede que os pacotes sejam substituídos pelo mesmo pacote que vem do SUSE.

    • Se o Zypper encontrar repositórios obsoletos de DVD ou de um servidor local, será altamente recomendado desabilitá-los. Os repositórios antigos do SUSE Customer Center ou da RMT são removidos automaticamente.

  5. Revise todas as mudanças, principalmente os pacotes que serão removidos. Digite y para continuar (o número exato de pacotes para upgrade pode variar de acordo com o sistema):

    266 packages to upgrade, 54 to downgrade, 17 new, 8 to reinstall, 5 to remove, 1 to change arch.
    Overall download size: 285.1 MiB. Already cached: 0 B  After the operation, additional 139.8 MiB will be used.
    Continue? [y/n/? shows all options] (y):

    Use as teclas ShiftPage ↑ ou ShiftPage ↓ para mover a barra de rolagem no shell.

  6. Reinicie o sistema após a migração bem-sucedida.

5.6 Fazendo upgrade com o Zypper simples

Se você não pode usar a migração do YaST ou do Zypper, ainda pode migrar com o Zypper simples e algumas interações manuais. Para iniciar a migração do pacote de serviço, faça o seguinte:

  1. Se você efetuou login em uma sessão do GNOME em execução na máquina que você pretende atualizar, alterne para um console de texto. Não é recomendável executar a atualização de uma sessão GNOME. Observe que isso não se aplica quando o login é efetuado de uma máquina remota (a menos que você esteja executando uma sessão VNC com GNOME).

  2. Atualize as ferramentas de gerenciamento de pacote com os repositórios antigos do SUSE Linux Enterprise:

    tux > sudo zypper patch --updatestack-only
  3. Se o sistema foi registrado, o registro precisa ser cancelado:

    tux > sudo SUSEConnect --de-register
  4. Remova as fontes de instalação e repositórios antigos e ajuste os repositórios de terceiros.

  5. Adicione as novas fontes de instalação, sejam elas locais ou remotas (para o marcador REPOSITÓRIO, consulte a Seção 2.3, “Dependências de módulos e ciclos de vida”):

    sudo zypper addrepo REPOSITORY

    Você também pode usar o SUSE Customer Center ou a Repository Management Tool. O comando para o SUSE Linux Enterprise 12 SP1 no AMD64/Intel 64 é:

    tux > sudo SUSEConnect -p SLES/12.2/x86_64 OPTIONS

    Lembre-se de que os upgrades compatíveis com várias arquiteturas não são suportados.

    O Zypper exibirá um conflito entre o kernel antigo e o novo. Escolha a Solução 1 para continuar.

    Problem: product:SLES-12.2-0.x86_64 conflicts with kernel < 4.4 provided by kernel-default-VERSION
     Solution 1: Following actions will be done:
      replacement of kernel-default-VERSION with kernel-default-VERSION
      deinstallation of kernel-default-VERSION
     Solution 2: do not install product:SLES-12.2-0.x86_64
  6. Finalize a migração:

    tux > sudo zypper ref -f -s
    tux > sudo zypper dup --no-allow-vendor-change --no-recommends

    O primeiro comando atualiza todos os serviços e repositórios. O segundo comando executa o upgrade da distribuição. Neste ponto, as duas últimas opções são importantes: -no-allow-vendor-change garante que os RPMs de terceiros não sobregravarão os RPMs do sistema básico. A opção --no-recommends garante que os pacotes desmarcados durante a instalação inicial não serão adicionados novamente.

5.7 Voltando um pacote de serviço

Se um pacote de serviço não funcionar para você, o SUSE Linux Enterprise permitirá reverter o sistema ao estado anterior à inicialização da migração do pacote de serviço. O pré-requisito é uma partição raiz Btrfs com instantâneos ativados (este é o padrão ao instalar o SLES 12). Consulte o Chapter 7, System Recovery and Snapshot Management with Snapper para obter os detalhes.

  1. Confira uma lista de todos os instantâneos do Snapper:

    tux > sudo snapper list

    Revise a saída para localizar o instantâneo que foi criado logo antes da inicialização da migração do pacote de serviço. A coluna Descrição contém uma declaração correspondente, e o instantâneo está marcado como important (importante) na coluna Userdata. Memorize o número do instantâneo da coluna e a data da coluna Data.

  2. Reinicialize o sistema. No menu de boot, selecione Iniciar carregador de boot de um instantâneo apenas leitura e escolha o instantâneo com a data e o número que você memorizou na etapa anterior. Um segundo menu de boot (aquele do instantâneo) é carregado. Selecione a entrada que começa com SLES 12 e inicialize-a.

  3. O sistema é inicializado no estado anterior com a partição do sistema montada como apenas leitura. Efetue login como root e verifique se você escolheu o instantâneo correto. Verifique também se tudo funciona conforme o esperado. Como o sistema de arquivos raiz está montado como apenas leitura, pode haver restrições de funcionalidade.

    Em caso de problemas ou se você inicializou o instantâneo errado, reinicialize e escolha outro instantâneo do qual inicializar. Até este ponto, não foram feitas mudanças permanentes. Se o instantâneo está correto e funciona conforme o esperado, faça a mudança permanente executando o seguinte comando:

    tux > sudo snapper rollback

    Reinicialize posteriormente. Na tela de boot, escolha a entrada de boot padrão para reinicializar no sistema restaurado.

  4. Verifique se a configuração do repositório foi redefinida apropriadamente. Verifique também se todos os produtos foram registrados apropriadamente. Se não for nenhum desses casos, a atualização do sistema em um momento posterior talvez não funcione mais, ou o sistema pode ser atualizado usando os repositórios de pacotes errados.

    Verifique se o sistema pode acessar a Internet antes de iniciar este procedimento.

    1. Atualize serviços e repositórios executando

      tux > sudo zypper ref -fs
    2. Obtenha uma lista de repositórios ativos executando

      tux > sudo zypper lr

      Verifique cuidadosamente a saída deste comando. Não deve aparecer na lista serviços e repositórios que foram adicionados para a atualização. Por exemplo, se você estiver voltando do SLES 12 SP1 para o SLES 12 SP2, a lista deverá incluir os repositórios SP1, e não os repositórios SLES12-SP2-Pool e SLES12-SP2-Updates.

      Se na lista constar os repositórios incorretos, apague-os e, se necessário, substitua-os pelas versões correspondentes à versão do produto ou do pacote de serviço. Para obter uma lista de repositórios para os caminhos de migração suportados, consulte a Seção 2.3, “Dependências de módulos e ciclos de vida”.

    3. Por fim, verifique o status do registro para todos os produtos instalados executando

      tux > sudo SUSEConnect --status

      Todos os produtos devem ser relatados como Registered (Registrados). Se não for esse o caso, conserte o registro executando

      tux > sudo SUSEConnect --rollback

Agora, você reverteu com êxito o sistema ao estado que foi capturado logo antes da inicialização da migração do pacote de serviço.

5.8 Migrar do openSUSE Leap para o SUSE Linux Enterprise Server

Você pode migrar uma instalação do openSUSE online para o SUSE Linux Enterprise Server. O procedimento é semelhante ao da Seção 5.5, “Fazendo upgrade com o Zypper”, mas algumas outras etapas são necessárias. É recomendável executar esse procedimento em um sistema de teste que replica a configuração de produção antes de executá-lo no sistema de produção.

Para saber as versões do openSUSE Leap que suportam migração, leia a Seção 1.1, “Caminhos de upgrade suportados para o SLE 15.

Atenção
Atenção: Nem todos os pacotes openSUSE podem ser migrados

Os repositórios do openSUSE incluem mais pacotes do que os que estão disponíveis nos repositórios do SUSE Linux Enterprise Server. Se você tiver algum desses pacotes instalados, eles não receberão mais atualizações após a migração. Esses pacotes serão removidos ao seguir o procedimento abaixo.

Verifique se todos os pacotes necessários para operação do seu sistema estão disponíveis no repositório do SUSE Linux Enterprise Server. Você também pode verificar se os pacotes estão disponíveis no repositório do SUSE Package Hub. Para obter os detalhes, consulte o Seção 18.3, “SUSE Package Hub”.

Para migração do openSUSE Leap, execute o procedimento a seguir:

  1. Alterne para uma TTY. Por exemplo, pressione CtrlAltF1. Em seguida, efetue login como root.

  2. Instale o SUSEConnect.

    root # zypper in SUSEConnect
  3. Faça download do arquivo ISO do DVD de instalação e monte-o. Em seguida, importe as chaves de repositório para o SLE.

    root # mount /PATH/TO/ISO_FILE /mnt
    root # rpm  --import /mnt/repodata/repomd.xml.key
    root # umount /mnt
  4. Registre-se no SCC para acessar os repositórios do SUSE Linux Enterprise Server.

    root # SUSEConnect -r REGISTRATION_CODE -p SLES/PRODUCT_VERSION/ARCHITECTURE

    Substitua VERSÃO_DO_PRODUTO pela versão de destino do SUSE Linux Enterprise Server. Por exemplo, 15.0.

    Substitua ARQUITETURA pela arquitetura do seu sistema. Por exemplo, x86_64 ou AArch64.

    Ignore a mensagem de erro sobre os produtos em conflito.

  5. Agora, adicione manualmente o produto SLES.

    root # zypper in --force-resolution -t product SLES

    Confirme a seleção dos pacotes com y.

  6. Liste e, em seguida, remova todos os repositórios do openSUSE do sistema.

    root # zypper lr
    root # zypper rr [REPOSITORY_IDS]
  7. Agora, adicione os módulos necessários à sua instalação.

    root # SUSEConnect --list-extensions
    [...]
    root # SUSEConnect -p sle-module-basesystem/VERSION/ARCHITECTURE
  8. Migre os pacotes instalados para os repositórios do SUSE Linux Enterprise Server.

    root # zypper dup --force-resolution

    Após o download, os conflitos de arquivo poderão ser exibidos. Verifique se eles afetam você e digite yes para continuar.

  9. Opcional: Adicione outros repositórios, como o Package Hub, e execute o zypper dup novamente.

  10. Remova os pacotes órfãos.

    root # zypper rm $(zypper packages --orphaned | gawk '{print $5}' | tail -n +7)
  11. Por fim, reinicialize o sistema.