31.01.2025

Como usar o Chroot no Linux?

Chroot é um comando Unix que pode ajudá-lo a alterar o diretório raiz aparente do seu sistema de arquivos. As vantagens desse utilitário excedem todas as normas e indicadores possíveis, como a execução de programas ou utilitários em uma versão diferente do sistema operacional sem afetar o sistema restante.

Chroot

Quando você executa o chroot, está criando um novo ambiente de shell com seu diretório raiz, separado do diretório raiz do sistema central. Isso significa que todos os comandos ou ações executados no ambiente chroot afetarão somente os arquivos e diretórios do ambiente chroot, e não o sistema principal.

Por exemplo, se você quiser testar uma nova versão de um programa que requer bibliotecas diferentes das que estão instaladas no sistema principal, poderá criar um ambiente chroot com as bibliotecas necessárias e executar o programa nesse ambiente.

Dessa forma, você pode garantir que o programa funcionará corretamente sem precisar modificar o sistema principal.

É importante observar: o chroot só deve ser usado por usuários experientes, pois pode causar instabilidade no sistema se não for usado corretamente.

Chroot: isolamento e permissão de root

Os principais recursos do chroot são:

Nesse artigo, consideraremos apenas o isolamento de processos e a permissão de root, outra função desse utilitário será descrita em uma nova instrução de episódio.

No início, escreva este comando para atualizar o índice do pacote :

sudo apt update -y && sudo apt upgrade -y

Screenshot №1 - Atualizar pacote

Verifique o chroot de instalação em seu sistema por meio do comando. Na maioria das distribuições Linux, eles são chamados de "chroot" ou "util-linux":

chroot --version || util-linux --version

Screenshot №2 - Verificar versão

Depois de nos certificarmos de que todos os arquivos e pacotes tenham a instalação correta, crie um diretório no qual será instalado o novo ambiente do nosso sistema:

cd / && mkdir env0

Screenshot №3 - Start environment

Por exemplo, isolamos o processo utilitário ls:

cp -R /bin /lib /lib64 /usr /etc /env0/
chroot /env0 /bin/ls

Screenshot №4 - After start

Por meio desses comandos, copiamos e iniciamos o ambiente isolado, que, por sua vez, inicializa o processo ls. Mas como podemos dar ou obter acesso a esse utilitário, todo o processo é bastante simples.

сhroot --userspec=<user:group> <directory>

Screenshot №5 - Gerenciamento de permissões de usuário

Define o usuário e o grupo em cujo nome o comando será executado em um ambiente isolado.

Conclusão

Em geral, o chroot é um utilitário avançado que oferece uma ampla gama de benefícios, incluindo isolamento de processos, teste de programas, recuperação de sistemas e gerenciamento de permissões. Neste artigo, nos concentramos no isolamento de processos e no gerenciamento de permissões de raiz, mas no próximo episódio de instruções, exploraremos outra função desse utilitário.

Seguindo essas etapas, você poderá aproveitar os recursos do chroot para criar ambientes seguros para testar programas e recuperar sistemas após falhas ou ataques mal-intencionados. Fique atento ao nosso próximo artigo sobre "Recuperação isolada do Linux via chroot"!