TutoriaisUbuntu

Conheça 3 maneiras de impedir um software de ser atualizado no Ubuntu

Manter o sistema e as aplicações atualizadas é uma das recomendações mais básicas para todos os usuários. Isso porque manter softwares desatualizados deixa os usuários potencialmente mais vulneráveis a bugs, incompatibilidades e até mesmo a falhas de segurança.

Talvez você esteja se perguntando: “por que escrever um artigo ensinando a manter pacotes desatualizados quando tal atitude pode trazer tantos riscos aos usuários?”

Por que manter um software desatualizado no sistema?

Na verdade existem várias razões que podem fazer com que seja uma boa ideia manter um, ou dois, ou várias aplicações específicas desatualizadas no sistema. Embora atualizações na maioria das vezes tragam melhorias de desempenho, melhor compatibilidade e aumentem a segurança dos softwares, em alguns casos as novas versões também podem trazer bugs das mais variadas naturezas.

Embora seja menos comum, também pode ocorrer da nova versão de um software deixar de suportar determinado formato de arquivo. É claro que em casos assim a atitude recomendada é que você procure um software alternativo e atualizado que ofereça o suporte que você precisa. Todavia, quando isso não é possível ou viável a melhor opção para contornar a situação temporariamente pode ser manter aquela aplicação “congelada” na versão em que ainda suportava o formato com o qual você precisa trabalhar.

Enfim, é por essas e outras razões que manter um software “preso” em uma versão específica pode ser uma boa forma de “quebrar o galho” enquanto uma solução mais apropriada não está disponível.

Mostrarei à vocês três procedimentos diferentes para atualizar todo o sistema, exceto um ou mais pacotes específicos que você escolher.

Como saber qual é o nome de um pacote/programa?

Para utilizarmos os métodos mostrados adiante é importante sabermos qual é o nome do pacote que desejamos congelar e a sua versão nos repositórios do sistema.

Fazer isso é muito simples. Para saber qual é o nome de um programa que você já tem instalado no seu sistema utilize o comando abaixo, substituindo “PROGRAMA” pelo nome do software que você deseja pesquisar.

 dpkg -l | grep PROGRAMA

Será exibida uma lista semelhante ao que é mostrado na imagem abaixo:

pesquisa-de-softwares-instalados-ubuntu

Alternativamente você pode pesquisar também pelos nomes de softwares que não estão instalados no seu sistema. Para isso utilize o comando a seguir.

apt search PROGRAMA

Conforme pode ser visto na imagem abaixo, será exibida uma lista de softwares que correspondem a sua pesquisa, na qual você poderá identificar o nome do pacote que você precisa.

pesquisa-de-softwares-no-repositório-ubuntu

1 – Como “congelar” a versão de um software no Ubuntu via interface gráfica

Para realizar este procedimento via interface gráfica faremos uso do Synaptic. Um gerenciador de pacotes via interface gráfica sobre o qual já falamos em vários artigos aqui no blog e também no canal Diolinux no YouTube.

Caso seja a primeira vez que você esteja ouvindo sobre este software, o vídeo abaixo é uma ótima pedida para você se familiarizar com o Synaptic e tirar melhor proveito deste artigo.

Apesar do Synaptic ser um excelente software, bloquear a atualização de pacotes através dele surtirá efeito apenas quando você utilizar o Atualizador de Programas do Ubuntu, a Ubuntu Software ou o próprio Synaptic para atualizar o seu sistema. Se o sistema for atualizado via linha de comando com o “apt upgrade” todos os softwares serão atualizados, inclusive aqueles que você “bloqueou” no Synaptic.

Este método é recomendado apenas para usuários do Ubuntu (e não suas derivações) que utilizem preferencialmente a interface gráfica para atualizar o sistema.

Vamos ao procedimento

Para instalar o Synaptic execute o comando abaixo no seu terminal:

sudo apt install synaptic

Com o Synaptic aberto, utilize a barra de pesquisa para encontrar o software que você deseja manter congelado, selecione-o, na região superior esquerda da janela clique no menu “Pacote” e então em “Bloquear versão”.

pesquisa-de-softwares-synaptic-interface-grafica-ubuntu
impedir-um-software-de-ser-atualizado-1

Para desfazer as alterações basta desmarcar a opção “Bloquear versão” que você marcou anteriormente.

impedir-um-software-de-ser-atualizado-2

Ao clicar no botão “Status” e em seguida na seção “Pinned” na lateral esquerda do Synaptic serão mostrados todos os pacotes que você tem na condição “não atualizar”.

2 – Como manter um software desatualizado no Ubuntu via linha de comando

Através do terminal podemos marcar pacotes para não serem atualizados utilizando o comando “apt-mark”. Apesar de não ser via interface gráfica, este é um método extremamente simples e muito mais eficaz do que aquele realizado pelo Synaptic, pois o “apt-mark” surte efeito para todas as formas de atualização do sistema. Seja via interface gráfica ou linha de comando (apt upgrade).

Para utilizar o “apt-mark” simplesmente execute o comando abaixo no seu terminal, substituindo “PACKAGE” pelo nome do pacote que você deseja manter desatualizado.

sudo apt-mark hold PACKAGE

Por exemplo, para impedir que o Firefox seja atualizado o comando é:

sudo apt-mark hold firefox

O comando a seguir mostra quais softwares estão marcados para não serem atualizados.

apt-mark showhold

Para fazer com que uma aplicação volte a ser atualizada normalmente com o sistema, utilize o comando abaixo substituindo “PACKAGE” pelo nome do software desejado.

sudo apt-mark unhold PACKAGE

3 – Mais uma alternativa via terminal: utilize o “dpkg”

Em versões mais antigas do Ubuntu, como a 18.04 LTS e versões anteriores, bem como no Debian, é possível que o “apt-mark” não surta o efeito desejado. Caso isso ocorra, ainda podemos utilizar o “dpkg” para chegar ao mesmo resultado.

Para impedir um software de ser atualizado utilizando o “dpkg” rode o comando abaixo substituindo “PACKAGE” pelo nome do pacote desejado:

echo "PACKAGE hold" | sudo dpkg --set-selections

Para desfazer o “bloqueio” em um pacote específico, utilize o comando abaixo:

echo "PACKAGE install" | sudo dpkg --set-selections

Caso você queira verificar quais pacotes encontram-se configurados para não serem atualizados, utilize:

dpkg --get-selections | grep hold

Congele com moderação

O objetivo deste artigo é que você saiba que possui essa opção de funcionalidade. Todavia, utilize-a com cuidado! Como já dissemos, manter pacotes desatualizados pode trazer bugs e incompatibilidades para o seu sistema, de forma que é recomendado que você o faça apenas em caso de extrema necessidade.

Parabéns! A partir de agora você saberá o que fazer sempre que precisar manter uma versão específica de um software sem deixar de atualizar o sistema.

Esta dica foi útil para você? Ou você conhece algum outro método para obter os mesmos resultados? Conte para a gente nos comentários abaixo, e vamos compartilhar o conhecimento! 😁

Leia também: Como impedir um software de ser atualizado no Fedora

Você gosta de Linux e tecnologia? Tem alguma dúvida ou problema que não consegue resolver? Venha fazer parte da nossa comunidade no fórum Diolinux Plus!

Isso é tudo pessoal! 😉

Diolinux Ofertas - Aproveite os melhores descontos em diversos produtos!