Atualização do Fedora

Atualização Fedora 19 para 20 em 2 modos, fedup e yum.

Daqui alguns dias, especificamente no dia 10 de dezembro será lançado oficialmente no site do projeto fedora a distribuição na versão 20. Para que voce não precise baixar a ISO no site e entrar com “linux updates” na primeira tela de instalação ou aguardar a solicitação no decorrer da instalação do anaconda, então resolvi escrever essa materia para facilitar a vida de quem vai atualizar o Fedora 19 para o Fedora 20. Vale lembrar que toda contribuição para a comunidade é algo de valor e isso afeta totalmente os principais valores do Fedora que são a “liberdade”, os “recursos”, os “amigos” e o “primeiro”, pois como existem 2 atualizações por ano vc sempre terá o gostinho de usar sempre os mais recentes pacotes em suas versões sem ter que esperar muito por eles, ou seja, espalhem e contribua todo o seu sucesso com o Fedora no seu uso diário e profissional. Sobre o Fedora 20 “Heisenbug”, ele vem com total suporte a arquitetura arm para um “default”, bluez para controle dos dispositivos bluetooth, melhorias no Network-Manager (bom eu nao gosto disso, rs), melhorias para cloud e virtualização (não estou entrando no assunto agora), sendmail parece nao estar mais presente no padrão, syslog sob a gestão do systemd ou seja ele nao vem mais como padrão de instalação, então use o journalctl (-f para jogar no modo pager para as novas entradas em /var/log/messages, suporte do gdm e gnome-shell ao Wayland e muitos mais.

Método FedUp

De acordo com a documentação do Fedora em fedoraproject.org a atualização do Fedora via yum nao é recomendado para novos usuários e apenas para os experientes, então recomenda-se o uso o fedup. Mas como para cada release existe uma recomendação ja definida e totalmente funcional desde o Fedora 17, que antes era utilizado o Preupgrade atraves do utilitário preupgrade-cli que era possivel ate realizar essa atividade pela rede via o protocolo VNC (pelas opções –vnc, –ip, e por ai vai).
O Preupgrade foi substituido no Fedora 17 definitivamente para o fedup onde o mesmo passou a ser recomendado. Umas coisa é baixar toda a imagem que compoe o CD/DVD de instalação fazendo então a atualização de toda lsb, outra coisa é sincronizar e atualizar todos os pacotes instalados para a versão acima, mas ainda sim atualizando definitivamente para a versão mais nova (de forma segura é clara).

O FedUp (FEDora UPgrader), ou fedup.py é um script em python que permite atualizar a distribuição de forma muito similar ao Preupgrade que utiliza um repositório para fazer o download de todos os pacotes para que a sua migração e atualização começe. A atualização dar-se da seguinte forma, o script (ou cliente) faz o download de todos os pacotes para o cache em /var/tmp/fedora-upgrade/ (ou vc pode especificar um em –cachedir) e prepara a atualização com ajuda do systemd e yum. Vale lembrar tambem que todos os pacotes de repositórios aceitos no na solicitação da atualização serão armazenados em cache do fedora-update e foram para o processo de atualização, ficam especificamente armazenados em /var/tmp/fedora-upgrade/<fonte>, como do repositorio especifico do gooogle-chrome, tudo sendo sempre verificado checksun/sha1/md5/sha256/sha512. Com o FedUp vc pode atualizar também direto de uma ISO (opção –iso) e fazer com que ele reinicie a maquina para dar continuidade apos baixar todos os pacotes com –reboot e ate mesmo ignorar repositórios.

Mas enfim, o que ele faz? Ele reune todos os pacotes necessários para a atualização, como o initramfs, kernel, libs e apps necessários para uma atualização real e direta, similar ao do CD de instalação que dar-se inicio apos o cli do fedup se autocompletar. A atualização acontece quando o sistema é reinicializado após o cli do fedup baixar todos os pacotes e armazenar em cache. Após ele buscar e configurar as imagens de inicialização necessária para executar a atualização, ele configura todo o sistema para dar continuidade e então abre a imagem real de instalação com o initrd em sistema normal, montando todos os sistemas de arquivos locais e em seguida começa a atualização. Você vai notar isso pois o plymouth vai abrir uma barra de progresso para indicar o progresso de atualização e então as telas do mesmo. Vale lembrar que voce sempre pode usar o fedup ou diretamente o yum para baixar uma distro beta e de desenvolvimento como a rawhide.

Mas aqui vai uma recomendação fiel minha, sempre procure ler o site do fedoraproject antes de atualizar para se certificar se há alguma observação importante, como por exemplo na atualização para o Fedora 19, existia uma incompatibilidade com o systemd, pois o Fedora 19 estabelece a hierarquia com o Cgroups de uma forma diferente dos outros Fedoras, o systemd usa o cgroups (control groups), para agrupar os programas ou processos e isso pode “se perder”, devido ao systemd ter esse controle atraves de “tags”. Tambem mantenha o seu SeLinux sempre em “Permissive mode”, porque durante a atualização varios pacotes novos são instalados e com isso muitos usuários e grupos podem ser criados e a monitoração do selinux pode fazer vc sofrer um erro chato (nao estou mandando voce desabilitar o selinux como fazem 18973482374 de pessoas ;)

Primeiro atualize o seu yum, sua distribuição, instale o fedup e atualize seu lsb:

# yum update -y && yum clean all && yum install fedup -y
# fedup-cli –network 20 –debuglog fedupdebug20.log
# reboot (ou coloque –reboot no comando acima)

Ponto de Atenção: dependendo do seu browser e fonte os 2 tracinhos podem não sair ou como uma única linha. Ou seja, é – –

E nao esquecer de selecionar o System Upgrade no menu do grub, lembrando que os logs estão armazenados em /var/log/fedup.log

Pronto! Mas deixa então eu te ensinar o melhor dos mundos utilizando o próprio yum e até mesmo o que é recomendado pelo projeto Fedora desde a versão 17.

Método YUM

O outro método de atualização é realizado pelo próprio yum (Yellowdog Update, Modified) que permite resolver as dependências do rpm, baseado no rpm e similar aos outros gerenciadores de pacotes e facilitadores como o apt, pacman e zypper. Bom, vc ja sabe o que é o yum e estou levando em consideração isso. Eu particularmente prefiro o yum ao apt devido a sua flexibilidade para atualizar um ou mais pacotes, como a centralização no unico software de todas as informações de cache, mesmo que ele seja muito mais lento que o apt. Bom, vou escrever uma materia diferenciando o apt do yum. Entao conforme eu falei la em cima, se voce ja é um usuário experiente no Fedora (ou ja quer experimentar o melhor dos mundos), então atualize do Fedora 19 para o Fedora 20 diretamente pelo proprio yum, utilizando a opção distribution-synchronization ou distro-sync do comando yum.

Mas vai uma observação aqui: o yum distro-sync sincroniza o pacote instalado com o ultimo pacote disponível no mainline do Fedora, isso é feito como um procedimento de upgrade do yum ou seja, se voce for atualizar o pacote foobar que esta na versão 8 mas o recente e disponivel voltou para a versao 7, ele vai realizar um downgrade do seu pacote conforme o seu controle normalmmente de acordo com o seu rpmdb (podendo utilizar a opção full tambem).

Então vamos la!

Primeiro baixe a gpg key e importe para o rpm
# rpm –import https://fedoraproject.org/static/246110C1.txt

Depois atualize o yum com o comando:
# yum update yum -y

Agora atualize a sua distro com o comando:
# yum –releasever=20 distro-sync

Ponto de Atenção: dependendo do seu browser e fonte os 2 tracinhos podem não sair ou como uma única linha. Ou seja, é – –

Neste caso o releasever ou $releasever define todo o padrao para qual repositório e para qual versão ele vai pegar, bem similar e ao mesmo método que voce encontra nos arquivos de repositório no seu /etc/yum.repos.d, onde a variavel $releasever faz uma consulta na versão do seu sistema operacional (distribuição fedora) em /etc/fedora-release. A opção –releasever nem precisa ser adicionada a instrucao pois voce esta subindo para uma versão nova liberada, mas pode ser combinada com a opção –installroot que especifica basicamente a “raiz” para ser instalada. Caso necessite desabilitar algum puglin, use “–disableplugin=<nome>”.

Caso voce tenha alguma pendência para a atualização não prosseguir como algo armazenado em cache de atualizações feitas pelo yum, conforme mencionei la em cima voce pode proseguir com o comando yum-config-manager –disable <o repositorio safado>. Mas cuidado, ele vai colocar “enable=0”, para desabilitar esse repositorio de forma em geral no seu /etc/yum.repos.d/<seu repositorio>.repo. Para habilitar novamente: yum-config-manager –enable <aquele repositorio que vc desabilitou antes>

Aguarde …. aguarde … aguarde …. aguarde …… complete a instalação e bem vindo ao Fedora 20.

Em ambos os métodos é importante voce não se esquecer de colocar o SeLinux no modo permissive como ja mencionei antes com o comando:

# setenforce Permissive

OUtro fator é que devido a atualização tenha ocorrido a sua consulta a base do rpm por “rpm -qa”, pode não funcionar corretamente então apenas recrie a base de dados rpm, com o seguinte comando (similar ao gencaches, se é que vc me entendeu)

# rpm –rebuilddb

 

Algumas considerações finais.

Como a instalação dos métodos usam o rpm para instalar pacotes, é recomendado que voce instale antes o rpmconf que permite que ele localize os arquivos .rpmnew, .rpmsave e .rpmorigfiles afim de resolver algumas pendências com seus devidos arquivos de configuração de alguns softwares. Ele pode encontrar situações que solicitam mudanças ou atualizações de arquivos de configuração como os proprios do yum ou cups, por exemplo. A ideia de vc executar o rpmconf antes é remover todas esses arquivos que estão como denpendências e que vc pode consultar com o comando: find /etc /var -name ‘*?.rpm?*’

# rpmconf -a (ou –all)

Voce também pode procurar por pacotes que nao são mais requeridos por outros pacotes e estão ai prontos para serem removidos com o comando yum install yum-utils; package-cleanup –leaves então aproveite para fazer essa limpeza no sistema, pois estão todos prontos para serem removidos por yum remove, como também procurar por pacotes que podem ser removidos que estão duplicado e principalmente orfãos com o comando: package-cleanup –orphans. ( julgue vc se é necessario apagar mesmo, pois pacotes como skype, google-earth e outros podem aparecer nesta lista de orfaos).

Com isso voce ja consegue atualizar a sua distribuição Fedora, é o poder!

Baixe a capa do DVD Fedora 20 https://fedoraproject.org/wiki/Artwork/MediaArt/F20

Powered by Moblie Video for WordPress + Daniel Watrous