systemd

systemd Descrição desta imagem, também comentada abaixo Iniciando o Fedora com o systemd. Em formação
Desenvolvido por Lennart Poettering
Freedesktop.org
Primeira versão 30 de março de 2010
Última versão 248 (30 de março de 2021)
Depósito github.com/systemd/systemd
Status do projeto Em desenvolvimento
Escrito em C , Python
Sistema operacional Linux
Meio Ambiente GNU / Linux
Modelo Sistema de inicialização , daemon
Política de distribuição Livre
Licença GNU LGPL
Local na rede Internet systemd.io

Cronologia das versões

systemd é um pacote de software que fornece uma variedade de componentes de sistema para sistemas operacionais Linux.

O primeiro componente do systemd é o sistema de inicialização , seu objetivo é fornecer uma estrutura melhor para gerenciar dependências entre serviços, para permitir o carregamento paralelo de serviços na inicialização e para reduzir chamadas a scripts de shell . É uma alternativa ao SysV init . Ele também fornece substitutos para vários daemons e utilitários, incluindo gerenciamento de dispositivo, gerenciamento de conexão de usuário, gerenciamento de conexão de rede e registro de eventos.

O projeto foi lançado por Lennart Poettering em 2010 e lançado sob a licença GNU LGPL versão 2.1. O nome deste programa vem de "  daemon do sistema  ": o daemon do sistema.

Este projeto tem gerado grande polêmica entre os desenvolvedores GNU / Linux .

Em 2015, a maioria das distribuições GNU / Linux adotou esse sistema de boot .

Conceito

O Systemd é baseado em algumas dezenas de binários gerenciando todo o sistema de inicialização , deixando assim a filosofia UNIX do KISS .

O Systemd adota um novo sistema de registro denominado "  The Journal  ", permitindo um registro mais rápido e eficiente das várias fases de inicialização. Os logs são autenticados para reduzir as chances de corrupção durante um hack, são portáteis e a ferramenta inclui gerenciamento de saturação de espaço em disco para melhor gerenciar os rastros. Qualquer serviço gerenciado pelo systemd é conectado automaticamente, a menos que solicite o não login. Por padrão, ele é compatível com um ambiente de rede e pode passar por protocolos padrão, como syslog .

O Systemd inclui uma ferramenta chamada "  systemd-analyze  ", que permite analisar o tempo de inicialização, rastrear as diferentes etapas e emitir as análises em forma de gráficos simples (formato SVG ), permitindo entender facilmente os gargalos da sequência de inicialização.

O Systemd difere do init do System V em:

Dentro abril de 2012, o código-fonte do udev foi integrado ao systemd. O systemd, portanto, substitui o System V e o udev em suas respectivas funções.

Adoção por diferentes distribuições

Distribuição da Red Hat e seus derivados

Distribuição Debian e seus derivados

Existe um fork do Debian, chamado Devuan , que evita o uso do systemd.

Distribuição SUSE

Distribuição Gentoo

O garfo eudev

O Gentoo tem desenvolvido o eudev desde 2013. Este é um fork do udev cujo objetivo é obter melhor suporte para sistemas que não usam o systemd. Para distribuições binárias, sua escolha, emJaneiro de 2014, se resume a se eles desejam suportar o GNOME e, nesse caso, se preferem usar o systemd ou se, no outro caso, preferem lidar com a complexidade adicional de uma instalação do GNOME sem o systemd.

Outras distribuições

Desenvolvimento e polêmica

O projeto sofreu muitas críticas e gerou um debate acalorado.

Para alguns desenvolvedores, o systemd se tornou um problema maior do que deveria resolver porque, em vez de fornecer ao administrador os meios para criar políticas de gerenciamento de sistema, ele fornece suas políticas diretamente, a ponto de às vezes se comparar o systemd ao Windows Service Host . Alguns desses detratores, usuários do Debian, até ameaçam fazer um fork de sua distribuição se isso efetivamente forçar o uso do systemd ao invés do sysvinit. Um fork chamado Devuan foi criado por oponentes que não estavam obtendo satisfação, e a primeira versão de Devuan saiu atrasada.Maio de 2017.

Aqui estão alguns comentários:

mtab

$ cat / etc / mtab
sysfs / sys sysfs rw, nosuid, nodev, noexec, relatime 0 0
proc / proc proc rw, nosuid, nodev, noexec, relatime 0 0
udev / dev devtmpfs rw, nosuid, relatime, size = 1963456k, nr_inodes = 490864, ​​modo = 755 0 0
devpts / dev / pts devpts rw, nosuid, noexec, relatime, gid = 5, modo = 620, ptmxmode = 000 0 0
tmpfs / run tmpfs rw, nosuid, noexec, relatime, size = 396480k, mode = 755 0 0
/ dev / sdb3 / ext4 rw, relatime, erros = remount-ro, data = encomendado 0 0
securityfs / sys / kernel / security securityfs rw, nosuid, nodev, noexec, relatime 0 0
tmpfs / dev / shm tmpfs rw, nosuid, nodev 0 0
tmpfs / run / lock tmpfs rw, nosuid, nodev, noexec, relatime, size = 5120k 0 0
tmpfs / sys / fs / cgroup tmpfs ro, nosuid, nodev, noexec, modo = 755 0 0
cgroup / sys / fs / cgroup / systemd cgroup rw, nosuid, nodev, noexec, relatime, xattr, release_agent = / lib / systemd / systemd-cgroups-agent, name = systemd 0 0
pstore / sys / fs / pstore pstore rw, nosuid, nodev, noexec, relatime 0 0
efivarfs / sys / firmware / efi / efivars efivarfs rw, nosuid, nodev, noexec, relatime 0 0
cgroup / sys / fs / cgroup / pids cgroup rw, nosuid, n odev, noexec, relatime, pids 0 0
cgroup / sys / fs / cgroup / memory cgroup rw, nosuid, nodev, noexec, relatime, memory 0 0
cgroup / sys / fs / cgroup / cpu, cpuacct cgroup rw, nosuid, nodev, noexec, relatime, cpu, cpuacct 0 0
cgroup / sys / fs / cgroup / freezer cgroup rw, nosuid, nodev, noexec, relatime, freezer 0 0
cgroup / sys / fs / cgroup / perf_event cgroup rw, nosuid, nodev, noexec, relatime, perf_event 0 0
cgroup / sys / fs / cgroup / cpuset cgroup rw, nosuid, nodev, noexec, relatime, cpuset 0 0
cgroup / sys / fs / cgroup / blkio cgroup rw, nosuid, nodev, noexec, relatime, blkio 0 0
cgroup / sys / fs / cgroup / devices cgroup rw, nosuid, nodev, noexec, relatime, devices 0 0
cgroup / sys / fs / cgroup / net_cls, net_prio cgroup rw, nosuid, nodev, noexec, relatime, net_cls, net_prio 0 0
cgroup / sys / fs / cgroup / hugetlb cgroup rw, nosuid, nodev, noexec, relatime, hugetlb 0 0
systemd-1 / proc / sys / fs / binfmt_misc autofs rw, relatime, fd = 22, pgrp = 1, tempo limite = 0, minproto = 5, maxproto = 5, direto 0 0
mqueue / dev / mqueue mqueue rw, relatime 0 0
debugfs / sys / kernel / debug debugfs rw, relatime 0 0
hugetlbfs / dev / largepages hugetlbfs rw, relatime 0 0
fusectl / sys / fs / fuse / connections fusectl rw, relatime 0 0
/ dev / sda2 / boot / efi vfat rw, relatime, fmask = 0077, dmask = 0077, página de códigos = 437, iocharset = iso8859 -1, shortname = mixed, errors = remount-ro 0 0
binfmt_misc / proc / sys / fs / binfmt_misc binfmt_misc rw, relatime 0 0
tmpfs / run / user / 1000 tmpfs rw, nosuid, nodev, relatime, size = 396480k, modo = 700, uid = 1000, gid = 1000 0 0
gvfsd-fuse / run / user / 1000 / gvfs fuse.gvfsd-fuse rw, nosuid, nodev, relatime, user_id = 1000, group_id = 1000 0 0
/ dev / sdb2 / media / fda / Sandisk480-UltraII fuseblk rw, nosuid, nodev, relatime, user_id = 0, group_id = 0, default_permissions, allow_other, blksize = 4096 0 0

 

Notas e referências

  1. Versão v248  "
  2. (em) "  Os maiores mitos  " ,26 de janeiro de 2013(acessado em 27 de julho de 2014 )
  3. (em) "  Introducing the Journal  " (acessado em 27 de julho de 2014 )
  4. (em) "  Especificação de entrada de desktop v 1.4  " ,22 de outubro de 2019(acessado em 16 de dezembro de 2019 )
  5. "  Commit  " , no systemd , área de trabalho gratuita
  6. "  Notícias semanais do Linux  "
  7. "  ed-hat-enterprise-linux-7  " , em http://linuxfr.org ,11 de junho de 2014
  8. "  Lovelock do Fedora 15 lançado  " , H online
  9. "  systemd  " , no Wiki , Debian
  10. O anúncio oficial através da lista de discussão debian-devel-announce https://lists.debian.org/debian-devel-announce/2014/02/msg00005.html
  11. Notas de lançamento Ubuntu Vivid Vervet
  12. "  OpenSuse 12.1 chega com systemd & BtrFS  " , H online
  13. "  Projeto systemd do Gentoo  " , Gentoo
  14. Projeto Gentoo eudev "Cópia arquivada" (versão datada de 22 de julho de 2018 no Internet Archive )
  15. "  Mandriva 2011 chega com Systemd [sic]  " , H online
  16. "  Mageia 2 chega com Gnome 3 e systemd  " , H online
  17. "  SystemD  " , no Wiki , Arch GNU / Linux
  18. "  Arch dev public  " , no Mailman , Arch GNU / Linux,Agosto de 2012
  19. "  systemd: o init martirizado, o init desprezado, mas o init liberado!" - LinuxFr.org  ” , em Linuxfr (acessado em 3 de setembro de 2015 )
  20. “  Linux Audio Development, JACK, cgroups and systemd  ” ( ArquivoWikiwixArchive.isGoogle • Que faire? ) (Acessado em 20 de março de 2014 )
  21. Louis Adam , "  Systemd on Debian: War of Bells Turns to Threats  " , em ZDNet ,21 de outubro de 2014(acessado em 22 de outubro de 2014 )
  22. (em) "  devuan Jessie 1.0.0 versão estável (LTS)  " em devuan.org ,25 de maio de 2017(acessado em 30 de julho de 2017 )

Apêndices

Artigos relacionados

links externos