O que é um dispositivo de loop no Linux?

O que é um dispositivo de loop no Linux?

Vamos esclareçer um pouco o que é um dispositivo de loop e por que os aplicativos snap são montados como uma partição de disco.

Ao listar unidades montadas através do terminal, você já deve ter encontrado nomes de unidades começando com loop:

Dispositivos de loop

Se você é um usuário do Ubuntu, então você receberá uma longa lista de dispositivos de loop, como mostrado na captura de tela acima.

É por causa do snaps, o sistema universal de gerenciamento de pacotes desenvolvido pela Canonical. Os aplicativos snap são montados como dispositivos de loop.

Agora, isso levanta outro conjunto de questões, como o que é um dispositivo de loop e por que os aplicativos snap são montados como uma partição de disco.

Vamos esclareçer um pouco o tema.

Dispositivos de loop: arquivos regulares montados como sistema de arquivos

O Linux permite que os usuários criem um dispositivo de bloco especial pelo qual eles podem mapear um arquivo normal para um dispositivo de bloco virtual.

Parece complicado demais né? Vamos detalhar isso para você.

Em termos simples, um dispositivo de loop pode se comportar como um sistema de arquivos virtual, o que é bastante útil ao trabalhar com programas isolados, como snaps.

Então, basicamente, você obtém um sistema de arquivos isolado montado em um ponto de montagem específico onde um desenvolvedor/usuário avançado empacota um monte de arquivos em um só lugar. Assim, ele pode ser acessado por um sistema operacional e esse comportamento é conhecido como loop mounts.

Mas trabalhar com sistemas isolados usando um dispositivo de loop é uma das muitas razões pelas quais os dispositivos de loop são utilizados e, se você estiver interessado, aqui estão mais casos de uso de dispositivos de loop.

Razões para usar dispositivos de loop

Embora seja um sistema de arquivos virtual, há infinitas possibilidades; Aqui estão alguns casos de uso amplamente conhecidos de dispositivos de loop:

  1. Ele pode ser usado para instalar um sistema operacional sobre um sistema de arquivos sem passar pelo reparticionamento da unidade.
  2. Uma maneira conveniente de configurar imagens do sistema (depois de montá-las).
  3. Fornece segregação permanente de dados.
  4. Ele pode ser usado para aplicativos em área restrita que contêm todas as dependências necessárias.

E os desenvolvedores podem fazer maravilhas quando recebem sistemas de arquivos isolados.

Os dispositivos de loop podem ser facilmente gerenciados através do utilitário losetup. Vamos mostrar como.

Gerenciando dispositivos de loop

Então, vamos começar com a listagem de dispositivos de loop disponíveis.

Para listá-los, tudo o que você precisa fazer é emparelhar losetup com -a opção:

Comandos para usar no terminal

losetup -a

loop_2

Desmontando dispositivo Loop

O processo para desmontar qualquer dispositivo de loop é bastante simples. Para isso, usarei o comando umount.

Comandos para usar no terminal

sudo umount /dev/loop9

loop_3

O bloco loop9 foi instalado como snap, e você pode ver claramente, ele não está mais montado e não pode ser iniciado.

Excluindo dispositivo Loop

Isso é apenas para fins de demonstração. Não vá e exclua aleatoriamente dispositivos de loop.

Certifique-se de desmontar o dispositivo de loop antes de prosseguir na exclusão de um dispositivo de loop específico.

Seu primeiro passo será desanexar arquivos para qualquer dispositivo de loop usando -d opção. Para demonstração, usarei loop9:

Comandos para usar no terminal

sudo losetup -d /dev/loop9

E agora, você pode remover o dispositivo loop9 pelo mesmo antigo comando rm que é usado para remover arquivos e diretório:

Comandos para usar no terminal

sudo rm /dev/loop9

E loop9 não estava mais listado nos dispositivos de loop disponíveis:

loop_4

Palavras finais

O guia foi concebido para cobrir o básico de dispositivos de loop, e mantivemos simples o suficiente para que até mesmo novos usuários pudessem se beneficiar deste guia.

Tem um ponto a acrescentar? A seção de comentários é toda sua.

Última atualização deste artigo: 9 de may de 2023