O mais temido...
http://www.freedesktop.org/wiki/Software/systemd/
http://0pointer.de/blog/projects/systemd.html
https://www.ibm.com/developerworks/community/blogs/752a690f-8e93-4948-b7a3-c060117e8665/entry/systemd_parte_1?lang=en
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/chap-Managing_Services_with_systemd.html
https://www.ibm.com/developerworks/community/blogs/752a690f-8e93-4948-b7a3-c060117e8665/entry/systemd_parte_1?lang=en
O que é?
Porque ele surgiu?
Mitos sobre o systemd
Bê-á-bá
Comandos
O que é?
systemd é um substituto para a daemon init do Linux (System V ou estilo BSD). Seu objetivo é fornecer um framework melhor para expressar dependências de serviços, permitir que mais trabalho seja feito concorrentemente (possivelmente em paralelo) na inicialização do sistema e reduzir a sobrecarga do shell.
O que é?
systemd inicializa uma plataforma, mas também serve para consolidar o registro de eventos e pode substituir o syslog. Devido a ele substituir dois sistemas administrativos, para administradores de sistema isto significa que o número de mecanismos internos do kernel que ele trata oferece uma curva de aprendizagem excessiva.
O que é?
It provides a system and service manager that runs as PID 1 and starts the rest of the system. systemd provides aggressive parallelization capabilities, uses socket and D-Bus activation for starting services, offers on-demand starting of daemons, keeps track of processes using Linux control groups, supports snapshotting and restoring of the system state, maintains mount and automount points and implements an elaborate transactional dependency-based service control logic. systemd supports SysV and LSB init scripts and works as a replacement for sysvinit.
O que é D-Bus?
http://www.freedesktop.org/wiki/Software/dbus/
D-Bus is a message bus system, a simple way for applications to talk to one another. In addition to interprocess communication, D-Bus helps coordinate process lifecycle; it makes it simple and reliable to code a "single instance" application or daemon, and to launch applications and daemons on demand when their services are needed.
O que é cgroup?
https://access.redhat.com/documentation/pt-BR/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html
Os cgroups permitem alocar recursos — tais como tempo da CPU, memória do sistema, largura de banda de rede ou combinações destes recursos — entre grupos de usuários definidos de tarefas (processos) rodando em um sistema. Você pode monitorar os cgroups que configurar, negar acesso dos cgroups a certos recursos e mesmo reconfigurar seus cgroups dinamicamente em um sistema em execução. O serviço cgconfig (“control group config ”) pode ser configurado para iniciar no momento do boot e restabelecer seus cgroups pré definidos, fazendo-os persistentes através de reboots.
Usando cgroups, os administradores de sistema ganham controle refinado sobre a alocação, prioridades, negação, gerenciamento e recursos de monitoramento do sistema. Recursos de hardware podem ser divididos inteligentemente entre tarefas e usuários, aumentando a eficiência geral.
Mitos...
1. Mito: systemd é sobre a velocidade
Sim, systemd é rápido mas isso é basicamente apenas um efeito colateral de fazer as coisas direito.
Mitos...
2. Mito: systemd é incompatível com scripts shell.
Isto é inteiramente falso. Nós simplesmente não usamos para o processo de inicialização, porque acreditamos que eles não são a melhor ferramenta para essa finalidade específica, mas isso não significa que systemd seja incompatível com eles.
Mitos...
3. Mito: systemd é difícil.
Isto não tem o menor sentido. Uma plataforma systemd é realmente muito mais simples do que as tradicionais, porque unifica objetos do sistema e suas dependências como unidades Systemd. A linguagem arquivo de configuração é muito simples, e os arquivos de configuração redundantes nos livramos. Nós fornecemos ferramentas uniformes para grande parte da configuração do sistema.
Mitos...
4. Mito: systemd usa arquivos de configuração binários.
Nenhuma idéia que surgiu com esse mito louco, mas não é absolutamente verdade. systemd está configurado praticamente exclusivamente por meio de arquivos de texto simples. Algumas configurações, você também pode alterar com a linha de comando do kernel e via variáveis de ambiente. Não há nada de binário em sua configuração (nem mesmo XML). Simplesmente, simples, fácil de ler arquivos de texto.
Mitos...
5. Mito: systemd obriga a fazer alguma coisa.
systemd não é a máfia. É software livre, você pode fazer com ele o que quiser, e isso inclui não usá-lo. Isso é muito bonito o oposto de "forçar".
Mitos...
6. Mito: systemd torna impossível executar syslog.
Não é verdade, a certeza quando nós introduzimos o journal que todos os dados também são repassados para qualquer daemon syslog em execução. Na verdade, se alguma coisa mudou, então só que syslog recebe dados mais completos agora do que tenho antes, uma vez que agora cobrem material de inicialização precoce, bem como STDOUT / STDERR de qualquer serviço do sistema.
Bê-á-bá...
Estrutura da configuração do Systemd
O Systemd armazena suas configurações de serviços em diversos arquivos. Os arquivos de automount fornecidos pelo pacote do Systemd se localizam em /lib/systemd/system/. Há arquivos com sufixos .service (serviços propriamente ditos, como Apache, Postfix etc.), .target (semelhantes — não iguais — aos runlevels), .automount e .mount, entre outros.
O Systemd não precisa do arquivo /etc/fstab para saber quais sistemas de arquivos montar em quais diretórios. Cada montagem é definida em um arquivo .mount, que deve ter como nome o diretório de montagem.
Comandos...
Vamos ao que mais interessa...