A Canonical lançou o Ubuntu Core 22, uma versão compacta da distribuição Ubuntu, adaptada para uso em dispositivos de Internet das Coisas (IoT), em containers, e em equipamentos de consumo e industriais. O Ubuntu Core é fornecido na forma de uma imagem monolítica indivisível do sistema base, que não utiliza a divisão em pacotes deb individuais. As imagens do Ubuntu Core 22, cuja composição está sincronizada com a base de pacotes do Ubuntu 22.04, estão preparadas para sistemas x86_64, ARMv7 e ARMv8. O tempo de suporte da versão é de 10 anos.
O Ubuntu Core serve como base para a execução de componentes adicionais e aplicativos, que são organizados como extensões autônomas no formato snap. Os componentes do Ubuntu Core, incluindo o sistema base, o núcleo Linux e extensões do sistema, também são fornecidos no formato snap e gerenciados pela ferramenta snapd. A tecnologia Snappy permite a formação da imagem do sistema como um todo, sem a divisão em pacotes separados.
Em vez de atualizações progressivas ao nível de pacotes deb individuais, o Ubuntu Core utiliza um mecanismo de atualização atômica de pacotes snap e do sistema base, semelhante ao Atomic, ChromeOS, Endless, CoreOS e Fedora Silverblue. Ao atualizar o ambiente base e os pacotes snap, existe a possibilidade de reverter para uma versão anterior, caso ocorram problemas detectados após a atualização. Atualmente, o catálogo do SnapCraft conta com mais de 4,5 mil pacotes snap.
Para garantir a segurança, cada componente do sistema é verificado por assinatura digital, o que permite proteger a distribuição contra alterações ocultas ou a instalação de pacotes snap não verificados. Os componentes fornecidos no formato Snap são isolados com o auxílio do AppArmor e Seccomp, criando uma camada adicional de proteção para o sistema em caso de compromisso de aplicativos individuais. O sistema base inclui apenas um conjunto mínimo de aplicativos necessários, o que não apenas reduziu o tamanho do ambiente do sistema, mas também teve um impacto positivo na segurança ao diminuir os possíveis vetores de ataque.
O sistema de arquivos básico é montado em modo somente leitura. Existe a capacidade de usar criptografia de dados no dispositivo utilizando TPM. As atualizações são lançadas regularmente, entregues via OTA (over-the-air) e sincronizadas com a versão do Ubuntu 22.04. Para minimizar o tráfego, as atualizações são fornecidas em formato comprimido e incluem apenas as alterações em relação à atualização anterior (atualizações delta). A automação na instalação de atualizações resolve problemas relativos à segurança do sistema em dispositivos embarcados.
Graças à separação lógica do sistema básico dos aplicativos, a manutenção da base de código do Ubuntu Core é responsabilidade dos desenvolvedores do Ubuntu, enquanto a atualidade dos aplicativos adicionais é cuidada pelos desenvolvedores dos aplicativos. Essa abordagem permite reduzir os custos de manutenção de produtos cujo ambiente de software é baseado no Ubuntu Core, pois seus fabricantes não precisam se preocupar com o lançamento e entrega de atualizações do sistema, podendo focar apenas em seus componentes específicos.
Principais novidades:
- Foi proposta a concepção de conjuntos de pacotes validados (Validation sets), permitindo definir um conjunto de pacotes snap e suas versões, que podem ser instalados e atualizados apenas em conjunto. Os conjuntos validados podem ser utilizados para implementar restrições que permitam a instalação apenas de pacotes snap especificados, distribuir pacotes adicionais que tenham sido testados e verificados, ou simplificar a gestão de dependências.
- Foram adicionadas ferramentas para atualizar o ambiente Ubuntu Core 20 para a versão 22 sem a necessidade de reinstalação.
- Foi implementada a capacidade de redefinir a configuração de fábrica (factory reset).
- Foi fornecido suporte para grupos de limites para restringir recursos de CPU e memória vinculados a grupos específicos de serviços snap.
- Foi adicionada a suporte ao conjunto de ferramentas MicroK8s, que oferece uma versão simplificada da plataforma de orquestração de contêineres Kubernetes.
- Uma opção de pacote com o kernel Linux foi proposta, incluindo patches PREEMPT_RT e voltada para utilização em sistemas que operam em tempo real.
- Foi adicionada a suporte para a ferramenta MAAS (Metal-as-a-Service) para implantação rápida de configurações em múltiplos sistemas.
- Foi incluída a suporte ao cloud-init para configuração do sistema durante o processo de inicialização.
Fonte: opennet.ru
