Após cinco meses de desenvolvimento foi anunciado o lançamento da nova versão do systemd 251, versão em que os requisitos do sistema foram aumentados. A versão mínima suportada do kernel Linux foi aumentada de 3.13 para 4.15. Requer o temporizador CLOCK_BOOTTIME para funcionar. Para compilar, você precisa de um compilador que suporte o padrão C11 e as extensões GNU (o padrão C89 ainda é usado para arquivos de cabeçalho).
Pela parte das novidades que se destacam desta nova versão, destaca-se que se adicionou um utilitário experimental systemd-sysupdate para detectar, baixar e instalar atualizações automaticamente usando o mecanismo atômico para substituir partições, arquivos ou diretórios.
Outra mudança que se destaca é que uma nova biblioteca compartilhada interna é introduzida, libsystemd-core- .so, que está instalado no diretório /usr/lib/systemd/system e corresponde à biblioteca libsystemd-shared-library .tão existente. Usando a biblioteca compartilhada libsystemd-core- .SW reduz o tamanho geral da instalação reutilizando o código binário. O número da versão pode ser especificado através da opção 'shared-lib-tag' no sistema de compilação do meson e permite que as distribuições enviem várias versões dessas bibliotecas ao mesmo tempo.
Além disso, destaca-se também que a passagem de variável de ambiente foi implementada $MONITOR_SERVICE_RESULT, $MONITOR_EXIT_CODE, $MONITOR_EXIT_STATUS, $MONITOR_INVOCATION_ID e $MONITOR_UNIT que contêm informações sobre a unidade monitorada para os controladores OnFailure/OnSuccess.
Para unidades, a configuração ExtensionDirectories é implementada, que pode ser usada para organizar o carregamento de componentes de extensão do sistema de diretórios regulares, em vez de imagens de disco. O conteúdo do diretório de expansão do sistema sobrepõe o OverlayFS e é usado para expandir a hierarquia de diretórios /usr/ e /opt/ e adicionar arquivos adicionais em tempo de execução, mesmo se os diretórios especificados forem montados somente leitura. O suporte para especificar um diretório também foi adicionado ao comando 'portablectl Added –extension='.
En systemd-networkd, para rotas unicast configurado por meio da seção [Route], o valor do escopo foi alterado de padrão para "link" para corresponder ao comportamento do comando "ip route". Adicionado o parâmetro “Isolated=true|false” à seção [Bridge] para configurar o atributo de pontes de rede com o mesmo nome no kernel. Na seção [Tunnel], foi adicionado o parâmetro External para configurar um túnel do tipo externo (modo de coleta de metadados).
Do outras mudanças que se destacam:
- Os parâmetros BootServerName, BootServerAddress e BootFilename foram adicionados à seção [DHCPServer] para configurar o endereço do servidor, o nome do servidor e o nome do arquivo de inicialização enviado pelo servidor DHCP ao inicializar no modo PXE.
- Na seção [Network], o parâmetro L2TP foi removido, em vez do qual nos arquivos .netdev você pode usar as novas configurações locais referentes à interface L2TP.
- Garantido que o systemd-resolved seja iniciado mais cedo no processo de inicialização, incluindo a inicialização a partir do initrd quando o systemd-resolved estiver presente na imagem do initrd.
- Adicionada a opção –fido2-credential-algorithm ao systemd-cryptenroll para selecionar o algoritmo de criptografia de credencial e a opção –tpm2-with-pin para controlar a entrada do PIN ao desbloquear uma partição usando o TPM.
- Adicionada uma opção semelhante tpm2-pin ao /etc/crypttab. Ao desbloquear dispositivos por meio do TPM, as configurações são criptografadas para proteger contra a interceptação de chaves de criptografia.
- Adicionada API D-Bus ao systemd-timesyncd para recuperar dinamicamente informações de um servidor NTP via IPC.
- Para determinar a necessidade de saída de cor em todos os comandos, a variável de ambiente COLORTERM é verificada além de NO_COLOR, SYSTEMD_COLORS e TERM, que foram verificados anteriormente.
- O sistema de compilação Meson implementa a opção install_tag para compilações personalizadas e instalação dos componentes necessários: pam, nss, devel (pkg-config), systemd-boot, libsystemd, libudev.
- Adicionada opção de compilação de compactação padrão para selecionar algoritmo de compactação para systemd-journald e systemd-coredump.
- Adicionada configuração experimental "reboot-for-bitlocker" para sd-boot em loader.conf para inicializar o Microsoft Windows com BitLocker TPM.
- O Systemd-journald estabilizou a capacidade de exportar no formato JSON. Adicionado suporte para saída JSON nos comandos “journalctl –list-boots” e “bootctl list” (sinalizador “–json”).
- Adicionados novos arquivos de banco de dados hwdb ao udev, que contêm informações sobre dispositivos portáteis (PDAs, calculadoras, etc.) e dispositivos usados para criar som e vídeo (consoles de DJ, teclados).
- A configuração LoadCredential permite um nome de diretório como argumento e, nesse caso, tenta carregar credenciais de todos os arquivos no diretório especificado.
- No systemctl, o parâmetro "--timestamp" adicionou a capacidade de especificar o sinalizador "unix" para exibir a hora no formato de época (o número de segundos desde 1º de janeiro de 1970).
Por fim, se estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir.