As melhores distribuições de Linux sem systemd

Um pinguim-imperador com filhos na Antártica.
BMJ / Shutterstock.com

Quando as distribuições Linux dominantes adotaram o systemd , os dissidentes bifurcaram as distribuições e iniciaram novos projetos. Então, quais são suas opções se você estiver procurando por uma distribuição não-systemd? Vamos dar uma olhada.

systemd: uma recapitulação rápida

Historicamente, a sequência de inicialização em um sistema Linux era uma réplica do sistema de inicialização introduzido com o  System V Unix  (SysV). O sistema SysV init aderiu à  filosofia Unix . Quando as pessoas se referem à filosofia Unix, geralmente a reduzem à conhecida frase de efeito “Faça uma coisa e faça-a bem”. E essa coisa era começar como o primeiro processo e depois iniciar outros processos. Ele também abateu zumbis de vez em quando.

O SysV init fez seu trabalho bem o suficiente, mas não com muita eficiência. Ele iniciou os processos em série, um após o outro. Não houve paralelismo. O projeto prejudicou a produção. Isso foi mais ou menos mascarado pelos ganhos de velocidade do hardware moderno, e não é como se a inicialização de um computador Linux levasse um tempo interminável. Mas sim, tecnicamente, poderia ter se tornado mais eficiente.

Como com tudo no Linux, os usuários tinham uma escolha. Alternativas estavam disponíveis. Os usuários competentes podem configurar seu computador Linux para usar um sistema init diferente, um que inicie processos em paralelo e funcione da maneira que quiserem.

Algumas das opções eram:

  • Upstart : Esta foi uma iniciativa desenvolvida pela  Canonical  que passou a ser adotada pela   família de distribuições Red Hat , incluindo  Centos  e  Fedora . Upstart não está mais em desenvolvimento.
  • runit : Este é um projeto independente de plataforma cruzada que roda no  FreeBSD  e outros derivados do BSD, bem como em  sistemas macOSSolaris e Linux. Ele foi adotado como o sistema init padrão ou uma das opções de tempo de instalação em várias distribuições Linux.
  • s6-Linux-init : s6 é um substituto para o SysV init que tenta lidar com a natureza serial do SysV init e permanecer fiel à filosofia Unix.

systemd é outro substituto para o init SysV, mas inclui muito mais. Possui módulos que gerenciam dispositivos físicos, logins de usuários, resolução de nomes de rede e muito mais – é composto por mais de 70 binários e mais de 1,4 milhão de linhas de código. Em comparação, o SysV init para  Arch  Linux soma menos de 2.000 linhas de código. Claramente, o systemd abandonou bem e verdadeiramente a filosofia Unix. E não só isso, ele comete a heresia de ignorar completamente o   padrão POSIX ( Portable Operating System Interface ).

Recomendado:  Como copiar arquivos para uma unidade flash USB em um Mac

Os argumentos do systemd são alguns dos mais acalorados que já testemunhei em uma comunidade de código aberto. (E isso está dizendo algo.) Os campos pró-systemd e não-systemd igualmente vociferantes não são as únicas pessoas envolvidas, é claro. Falo para muitas pessoas que nem mesmo sabem que o systemd é uma coisa, assim como muitas outras pessoas que já ouviram falar dele, mas não sabem detalhes suficientes para formar uma opinião de uma forma ou de outra. Francamente, eles não se importam. Eles só querem que as coisas funcionem.

Se você não tiver certeza se está em uma distribuição baseada em systemd, execute o ps comando no ID de processo 1.

ps -p 1

Se você vir “systemd” na resposta, então, claramente, você está usando o systemd. Se disser outra coisa – normalmente “init” – então você não.

Filosofia, Arquitetura e Qualidade de Engenharia

Diferentes pessoas se opõem ao systemd por diferentes razões. Para alguns, é o desprezo pela filosofia Unix tradicional. Embora não seja um dogma obrigatório, é o “jeito Unix”. E é uma maneira que resistiu ao teste do tempo: pequenos utilitários que podem ser conectados para que sua saída se torne a entrada do próximo processo no pipeline é uma parte essencial do que dá ao Linux sua aparência e caráter. É o que o torna particularmente adequado para remendar rapidamente soluções criativas para requisitos únicos ou de curta duração.

Outros questionaram as decisões de design por trás do systemd, a “arquitetura de software”. Por que incluir toda essa funcionalidade que não tem nada a ver com a inicialização de um sistema? Se esses outros elementos precisassem ser atualizados ou aprimorados, faça exatamente isso. Mas por que integrar tudo isso em um conjunto de aplicativos enorme e interligado?

Foram levantadas preocupações sobre a atitude arrogante dos desenvolvedores do systemd em  relação às correções de bugs  em geral, e em relação às  vulnerabilidades e exposições comuns  em particular. Quanto mais linhas de código você tiver, mais bugs você precisará lidar. Quando esses bugs estão relacionados à segurança e têm seu próprio número CVE atribuído a eles, você precisava lidar com eles ontem.

Seja qual for a razão ou razões por trás de você querer deixar uma distribuição Linux baseada em systemd, a questão é: para onde você vai a seguir? Talvez você queira experimentar algo completamente novo. Você pode estar ansioso para aprender os meandros de uma nova distribuição. Por outro lado, você pode não ter tempo nem apetite para mais uma curva de aprendizado. Você deseja voltar a funcionar o mais rápido possível em um sistema que pareça o mais familiar possível.

Recomendado:  Como configurar uma cozinha inteligente

A Família Debian: Devuan

Se você usa o Debian ou uma das miríades de derivados do Debian, como o Ubuntu e toda sua tribo de parentes, faz sentido que você uma olhada no  Devuan . Devuan é um fork do Debian, então quase tudo será familiar. O shell padrão é Bash e o gerenciador de pacotes é apt. Devuan foi bifurcado do Debian em 2014. É sólido e estável e tem uma comunidade próspera.

Se você preferir o  GNOME  como seu  ambiente de área de trabalho,  terá que fazer um pouco de trabalho extra. O GNOME não é oferecido como opção de desktop durante a instalação. MATECinnamonXFCE e outros estão disponíveis, mas o GNOME terá que ser instalado manualmente assim que você tiver seu sistema instalado e funcionando.

Área de trabalho Devuan Linux com uma janela de terminal aberta

O GNOME tem algumas dependências dos componentes do systemd, a saber, o  gerenciador de  dispositivos de hardware udev e o  gerenciador de  login logind . Substituições para estes foram criadas pelos  desenvolvedores do  Gentoo Linux .

eudev  e  elogind  permitem que aplicativos com dependências rígidas do systemd operem como se o systemd estivesse instalado. Os puristas do anti-systemd também se opõem a isso, argumentando que apoiar o software que codifica em dependências rígidas para o systemd é quase tão ruim quanto executar o systemd.

As opções de sistema init no Devuan são SysV init ou  OpenRC .

A família Arch: Artix Linux

 Usuários de Arch  e  Manjaro podem querer dar   uma volta no Artix Linux. Artix é um fork do Arch que se baseia no projeto Arch-OpenRC. Seu primeiro lançamento veio em 2017.

O Arch Wiki contém instruções sobre a substituição do systemd pelo OpenRC , mas não é oficialmente suportado. Da mesma forma, como o suporte ao OpenRC foi  retirado do Manjaro , não há distribuição derivada do Manjaro que seja livre de systemd.

Portanto, se você deseja permanecer no universo do Arch, você precisa escolher um fork baseado no Arch como o Artix que usa um sistema init diferente. Artix certamente cumpre nessa frente. Durante o processo de instalação, você escolhe um dos três sistemas init diferentes. As opções são OpenRC, runit e s6.

Artix Linux desktop com uma janela de terminal aberta

Todos os sabores de desktop esperados estão disponíveis, como Cinnamon, MATE, XFCE e mais. Também há  versões em teste  que suportam GNOME e o  gerenciador de janelas i3 tiling .

O gerenciador de pacotes é pacman. Claro, você pode usar isso para instalar pamac, yayou qualquer outro   auxiliar do Arch User Repository (AUR). O shell padrão é Bash.

Recomendado:  Como digitalizar cartões de visita na lista de contatos do seu iPhone

É tudo o que você gosta no Arch sem systemd.

Red Hat e Fedora: PCLinuxOS

O projeto systemd é uma iniciativa da Red Hat. Os principais desenvolvedores do systemd são funcionários da Red Hat. Parece que para muitos no mundo Linux, qualquer coisa que saia dos campos “corporativos” do Linux – Red Hat,  OracleIntelCanonical , por exemplo – deve ser automaticamente desconfiada.

O systemd foi descrito como – entre outras coisas – nada mais do que um plano da Red Hat para transformar o Linux em algo que se adapte às necessidades de seu sistema operacional embarcado. Se a Red Hat precisasse de uma distribuição sob medida para sistemas embarcados, seria muito mais fácil apenas criar uma. Você não precisa convencer o Arch, o Ubuntu e o  OpenSUSE  a fazer o mesmo.

Claro, sendo o Red Hat a razão de existir o systemd, você não encontrará um derivado do Red Hat sem o systemd. Portanto, seja lá o que for que você fizer, vai parecer novo e diferente. Mas se você pelo menos deseja manter uma distribuição que usa o  Red Hat Package Manager  (RPM), você deve revisar o PCLinuxOS.

O projeto PCLinuxOS começou em 2003 como um fork do agora extinto Mandrake Linux pouco antes do Mandrake se tornar o Mandriva . A primeira versão do PCLinuxOS apareceu em 2007, portanto, é muito anterior ao systemd.

Área de trabalho PCLinuxOS com uma janela de terminal aberta

Embora o PCLinuxOS use arquivos “.rpm”, ele os manipula usando seu próprio software de gerenciamento de pacotes apt-rpm,. Isso é modelado após o apt-getcomando do mundo Debian. synapticTambém é fornecida uma versão modificada do que funciona com arquivos “.rpm” em vez de arquivos “.deb”.

PCLinuxOS usa SysV init e oferece uma escolha de  ambientes de desktop Plasma , MATE e XFCE durante a instalação. Existem algumas edições de “remasterização da comunidade” que fornecem outros ambientes de área de trabalho, incluindo GNOME. O shell padrão é Bash.

Abra algumas VMs

A melhor – e única maneira, realmente – de ver se você vai se dar bem com uma distribuição Linux é experimentando. A maneira mais fácil de fazer isso é em uma máquina virtual. Ele deixa sua instalação atual do Linux intacta. Você pode instalar e experimentar quantas distribuições Linux quiser até encontrar aquela que acha que gostaria de tentar. O VirtualBox é perfeito para isso.

Quando estiver pronto para instalar sua nova distribuição, faça  vários backups de sua instalação atual e então – e somente então – instale seu novo Linux.