[FUG-BR] make installworld em produção

Renato Botelho rbgarga em gmail.com
Sexta Setembro 2 18:20:30 BRT 2016


> On Sep 2, 2016, at 11:06, Robson Peripolli Rodrigues <peripolli at gmail.com> wrote:
> 
> Bom dia pessoal estou precisando aplicar um patch em um sistema em produção
> e preciso saber se alguém já teve algum problema com o make installworld
> com o sistema em produção. Pela documentação é aconselhado a execução deste
> comando em single-use, mas eu não consigo deixar este servidor muito tempo
> off, mesmo na madrugada. Estou me referindo na hora de recompilar o sistema
> com buildworld e installworld.

O procedimento que eu uso normalmente pra atualizar servidores em produção é:

Quando vou fazer um upgrade pra um novo major version, caso tenha ports antigos eu gosto de já atualizá-los antes pra depois não ter perigo de ficar confuso se quebrou por conta do upgrade de versão do port ou por conta do novo OS.

# make buildworld buildkernel
# make installkernel KODIR=/boot/kernel.new
# nextboot -k kernel.new
# reboot

Isso foi feito pra setar o próximo boot em kernel.new. Caso o boot não ocorra por algum problema no novo kernel basta desligar/ligar a energia e no próximo ele boota no kernel anterior em /boot/kernel.

Se isso funcionou então eu prossigo:

# make installkernel (agora sim substituindo o /boot/kernel)
# make installworld
# etcupdate (ou mergemaster se vc preferir)
# reboot

Caso seja um upgrade pra algum novo major version (10 -> 11) então eu faço:

# pkg-static upgrade -f pkg
# pkg upgrade

Ou tudo pelo ports se vc preferir. Isso vai garantir que todos os binários atuais sejam do novo major version.

# reboot (pra validar que todos os serviços estão subindo perfeitamente)

# yes | make delete-old delete-old-libs

Pra remover todos os arquivos obsoletos.

[]s
--
Renato Botelho



Mais detalhes sobre a lista de discussão freebsd