Adaptar - Execute qualquer versão do aplicativo em qualquer versão do Ubuntu
Adaptar - Execute qualquer versão do aplicativo em qualquer versão do Ubuntu
Conheça o 'Adapt' que adapta qualquer aplicativo de qualquer versão do Ubuntu. Adapt é um aplicativo simples, mas muito útil, que pode ser usado para instalar qualquer pacote de qualquer versão do Ubuntu em qualquer versão do Ubuntu sem usar nenhum PPA. Para simplificar, o Adapt é usado para executar qualquer versão do aplicativo em qualquer versão do Ubuntu.
Você não precisa esperar que os desenvolvedores atualizem seu PPA para qualquer aplicativo específico. Basta instalar o adapt e começar a instalar o aplicativo desejado em qualquer versão do Ubuntu. Não apenas no Ubuntu, você pode executar qualquer aplicativo de qualquer outra distribuição Linux, por exemplo CentOS. Em termos leigos, Adaptar é como um comando apt que nos permite executar software antigo em um sistema operacional mais recente ou software mais recente em um sistema operacional mais antigo. Parece maravilhoso? É sim.
O utilitário Adapt é algo semelhante ao Linux Containers, mas um pouco diferente. O Adapt usa contêineres de sistema LXD e Ubuntu leves para atingir esse objetivo. Aqui, nos referimos aos contêineres como contêiner adaptável. Sempre que você instalar o pacote, ele será instalado em um contêiner adaptável. Da mesma forma, sempre que você remover um aplicativo, ele será removido do contêiner do Adapt.
Adapt é desenvolvido por Dustin Kirkland da equipe de Produto e Estratégia Ubuntu da Canonical. Ele foi desenvolvido principalmente para sistemas Ubuntu, mas pode funcionar em outros derivados do Ubuntu.
Por que 'adaptar-se'?
Às vezes, você precisa usar ou testar um pacote atualizado da versão mais recente do Ubuntu ou de outra distribuição. Claro, os pacotes atualizados estarão disponíveis no repositório Ubuntu Backports. Alternativamente, você pode usar os PPAs de software para obter os pacotes atualizados. Caso alguns dos pacotes atualizados não estejam disponíveis no repositório backports e PPA por algum motivo, o utilitário 'adapt' vem em ajuda.
Neste breve tutorial, vamos ver como instalar e usar o Adapt no desktop Ubuntu 16.04 LTS.
Instale o Adapt no Ubuntu
Testei 'adapt' no desktop Ubuntu 14.04 LTS e no desktop Ubuntu 16.04 LTS. Funcionou perfeitamente.
Para adicionar PPA 'adapt', execute:
sudo add-apt-repository ppa:adapt/ppa
No Ubuntu 14.04, devemos adicionar o seguinte PPA. No Ubuntu 14.10 e versões posteriores, não é necessário.
sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable
Atualize os repositórios de software usando o comando:
sudo apt-get update
Por fim, instale o adapt conforme mostrado abaixo.
sudo apt-get install adapt lxd
Execute qualquer versão do aplicativo em qualquer versão do Ubuntu usando Adapt
O uso do Adapt é simples e direto como o comando 'apt'. Vejamos alguns exemplos.
Estou no desktop Ubuntu 16.04 LTS. Para visualizar a versão do Ubuntu, execute:
cat /etc/lsb-release
Exemplo de resultado:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu Xenial Xerus"
Bem, agora preciso instalar o software Nginx da versão Ubuntu 14.04 na versão atual do Ubuntu (16.04 no nosso caso). Como posso fazer isso? Baixe manualmente o arquivo deb Nginx para uma versão confiável no Xenial. Não. Porém, não é necessário.
Veja como o método adapt simplifica esta tarefa:
sudo adapt install -r trusty -p nginx
Aqui,
- -r : Nome da versão da distribuição (Trusty, Xenial etc.)
- -p : Nome do pacote
O comando acima irá baixar a imagem do contêiner Ubuntu 14.04 LTS (nós a chamamos de contêiner adapt) e instalar o Nginx nela. Claro?
Da mesma forma, você pode remover um software e executá-lo.
sudo adapt purge -r trusty -p gcc
Agora, você pode perguntar por que deveríamos nos complicar? Você pode pensar que podemos simplesmente instalar o lxd no Xenial e obter a distribuição de nossa escolha, fazer login no contêiner e, finalmente, instalar os pacotes necessários? Claro que nós podemos. Porém, o Adapt simplifica essa tarefa com muito mais facilidade e executa toda a tarefa acima em um único comando.
Além disso, você pode instalar software de versão superior na versão inferior do Ubuntu.
Por exemplo, para instalar um software de uma versão superior (por exemplo, Ubuntu 15.10) em uma versão inferior (por exemplo, Ubuntu 14.04 LTS), use o seguinte comando:
sudo adapt install -r wily -p nginx
Para listar os contêineres adapt disponíveis, execute:
sudo adapt list
Exemplo de resultado:
| adapt-ubuntu-trusty | RUNNING | 10.0.3.114 (eth0) | | PERSISTENT | 0 |
| adapt-ubuntu-xenial | RUNNING | 10.0.3.242 (eth0) | | PERSISTENT | 0 |
Como você pode ver na saída acima, baixei dois contêineres, um é confiável e outro é Xenial. Além disso, o comando acima exibe o endereço IP de cada contêiner.
Instalamos o Nginx no Container, certo? Então, vamos verificar se o Nginx está funcionando ou não.
Para isso, abra seu navegador Web e aponte-o para o endereço IP do Container, por exemplo http://10.0.3.114/.
Você verá a página de teste do Nginx.
Como você pode ter tanta certeza de que instalamos o Nginx do Ubuntu 14.04 LTS? Vamos verificar isso.
Faça login no contêiner usando o comando:
sudo lxc exec adapt-ubuntu-trusty /bin/bash
Aqui, adapt-ubuntu-trusty é o nome do meu contêiner. Você pode usar o comando "sudo adapt list" para descobrir os detalhes do contêiner.
Encontre a versão do Ubuntu usando o comando:
cat /etc/lsb-release
Exemplo de resultado:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.4 LTS"
Encontre a versão da versão Nginx.
Como você provavelmente sabe, para encontrar uma versão de pacote no Ubuntu e derivados, usamos o seguinte comando
apt-cache policy <packageName>
Exemplo :
apt-cache policy nginx
Exemplo de resultado:
nginx:
Installed: 1.4.6-1ubuntu3.4
Candidate: 1.4.6-1ubuntu3.4
Version table:
*** 1.4.6-1ubuntu3.4 0
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
100 /var/lib/dpkg/status
1.4.6-1ubuntu3 0
500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
Como você pode ver nos resultados acima, instalamos o Nginx do Ubuntu 14.04 LTS rodando no Ubuntu 16.04 LTS.
E as outras distribuições? É possível usar outras distros exceto o Ubuntu? Sim absolutamente. Vamos instalar o Nginx do CentOS 7 no Ubuntu 16.04 LTS.
Para fazer isso, basta executar:
sudo adapt install -d centos -r 7 -p epel-release
sudo adapt install -d centos -r 7 -p nginx
Aqui,
- -d : Nome da distribuição
- -r : Versão de lançamento
- -p : Nome do pacote
Inicie e habilite o serviço nginx usando o comando:
sudo adapt run -d centos -r 7 -c "systemctl start nginx"
sudo adapt run -d centos -r 7 -c "systemctl enable nginx"
Agora, abra o navegador da web e aponte-o para http://container-ip/.
Como você pode ver acima, instalei o Nginx do CentOS 7 rodando no desktop Ubuntu 16.04 LTS. Legal, sim?
Como mencionei anteriormente, você pode encontrar os detalhes do contêiner, como nome, endereço IP e status, usando o seguinte comando:
sudo adapt list
Para saber mais sobre o uso do Adapt, consulte as páginas de manual.
man adapt
Conclusão
Adapt é bastante adequado para desenvolvedores que desejam adaptar um pacote de uma versão mais recente do Ubuntu em seu desktop ou servidor LTS estável. Além disso, o adapt permite que os desenvolvedores forneçam as versões mais recentes para fins de teste aos usuários que executam uma versão LTS mais antiga do Ubuntu. Por usar contêineres LXD, é leve e você não precisa instalar nenhum software de virtualização extra para testar vários aplicativos de várias distribuições.
Referência:
- Blog de Dustin Kirkland