Informações técnicas

Esta página fornece algumas informações técnicas básicas sobre o Silverblue, incluindo informações sobre as principais tecnologias usadas para criá-lo, bem como o layout do sistema de arquivos.

Os usuários não precisam saber dessas informações. Elas são fornecidas aqui para aqueles que estão interessados nos detalhes técnicos ou para aqueles que desejam usar o Silverblue de uma maneira não padronizada.

ostree e rpm-ostree

ostree is the core technology that is used to compose, deploy and update Silverblue. ostree operates in a similar manner to a version control system, but it operates on entire filesystem trees. It is often described as “Git for operating system binaries”.

Para instalações do Silverblue, ostree é responsável por implantar e atualizar a imagem do sistema operacional (incluindo tudo abaixo de / que não está vinculado a /var). Ele também atualiza as entradas do grub.cfg para apontar para a imagem atual.

rpm-ostree compila sobre a ostree e possibilita a instalação de RPMs como uma “camada” sobre a imagem da ostree. Isso torna possível instalar RPMs no Silverblue.

Quando um pacote é instalado com rpm-ostree, uma nova imagem do sistema operacional é composta adicionando a carga útil RPM à imagem do sistema operacional existente e criando uma nova imagem combinada. Para ver os RPMs recém-instalados, o sistema precisa ser reinicializado com a nova imagem. O rpm-ostree também se encarrega de recriar a imagem em camadas sempre que você atualiza a imagem do sistema operacional base.

Layout do sistema de arquivos do Silverblue

No Silverblue, o sistema de arquivos raiz é imutável. Isso significa que /, /usr e tudo abaixo dele são somente leitura.

/var é onde todo o estado de tempo de execução do Silverblue é armazenado. Links simbólicos são usados para disponibilizar diretórios tradicionais de controle de estado em seus locais esperados. Isso inclui:

  • /home/var/home

  • /opt/var/opt

  • /srv/var/srv

  • /root/var/roothome

  • /usr/local/var/usrlocal

  • /mnt/var/mnt

  • /tmp/sysroot/tmp

Isso significa que partições pessoais separadas devem ser montadas em /var/home.

Para uma explicação mais detalhada do layout do sistema de arquivos do Silverblue, consulte a excelente documentação do libostree.