Pesquisa de site

Um guia para iniciantes em Snaps no Linux - Parte 1


Nos últimos anos, a comunidade Linux foi abençoada com alguns avanços notáveis na área de gerenciamento de pacotes em sistemas Linux, especialmente quando se trata de empacotamento e distribuição de software universal ou de distribuição cruzada. Um desses avanços é o formato de pacote Snap desenvolvido pela Canonical, os criadores do popular Ubuntu Linux.

O que são pacotes instantâneos?

Snaps são aplicativos de distribuição cruzada, livres de dependências e fáceis de instalar, empacotados com todas as suas dependências para serem executados em todas as principais distribuições do Linux. A partir de uma única compilação, um snap (aplicativo) será executado em todas as distribuições Linux suportadas no desktop, na nuvem e na IoT. As distribuições suportadas incluem Ubuntu, Debian, Fedora, Arch Linux, Manjaro e CentOS/RHEL.

Os Snaps são seguros – eles são confinados e colocados em uma área restrita para não comprometer todo o sistema. Eles funcionam sob diferentes níveis de confinamento (que é o grau de isolamento do sistema base e entre si). Mais notavelmente, cada snap possui uma interface cuidadosamente selecionada pelo criador do snap, com base nos requisitos do snap, para fornecer acesso a recursos específicos do sistema fora de seu confinamento, como acesso à rede, acesso à área de trabalho e muito mais.

Outro conceito importante no ecossistema snap é o de Canais. Um canal determina qual versão de um snap é instalada e rastreada para atualizações e consiste e é subdividido por rastreios, níveis de risco e ramificações.

Os principais componentes do sistema de gerenciamento de pacotes snap são:

  • snapd – o serviço em segundo plano que gerencia e mantém seus snaps em um sistema Linux.
  • snap – tanto o formato do pacote de aplicativos quanto a ferramenta de interface de linha de comando usada para instalar e remover snaps e fazer muitas outras coisas no ecossistema snap.
  • snapcraft – a estrutura e a poderosa ferramenta de linha de comando para criar snaps.
  • snap store – um lugar onde os desenvolvedores podem compartilhar seus snaps e os usuários do Linux os pesquisam e instalam.

Além disso, os snaps também são atualizados automaticamente. Você pode configurar quando e como as atualizações ocorrem. Por padrão, o daemon snapd verifica atualizações até quatro vezes por dia: cada verificação de atualização é chamada de atualização. Você também pode iniciar uma atualização manualmente.

Como instalar o Snapd no Linux

Conforme descrito acima, o daemon snapd é o serviço de segundo plano que gerencia e mantém seu ambiente snap em um sistema Linux, implementando as políticas de confinamento e controlando as interfaces que permitem que os snaps sejam executados. acessar recursos específicos do sistema. Ele também fornece o comando snap e serve a muitos outros propósitos.

Para instalar o pacote snapd em seu sistema, execute o comando apropriado para sua distribuição Linux.

------------ [On Debian and Ubuntu] ------------ 
sudo apt update 
sudo apt install snapd

------------ [On Fedora Linux] ------------
dnf install snapd			

------------ [On CentOS and RHEL] ------------
yum install epel-release 
yum install snapd		

------------ [On openSUSE - replace openSUSE_Leap_15.0 with the version] ------------
sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy
sudo zypper --gpg-auto-import-keys refresh
sudo zypper dup --from snappy
sudo zypper install snapd

------------ [On Manjaro Linux] ------------
pacman -S snapd

------------ [On Arch Linux] ------------
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si

Após instalar o snapd em seu sistema, habilite a unidade systemd que gerencia o soquete de comunicação snap principal, usando os comandos systemctl da seguinte forma.

No Ubuntu e seus derivados, isso deve ser acionado automaticamente pelo instalador do pacote.

sudo systemctl enable --now snapd.socket

Observe que você não pode executar o comando snap se snapd.socket não estiver em execução. Execute os seguintes comandos para verificar se ele está ativo e habilitado para iniciar automaticamente na inicialização do sistema.

sudo systemctl is-active snapd.socket
sudo systemctl status snapd.socket
sudo systemctl is-enabled snapd.socket

Em seguida, habilite o suporte ao snapd clássico criando um link simbólico entre /var/lib/snapd/snap e /snap como segue.

sudo ln -s /var/lib/snapd/snap /snap

Para verificar a versão da ferramenta de linha de comando snapd e snap instalada em seu sistema, execute o seguinte comando.

snap version 

Como instalar Snaps no Linux

O comando snap permite instalar, configurar, atualizar e remover snaps e interagir com o ecossistema maior de snaps.

Antes de instalar um snap, você pode verificar se ele existe no snap store. Por exemplo, se o aplicativo pertence à categoria “servidores de bate-papo” ou “players de mídia“, você pode executar estes comandos para procurá-lo, o que irá consultar a loja para pacotes disponíveis no canal estável.

snap find "chat servers"
snap find "media players"

Para mostrar informações detalhadas sobre um snap, por exemplo, rocketchat-server, você pode especificar seu nome ou caminho. Observe que os nomes são procurados tanto no armazenamento de snaps quanto nos snaps instalados.

snap info rocketchat-server

Para instalar um snap em seu sistema, por exemplo, rocketchat-server, execute o seguinte comando. Se nenhuma opção for fornecida, um snap é instalado rastreando o canal “estável”, com estrito confinamento de segurança.

sudo snap install rocketchat-server

Você pode optar por instalar de um canal diferente: edge, beta ou candidate, por um motivo ou outro, usando o opções --edge, --beta ou --candidate respectivamente. Ou use a opção --channel e especifique o canal a partir do qual deseja instalar.

sudo snap install --edge rocketchat-server        
sudo snap install --beta rocketchat-server
sudo snap install --candidate rocketchat-server

Gerenciar Snaps no Linux

Nesta seção, aprenderemos como gerenciar snaps no sistema Linux.

Visualizando Snaps Instalados

Para exibir um resumo dos snaps instalados em seu sistema, use o seguinte comando.

snap list

Para listar a revisão atual de um snap em uso, especifique seu nome. Você também pode listar todas as revisões disponíveis adicionando a opção --all.

snap list mailspring
OR
snap list --all mailspring

Atualizando e revertendo snaps

Você pode atualizar um snap especificado ou todos os snaps no sistema se nenhum for especificado conforme a seguir. O comando refresh verifica o canal que está sendo rastreado pelo snap e baixa e instala uma versão mais recente do snap, se estiver disponível.

sudo snap refresh mailspring
OR
sudo snap refresh		#update all snaps on the local system

Depois de atualizar um aplicativo para uma nova versão, você pode reverter para uma versão usada anteriormente usando o comando reverter. Observe que os dados associados ao software também serão revertidos.

sudo snap revert mailspring

Agora, quando você verifica todas as revisões do mailspring, a revisão mais recente está desativada, uma revisão usada anteriormente agora está ativa.

snap list --all mailspring

Desativando/ativando e removendo snaps

Você pode desativar um snap se não quiser usá-lo. Quando desativados, os binários e serviços instantâneos não estarão mais disponíveis, no entanto, todos os dados ainda estarão lá.

sudo snap disable mailspring

Se precisar usar o snap novamente, você pode habilitá-lo novamente.

sudo snap enable mailspring

Para remover completamente do seu sistema em um piscar de olhos, use o comando remove. Por padrão, todas as revisões de um snap são removidas.

sudo snap remove mailspring

Para remover uma revisão específica, use a opção --revision conforme a seguir.

sudo snap remove  --revision=482 mailspring

É importante observar que quando você remove um snap, seus dados (como usuário interno, sistema e dados de configuração) são salvos pelo snapd (versão 2.39 e superior) como um instantâneo e armazenado no sistema por 31 dias. Caso você reinstale o snap dentro de 31 dias, poderá restaurar os dados.

Conclusão

Os Snaps estão se tornando mais populares na comunidade Linux, pois fornecem uma maneira fácil de instalar software em qualquer distribuição Linux. Neste guia, mostramos como instalar e trabalhar com snaps no Linux. Abordamos como instalar o snapd, instalar snaps, visualizar os snaps instalados, atualizar e reverter os snaps e desativar/ativar e remover os snaps.

Você pode fazer perguntas ou entrar em contato conosco através do formulário de feedback abaixo. Na próxima parte deste guia, abordaremos o gerenciamento de snaps (comandos, aliases, serviços e snapshots) no Linux.