Girando en torno a systemd

Introducción

No voy a criticar systemd. Tampoco voy a defenderlo: carezco de los conocimientos técnicos necesarios para hacer semejante análisis. Lo único que tengo en claro sobre todo el debate que gira en torno a systemd es que muchos de los que gritan desde sus trincheras digitales, tanto aquellos que están en contra como los que están a favor, no hacen más que Ctrl-C / Ctrl-V sobre las críticas/elogios que otros han hecho antes, sin siquiera preocuparse por verificar si las críticas/elogios que están copiando son válidas o no y sin comprender en realidad lo que están defendiendo.

Situación

Hasta donde comprendo la situación, el término systemd se refiere a dos cosas:

  • el «demonio» de inicio para sistemas con kernel Linux (el systemd «original»)
  • la colección de proyectos que se integran con ese demonio y que ofrecen herramientas para realizar las más variadas tareas durante el inicio de sistemas con kernel Linux

Es decir, systemd es el conglomerado de un creciente número de aplicaciones y «demonios», cada uno realizando diferentes tareas en forma coordinada.

Esto hace que una de las críticas más insistentes contra systemd sea particularmente ridícula: se le acusa de no respetar la «filosofía unix».

¿En qué sentido un grupo de aplicaciones, cada una realizando una tarea, todas coordinadas por una aplicación que también realiza una tarea (iniciar el sistema) viola la sacrosanta «filosofía unix»?

Si bien es claro que resulta cada vez más difícil (aunque no imposible: ver siguiente ítem) llevar adelante una vida normal que no dependa de systemd, creo que la acusación de no respetar la filosofía Unix es completamente injustificada.

Alternativas

Otra crítica que suele hacerse sobre systemd es que cada vez más componentes del mundo FLOSS dependen de este proyecto (incluso entornos de escritorio como gnome o KDE están cada vez más integrados con él) y que eso es «malo» para el software libre y cosas por el estilo. Pero, ¿es que hay alternativas?

El propio Linus Torvalds dijo una vez:

Talk is cheap. Show me the code.

(las palabras son baratas, muéstrame el código), por lo que la respuesta más apropiada a esta crítica sería decir «esto parece funcionar, si tienes una propuesta mejor, pues solo hay que implementarla».

Dicho y hecho:

Entonces, ¿cuál es el verdadero problema con systemd?

Quizás sea que a cierta gente le entusiasman las guerras verbales y systemd ofrece una excusa al menos en apariencia válida para discutir. Y ya se sabe: unos pocos protestando pueden hacer más ruido que muchos siguiendo adelante con sus vidas.

Si a esto le sumamos el «copiar y pegar opiniones», el (pseudo) debate está servido.

Yo por lo pronto sigo usando mi openSUSE, el cual funciona a la perfección «a pesar de» usar systemd y que en cada versión es más rápido y estable que en la anterior. Estoy seguro de que si alguna vez surge una solución mejor esta será utilizada.

Como siempre.

Anuncios

,

  1. #1 por karlggest el 14 septiembre, 2014 - 16:01

    Hola.
    EMHO no se trata más que de otra de las recurrentes “guerras”: Linux vs FreeBSD, GPL vs BSD license, GNOME vs KDE… con la parte divertida de que es un debate mucho más técnico, lo que hace fácil expresar ideas que “suenen” coherentes… tanto de un lado como de otro.

    Me llama mucho la atención que, si habemos de creer a lo que la gente dice, tanta gente con tanto nivel técnico aun crea que está usando una forma de Unix en lugar de Linux; como he dicho en alguna de estas discusiones, la culpa debe de ser de GNU, que con sus herramientas “a la Unix” le dan tal apariencia…

    Pero ni siquiera Unix es uniforme en su forma de resolver las necesidades del sistema.

    En particular, X es cualquier cosa menos una “suma de herramientas simples”. Si el proceso init de systemd es considerado complejo, no quiero contarte X!! Pero hay más detalles que nos muestran que la discusión va más allá de los aspectos técnicos, idoniedad y eficiencia que deberían ser la base para la discusión.

    Por ejemplo, hace 10 años tú tenías un sistema raíz con una carpeta para los nodos de los dispositivos /dev y un “generador de dispositivos”: MAKEDEV. Además, tenías tus entradas de /etc/fstab y si acaso /etc/autofs.master y compañía. Eso bastaba para definir tu sistema. Si hacías un “mount” veías que además de las particiones teníamos una cosa llamada /proc que era una representación del contenido de la memoria. La idea del sistema de ficheros /proc se había tomado de Plan9…

    Bien, si hoy haces un “mount”, verás un montón de sistemas de ficheros virtuales, incluidos los relativamente modernos relacionados con cgroups. ¿Es necesaria esta complejidad? Sí, sin duda, los equipos modernos son como son xddd ¿Era más sencillo todo antes y más fiable? También, sin duda. Entonces, ¿la complejidad es inherentemente mala? Sí, es cuestión estadística: más cosas, más fuentes de errores. ¿Deben las distribuciones volver al sistema Linux al estilo del año 1999? No, deben de incorporar estas y otras mejoras, por mucha complejidad que introduzcan. Un sistema simple es útil sólo si puedes usarlo en tu computador.

    Así, si vemos que el primer argumento de lo que debería de ser una discusión meramente técnica es “es que traiciona la filosofía Unix” vemos claramente que no importa lo bueno o malo que sea systemd para Linux.

    Salud!!

    • #2 por elpinguinotolkiano el 14 septiembre, 2014 - 21:17

      ¡Gracias, Karl, por el gran aporte!

      Es verdad, el servidor X es un monstruo de dimensiones épicas y por años nadie ha dicho que violaba la filosofía unix… Aunque aquí también se da otro de esos debates inútiles: X tenía (y tiene) cosas que van desde dibujar círculos (cosa que ahora hace Qt, GTK y parientes) hasta la famosa (y hoy por hoy, por nadie utilizada) «network transparency», y claro, como Wayland no tiene esas cosas, es fácil encontrar alguno protestando inútilmente.

      La gente es extraña…

      Saludos

      • #3 por Karl García Gestido el 15 septiembre, 2014 - 12:00

        Je,je, más que extraña, tiene demasiado tiempo libre xdd

        Recuerdo la primera vez que se me bloqueo un Linux… por haber puesto Enlightenment, que era precioso pero consumía una barbaridad (hasta 8MB!! xd) y podía bloquearte los periféricos de entrada (teclado y ratón, por supuesto podías seguir accediendo por red)… ¡pero era tan bonito!!! xddd

        En fin, cosas XDDD

  2. #4 por elpinguinotolkiano el 15 septiembre, 2014 - 22:58

    Linus dio una entrevista donde dice no estar preocupado por systemd 😉

A %d blogueros les gusta esto: