Upgrade do Ubuntu Server para 12.04 LTS
Introdução
Neste artigo vamos explicar o processo à ser realizado para fazer o upgrade no Ubuntu server, para à última versão, 12.04 LTS (Precise). Precisei fazer o upgrade do ubuntu server, da versão 10.10 (Maverick) para a útlima, 12.04 LTS (Precise). No caso, fiz o upgrade primeiramente para a versão 11.04 (Natty), depois para a versão 11.10 (Oneiric) e finalmente para 12.04. Pelo que andei pesquisando, pude observar que alguns textos dizem que é possível fazer o upgrade diretamente de qualquer versão para à última LTS. Porém não quis arriscar em servidores de produção. Portanto, fiz a atualização de forma gradual.
Além do processo de upgrade, procurei passar para vocês, como resolvi alguns erros que apareceram durante o procedimento. Vale salientar, que este artigo se refere somente à versão server do Ubuntu. A versão desktop pode ser feita através de um procedimento diferente.
Procedimento
- Logar no Ubuntu server como root
- update no apt-get
- Instalação/Atualização do update-manager-core
- Editar o arquivo /etc/update-manager/release-upgrades e alterar Prompt=lts para Prompt=normal:
[DEFAULT]
# Default prompting behavior, valid options:
#
# never - Never check for a new release.
# normal - Check to see if a new release is available. If more than one new
# release is found, the release upgrader will attempt to upgrade to
# the release that immediately succeeds the currently-running
# release.
# lts - Check to see if a new LTS release is available. The upgrader
# will attempt to upgrade to the first LTS release available after
# the currently-running one. Note that this option should not be
# used if the currently-running release is not itself an LTS
# release, since in that case the upgrader won't be able to
# determine if a newer release is available.
Prompt=normal
- Iniciar o processo de upgrade
- Caso esteja atualizando via ssh, será alertado sobre o risco de ocorrer algum problema durante o upgrade e você perder a conexão. De qualquer forma, um ssh alternativo é aberto na porta 1022. Sempre que possível, executar o upgrade diretamente no terminal físico do servidor.
- Durante o upgrade, você será alertado sobre alguns processos que precisam ser re-inciados devido à atualização de pacotes. Pode autorizar tranquilamente a re-inicializaçao desses processos.
- Alguns pacotes, ao serem atualizados para novas versões (apache, php, samba, etc.), terão novos arquivos de configuração. O mecanismo de upgrade do Ubuntu irá perguntar o que deseja fazer com os novos arquivos. (Manter o atual, sobrescrever com o novo, fazer um diff, etc.) Eu aconselho a sempre instalar o arquivo de configuração da nova versão do pacote. E depois do upgrade ajustar os parâmetros de acordo com sua necessidade. Portanto, antes do upgrade, faça um backup dos seus principais arquivos de configuração. Exemplo: /etc/php5/apache/php.ini, /etc/apache2/apache2.conf, /etc/samba/smb.conf
- Durante o upgrade, normalmente para a versão 11.10 (Oneiric), o grub acusa que precisa ser instalado novamente e te mostra as opções dos possíveis locais onde pode ser instalado. Aconselho a instalar no MBR do seu disco (ex: /dev/sda).
- Durante o upgrade, passando pela versão 11.10 (Oneiric), existe um bug que faz o comando fuser usar 100% de CPU, fazendo fork de forma incontrolada. Percebi esse problema, pois o sistema acusa direto que não conseguia alocar memória. O fuser é disparado por um processo do php que roda no crontab. Antes de continuar com o upgrade para à versão 12.04, para não ter imprevistos, faça a devida mudança no arquivo /etc/cron.d/php5:
Trocar a linha:
09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete
Para:
09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete
- Em um dos servidores que fiz o upgrade, tive um problema no terminal físico dele. A tela ficava em preto e não conseguia visualizar nada nela. Fiz diversas mudanças em arquivos de configuração do grub e do console. As duas configurações abaixos resolveram o meu problema:
No arquivo /etc/default/grub, trocar a linha:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
Para:
GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"
No arquivo /etc/default/console-setup, trocar a linha:
FONTFACE="VGA"
Para:
FONTFACE="Fixed"
# apt-get update
# apt-get install update-manager-core
# do-release-upgrade
Observações:
Cara, muito boas as dicas, passei por essa atualização, deu tanto rolo que acabei fazendo da forma mais tosca, como tem backup atualizado diariamente, parei tudo numa sexta à noite, formatei e instalei a versão 12.04 e passei o sábado configurando tudo e restaurando o backup, na segunda-feira quando o povo chegou, o server já estava rodando redondo com a nova versão.
Se tivesse lido o teu artigo antes, provavelmente eu teria me poupado desse trabalhão, hehehehe…
Valeu pelas dicas.
Amilton
outubro 24, 2012
Obrigado Amilton!!
Boa sorte!
pasquati
outubro 24, 2012