Systemd, ein Rant

Smalltalk
DeletedUserReAsG

Re: Systemd, ein Rant

Beitrag von DeletedUserReAsG » 21.08.2019 23:57:36

Revod hat geschrieben: ↑ zum Beitrag ↑
21.08.2019 23:28:20
Guckst Du

https://distrowatch.com/

Und meine ... dreht sehr gut und besser als mit Systemd.
Ja, hab ich geguckt. Ziemlich archaisch wirkende, vollkommen überladene Seite – aber wie ich da ’ne Lice-CD ohne systemd finde, weiß ich nicht. Du scheinst ja eine zu haben, deswegen nochmal die Frage an dich: welches Livesystem kommt denn heute ohne systemd daher? Und wofür steht „meine ... dreht sehr gut“?
Und so viel ich weiss waren Init Systeme und Kernel einzelner Distris nie kompatibel mit anderen Distris, dafür waren doch die jeweiligen selber verantwortlich, oder täusche ich mich da?

Wenn das so war, dann muss einen einzelner Angreifer jede Distri inne haben. Wenn Distris sich nun an Systemd anpassen müssen dann muss der Angreifer nur Systemd gut kennen.
Ja, du täuschst dich. Ein Initscript, das unter SuSE lief, lief auch unter dem zur gleichen Zeit aktuellen Debian. Vorausgesetzt, die sonstigen Abhängigkeiten wurden berücksichtigt. Gleiche Einschränkung gilt heute für systemd. Was diesen Aspekt angeht, sind SysV und systemd austauschbar. Andere Syntax, andere Funktionsweise im Hintergrund, aber auf gleiche Art nutzbar. Ich will das nochmal langsam zum Mitlesen schreiben:

Für einen Angreifer oder eine Malware ist’s völlig egal, ob es sich ein SysV-Initscript, oder um eine systemd-Unit handelt!

Ist das nun verstanden worden?
Doch spielt keine Rolle, so viel ich an Euren Berichte entnehmen konnte ist Potter.... recht " diktatorisch "
Nun ja … was der Protagonist aus Rowlings Kinderbüchern (Potter, H.) hier nun zu suchen hat, ist auch vollkommen unklar.

willy4711

Re: Systemd, ein Rant

Beitrag von willy4711 » 22.08.2019 00:16:59

Ist das
System Poettering
sowas wie das
System Putin ?

Mir kräuseln sich sämtliche noch vorhanden Haare, wenn eine Diskussion auf diesen Level runter gezogen wird.
Der allergrößte Teil der Linux Welt hat sich also für systemd entschieden, weil Herr Poettering das so wollte.
Also auch diejenigen, deren geschäftliches Wohlergehen von einen funktionierenden System abhängt, stehen unter der Fuchtel von Poettering ?

Und da kommen ein paar klein Fritzches daher und schreien beleidigt auf, weil man ihnen ihren Teddy weggenommen hat.

Sollen sie schreien.
Bald will sie keiner mehr hören.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Systemd, ein Rant

Beitrag von Lord_Carlos » 22.08.2019 08:48:12

Was jetzt systemd mit dem Kontainer zu tun hat wissen wir auch noch nicht.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

guennid

Re: Systemd, ein Rant

Beitrag von guennid » 22.08.2019 09:40:14

niemand hat geschrieben:wie ich da ’ne Lice-CD ohne systemd finde, weiß ich nicht. Du scheinst ja eine zu haben, deswegen nochmal die Frage an dich: welches Livesystem kommt denn heute ohne systemd daher?
Ich weiß ja nicht, wie ernst gemeint diese Frage ist bei fachlich versierten Leuten wie niemand und von denen ich annehme, dass sie einen weitaus besseren Überblick als ich haben, aber ich wag' trotzdem und trotz der mittlerweile wieder geführten Schlammschlachten mal eine Antwort:

https://files.roundr.devuan.org/devuan_ ... ktop-live/ (von mir nicht ausprobiert)

Grüße, Günther

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 22.08.2019 12:33:39

willy4711 hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 00:16:59
Und da kommen ein paar klein Fritzches daher und schreien beleidigt auf, weil man ihnen ihren Teddy weggenommen hat.
Und deswegen macht mir dieser ganze rückwärtsgewandte sysv-Kram ständig unnütze Arbeit, weil ich jedesmal von Hand die überflüssigen Runlevel-Links prüfen und entfernen muss, das init.d-Script ausplanen muss, die autogenerierte (und deswegen oft nur suboptimal passende) systemd-Unit ausplanen und deaktivieren muss, um dann schließlich eine optimal integrierte eigene Unit in Betrieb zu nehmen. Ich schließe mich einem früheren Zitat an: Adapt, or get lost und hoffe, dass solche Diskussionen irgendwann allein deshalb aufhören, weil sysv überhaupt nicht mehr unterstützt wird.... je eher, je besser.

guennid

Re: Systemd, ein Rant

Beitrag von guennid » 22.08.2019 12:59:01

TomL hat geschrieben:Und deswegen macht mir dieser ganze rückwärtsgewandte sysv-Kram ständig unnütze Arbeit
Und ich rekurriere auch mal an ein früheres Zitat: Das ist ein Popanz. Es gibt mind. zwei andere Alternativen/Weiterentwicklungen zu sysvinit außer systemd, auch bei Debian.

Grüße, Günther

wanne
Moderator
Beiträge: 7465
Registriert: 24.05.2010 12:39:42

Re: Systemd, ein Rant

Beitrag von wanne » 22.08.2019 13:37:07

TomL hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 12:33:39
Ich schließe mich einem früheren Zitat an: Adapt, or get lost und hoffe, dass solche Diskussionen irgendwann allein deshalb aufhören, weil sysv überhaupt nicht mehr unterstützt wird.... je eher, je besser.
Die Einstellung ist das Problem hinter Systemd. Ich würde jede Wette eingehen, dass Systemd genau aus dem Grund vor SysV stirbt. (Also SysV ist seit Ewigkeiten tot. Aber am Ende ist es das wozu alles andere weitestgehend kompatibel ist.) Anteil der Systemd-Systeme ist wieder schön rückläufig. Systemd wird Nische für irgend welche Gnome-Systeme 99% der SW wird halt weiter mit ihren eigenen Shellscripten kommen, die überall (außer unter Systemd) laufen und dann ein Generator schreiben. Am Ende gilt im Netzwerk und Multimedia-Segment nämlich genau der Grundsatz. Und Systemd ist grauenhaft in Sachen adopt.
Weil die Systemd Leute sich seit Jahren weigern initialisirungsskripte für Devices zu ermöglichen und meint, dass das die Hardware gefälligst selbst tun soll tut der Schrott halt auf 99% der Fernseher nicht. Und die Hersteller lassen dann halt Android-init laufen. Vor Systemd war das eine Nische. Jetzt absoluter Standard. Und so geht das überall dort, wo RedHat nicht ausreichend Einfluss hat.
rot: Moderator wanne spricht, default: User wanne spricht.

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 22.08.2019 14:53:46

wanne hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 13:37:07
Weil die Systemd Leute sich seit Jahren weigern initialisirungsskripte für Devices zu ermöglichen
Wo verhindert systemd denn initialisierungsscripte? Ist das neu? Seit wann ist das? Ist mein Debian kaputt, weil das da nämlich tadellos funktioniert? Bei mir funktionieren Initialisierungsscripte seit jeher wunderbar mit systemd... die werden halt nur durch eine Service-Unit gestartet und liegen bei mir in /usr/local/bin. Aber deswegen zu sagen, systemd verhindert das... na ja, hier zumindest nicht... oder das muss wirklich was neues sein....? :roll: Ich habe ein solches Problem jedenfalls hier noch nicht feststellen können.

wanne
Moderator
Beiträge: 7465
Registriert: 24.05.2010 12:39:42

Re: Systemd, ein Rant

Beitrag von wanne » 22.08.2019 16:36:34

TomL hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 14:53:46
Wo verhindert systemd denn initialisierungsscripte?
Lern lesen:
wanne hat geschrieben:initialisirungsskripte für Devices
Ist mein Debian kaputt, weil das da nämlich tadellos funktioniert?
Dein Debian hat vor allem ein kleines eigenes init vorgeschaltet, das die Arbeit macht (/usr/share/initramfs-tools/init), die systemd nicht hinbekommt. Systemd versucht eigentlich sowas zu verhindern indem es checkt ob es pid 1 hat. Das umgeht Debian mit nem exec systemd. Debian hat sozusagen zwei init-Systeme die aber im gleichen Prozess, der sich selbst modifiziert laufen. Das ist ganz sicher eher ein hässlicher Hack als ein sauberes System aber anders geht halt vieles nicht.
Bei mir funktionieren Initialisierungsscripte seit jeher wunderbar mit systemd... die werden halt nur durch eine Service-Unit gestartet und liegen bei mir in /usr/local/bin.
Und wie lässt du die laufen bevor Systemd die Devices initialisiert?! (Das ist wirklich eine ernsthafte Frage. Wenn das irgend wie ginge würde das vieles vereinfachen.)
Und noch schlimmer: Wie verhindere ich, dass Systemd das device dann später nicht nochmal hochbringt.
Ich habe ein solches Problem jedenfalls hier noch nicht feststellen können.
Na dann versuche einfach mal deine / oder /boot-Partition per 2-Factor und YubiKey zu entschlüsseln. (Ja. In Debian geht das weil du das in der init machen kannst und Debian eben nicht mit Systemd bootet sondern erst nach dem boot Systemd die Services starten lässt.) Und das wäre echt kein Problem. Man müsste halt nur cryptsetup verwenden dürfen können statt systemd-cryptsetup. Und das ist halt ein problem weil die auto-generierten .device-Services immer zuerst hoch kommen scheiß egal was für Abhängigkeiten du in unit-files packst weil er die generiert und startet bevor er überhaupt /etc/systemd/system liest.
Wie gesagt gleiches gilt für numerische Usernamen. Da gibt es den passenden push-request, der das Problem behebt. Aber die Systemd Leute meinen, das gehe halt nicht und das wäre gut so. Stattdessen wird nochmal irgend ein gut funktionierender Dienst wie ntp in Systemd nach implementiert.
rot: Moderator wanne spricht, default: User wanne spricht.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von Revod » 22.08.2019 16:50:22

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 08:48:12
Was jetzt systemd mit dem Kontainer zu tun hat wissen wir auch noch nicht.
Vielleicht ist das ganze mit " Kontainer " einen Missverständnis, weil deepl translate eventuell nicht im Sinne des Autors übersetzt hat. Im en-US kann das auch als * executable Paket * gemeint sein, dann ergäbe es mehr Sinn.
Systemd und PulseAudio, hmmm, nein danke.

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Systemd, ein Rant

Beitrag von ingo2 » 22.08.2019 17:00:24

Revod hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 16:50:22
Vielleicht ist das ganze mit " Kontainer " einen Missverständnis, weil deepl translate eventuell nicht im Sinne des Autors übersetzt hat. Im en-US kann das auch als * executable Paket * gemeint sein, dann ergäbe es mehr Sinn.
Was damit gemeint ist, nennt sich wohl auf gut Deutsch "AppImage" - ist eine einzige ausführbare Datei, die alles nötige selbst enhält?

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 22.08.2019 19:03:42

wanne hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 16:36:34
Lern lesen:
Daran liegt es nicht, sondern daran, dass ich die Probleme erst gar nicht verstehe, weil zumeist immer wieder nur vage Mutmaßungen präsentiert werden, weil sich keiner die Mühe macht oder dazu in der Lage ist, ein tatsächlich auf systemd zurückgehendes technisches Problem verständlich und reproduzierbar zu erklären.... damit man das für sich selbst verifizieren und bestätigen kann. Dein letztes Posting ist doch hier das erste, was wenigstens Ansatzweise technische Grundlagen mitbringt.

Allerdings verstehe ich das mit den Devices trotzdem nicht... das ist nämlich wieder nur ne vage Umschreibung für alles und nichts. Man versteht nicht, woran es hapert, welche oder um was für Devices geht es überhaupt, oder wie, wann und wodurch das Device ohne systemd erfolgreich initialisiert wird oder werden könnte, und warum das mit systemd fehlschlägt. Ist das ein Einzelfall oder wirklich eine vorhersagbare Regel für Probleme? Wie ist diese spezielle Relevanz bezogen auf die ganze Breite der Installationen einzuschätzen? Wie soll man denn mit der Faktenlage überhaupt dem zustimmen, dass systemd wirklich überfordert ist und für die breite Masse der Installationen das tatsächliche Problem darstellt?

Ich bin wirklich offen für Kritik und stimme jeder Verbesserung zu....selbst wenn sie bedeuten würde, systemd wieder abzuschaffen. Aber Kritik muss technisch fundiert und reproduzierbar erklärt sein. Der Faktor 'reproduzierbar' fehlt allerdings immer... und zwar seit ich die Diskussion hier in diesemForum verfolge. Die für mich wichtigste Frage ist, was muss ich tun, um ein solches Problem - wenigstens unter Laborbedingungen- nachzustellen?

willy4711

Re: Systemd, ein Rant

Beitrag von willy4711 » 22.08.2019 19:48:50

wanne hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 16:36:34
Dein Debian hat vor allem ein kleines eigenes init vorgeschaltet, das die Arbeit macht (/usr/share/initramfs-tools/init), die systemd nicht hinbekommt. Systemd versucht eigentlich sowas zu verhindern indem es checkt ob es pid 1 hat. Das umgeht Debian mit nem exec systemd. Debian hat sozusagen zwei init-Systeme die aber im gleichen Prozess, der sich selbst modifiziert laufen. Das ist ganz sicher eher ein hässlicher Hack als ein sauberes System aber anders geht halt vieles nicht.
Verstehe ich nicht. Bin ja nur ein einfacher User. Aber hier steht [1]
"/init" wird als erstes Programm aus diesem Wurzeldateisystem im Speicher ausgeführt. Es ist ein Programm, das den Kernel im Userspace initialisiert und die Kontrolle an die nächste Stufe übergibt. Dieses Mini-Debian-System bietet Flexibilität für den Boot-Prozess, um zum Beispiel Kernel-Module vor dem Hauptteil des Boot-Prozesses hinzuzufügen oder um das Wurzeldateisystem als verschlüsseltes Dateisystem einzubinden.
Und weiter unten:
/init" ist ein binäres systemd-Programm, wenn das initramfs durch dracut erstellt wurde.
Befehle in diesem Mini-Debian-System sind in ihrer Funktionalität auf die systemd(1)-Umgebung reduziert.
Und noch weiter:
Tipp
"/sbin/init" wurde nach Debian Jessie ein symbolischer Link auf "/lib/systemd/systemd".

Code: Alles auswählen

 ls -al /sbin/ |grep init
-rwxr-xr-x  1 root root       570 Mai 15  2018 debsums_init
lrwxrwxrwx  1 root root        20 Jul 18 19:38 init -> /lib/systemd/systemd
-rwxr-xr-x  1 root root     11360 Feb  6  2019 mkinitramfs
lrwxrwxrwx  1 root root        14 Jul 18 19:38 telinit -> /bin/systemctl
-rwxr-xr-x  1 root root      7332 Feb  6  2019 update-initramfs
Also doch systemd :?: :?:


[1]https://www.debian.org/doc/manuals/debi ... ian_system

thoerb
Beiträge: 1677
Registriert: 01.08.2012 15:34:53
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von thoerb » 22.08.2019 23:20:42

willy4711 hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 19:48:50
Verstehe ich nicht. Bin ja nur ein einfacher User. Aber hier steht [1]
Ich bin auch nur einfacher User (Anwender) und mache mir da wenig Gedanken darüber, aber bei Debian ist es wohl anders als bei anderen Distris, wird hier erklärt:

Punkt 12, Linux System Startup and Shutdown (2:04:55)

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von Revod » 23.08.2019 10:54:15

ingo2 hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 17:00:24
Revod hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 16:50:22
Vielleicht ist das ganze mit " Kontainer " einen Missverständnis, weil deepl translate eventuell nicht im Sinne des Autors übersetzt hat. Im en-US kann das auch als * executable Paket * gemeint sein, dann ergäbe es mehr Sinn.
Was damit gemeint ist, nennt sich wohl auf gut Deutsch "AppImage" - ist eine einzige ausführbare Datei, die alles nötige selbst enhält?
Und nun ist auch meine Verwirrung perfekt, weil :D

vom letzten Posting von einen User der auch mit Systemd seine Erfahrung machte,

https://www.pclinuxos.com/forum/index.p ... msg1280340

ich mit deepl übersetzte,
I have used systemd on Mageia before PCLinuxOS64 came out with a solution permitting the use
of UEFI and GPT. It complicated things then. Containers do not solve the problem of
dependencies but the package manager used in that system could. I ran Qubes for
a couple of weeks and Whonix with the Virtual Box.

I would rather not for my personal computing have to use systemd again and I think
that systems such as Qubes are best reserved for developers who need the protection
of a container so that badly behaving software will not take down their whole system.
Daher denke ich, dass nur sehr gut versierte EN <> DE Leute es am besten im richtigen Sinn verstehen können.

Abegeleitet:

Halte die " Klappe " = halte irgend eine Klappe - Deckel, Abdeckung ... kann auch durchaus " sei endlich still " bedeuten.

( Ich habe fast das Gefühl, dass deepl bis letztes Jahr mit der alte Engine besser übersetzen konnte, leider weiss ich es nicht mehr so genau )
Systemd und PulseAudio, hmmm, nein danke.

wanne
Moderator
Beiträge: 7465
Registriert: 24.05.2010 12:39:42

Re: Systemd, ein Rant

Beitrag von wanne » 23.08.2019 15:27:21

willy4711 hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 19:48:50
wanne hat geschrieben: ↑ zum Beitrag ↑
22.08.2019 16:36:34
Dein Debian hat vor allem ein kleines eigenes init vorgeschaltet, das die Arbeit macht (/usr/share/initramfs-tools/init)
[…]
"/sbin/init" wurde nach Debian Jessie
Du merkst dass es sich um zwei verschiedene Sachen handelt?
Es ist halt nicht so einfach. Im Normalfall nehmen wir an, dass ein Programm eine Datei ist. Und durch das Ausführen dessen ein Prozess entsteht. In Wahrheit ist aber ein Prozess ein ausgeführtes Programm, das im RAM liegt und sich aus verschiedensten Quellen erstellen und ändern kann. Malware nutzt das oft aus um nur harmlose Dateien auf der Platte zu haben und sich erst im laufenden betrieb wird das Programm im RAM so verändert, dass es bösartig wird. So etwas ähnliches macht Debian: Zuerst lädt es die bash in den RAM führt die aus und interpretiert damit /usr/share/initramfs-tools/init. Ist das fertig verändert sich die bash selbst und wird dann Systemd. Würdest du ganz am Anfang vom boot das Programm hinter PID 1 angucken würdest du da eine bash vorfinden. Guckst du irgend wann später findest du ein memmap von /lib/systemd/systemd. Das Programm ändert sich während es läuft.
Also: Da ist kein Oder sondern ein beides. Am Ende ist es systemd am Anfang nicht.
Man versteht nicht, woran es hapert, welche oder um was für Devices geht es überhaupt
Die autogenerierten von Systemd. Siehe man systemd.device. Systemd nennt die nunmal so. Da kann ich nichts machen. Wenn du in systemd-analyze guckst wirst du merken, dass da am Anfang eine ganze Menge von gestartet werden, ohne dass es dazu einen passenden Unit-File gibt. Und vor die kommst du halt nicht mit irgend welchen anderen Skripten.
das ist nämlich wieder nur ne vage Umschreibung für alles und nichts. [...] Der Faktor 'reproduzierbar' fehlt
Ich habe dir mit dem YubiKey ein schönes Beispiel zum nachvollziehen gegeben. Ähnlich mit dem hibernateten 2. Linux auf der gleichen Platte (mit GPT). Das Grundsätzliche Problem dahinter bleibt halt die abstraktere hart eingebaute Autogenerierung von diversen Konfigurationen die halt massiv zur Philosophie von Systemd gehören. Wenn ich einen konkretes Probelm habe meinst du das sei jetzt aber ein ganz kleiner Spezialfall. Wenn ich abstraktere Desighnprobleme anspreche heißt es, dass es aber viel zu abstrakt ist.
Es ist eines der Probleme wo wirklich gilt, dass es eben eine vorhersagbare Regel für Probleme und kein Einzelfall ist. Immer wenn irgend was vor local-fs.target passiert ist Systemd sehr unflexibel tut aber so als ob er da auch nur Units ablaufen würde.
und für die breite Masse der Installationen das tatsächliche Problem darstellt?
Nein. Wie immer bei Systemd: Praktisch alle Probleme betreffen <<1% der Nutzer aber es gibt tausende davon. Jeder der nicht absolut Mainstream ist, stolpert irgend wann mal über so eines. Wenn ich aber absolut Mainstream bin, kann ich mir gleich ein Android holen.
Und das liegt halt meiner Meinung nach an der Art wie Systemd entwickelt wird. Pöttering ist ja eher ein ruhiger Typ mit dem man über alles reden kann. Wenn du wirklich ein konkretes Problem hast, dass sich nicht beheben lässt passt er Systemd gerne auch mal an. (Und bricht damit hundert andere Systeme.) Aber im allgemeinen nimmt Systemd nie by Design Rücksicht auf andere. Kannst du das Problem auf deiner Seite beheben, kommt kein Patch in Systemd. Und schon gar nicht wird auf irgend ein Feature verzichtet, nur weil es ein paar Systeme bricht. Für die gibt es dann meist Ausnahmen. (Schönes Beispiel ist das hibernate-Problem. Da das bei DOS-Partitionen wohl häufiger ist, wurde es dort beseitigt bei GPT hält man das für unnötig und verweist auf Flags, die das 2. Linux setzen könnte.) Aber wehe du kommst mit nem System, das die noch nicht gekannt haben. (Und selbst eventuell gar kein Systemd kennt.)
Das ist das was im Geiste der UNIX-Philosophie falsch läuft/nicht versteht: Da werden so Sachen gefordert wie: „Write programs to work together.“, „Expect the output of every program to become the input to another, as yet unknown, program.“, „Write robust programs“, „Build on potential users' expected knowledge“. Da kommt immer wir haben hier doch tolle APIs.Die muss man nur benutzen. Wir sind doch modular... Ganz viele Einzeldateien, in denen der Sourcecode steckt...
Systemd trifft sehr oft Entscheidungen die viele Sachen brechen und das ganze an den unnötigsten Stellen. Nirgends gibt es stellen wo man sich als Admin mal kurz einklinken kann, und mit ein paar Quick and dirty-Hacks reparieren kann nirgends wird Rücksicht darauf genommen, dass die ganze Welt sich halt anders verhält. Und niemand Bock hat das jetzt alles neu zu Schreiben nur weil Systemd das jetzt anders (aber oft nicht mal wirklich besser) macht. Nirgends wird darauf Rücksicht genommen, dass jemand der Software benutzt nicht alle zwei Wochen die Release notes von Systemd durchlesen kann und es deswegen verdammt wichtig wäre, dass man sich darauf verlassen kann, das das Programm morgen noch genau so funktioniert wie gestern. Nirgends wird darauf Rücksicht genommen, dass man irgend eine Komponente austauschen können will weil in einem Spezialfall halt ein anderes Tool das bessere ist.
Das schafft alles keine unlösbaren Probleme. (Auf die du hier immer so stark bestehst.) Sondern einen riesigen Haufen Probleme, die man mit anderen Systemen halt nicht hat.
Und du siehtst das richtig schön wenn du ein jessie mit und ohne Systemd vergleichst:
Du hast da so etwa den Faktor 4 an Zeilen die zur Konfiguration notwendig sind im Systemd. Am Ende tun beide. Die Frage ist halt: Warum soll ich mir das antun?!

Nur mal so ein schönes Beispiel wie das anders geht: Jeder mir bekannte DHCP-Client unter Linux erlaubt dir per Hook ein Shell Script einzufügen, dass nachträglich die Parameter ändert. Ich habe das noch nie gebraucht. Mir fällt auch kein spezieller Fall ein, wo man sowas brauchen könnte. Aber jeder Client bietet seit Jahrzehnten die selben Hooks, falls es da drausen irgend eine Software gibt, die sich darauf verlässt. Das sind ca. 3 Zeilen Code die man dafür einfügen muss. Das tut keinem weh. Aber wenn das 0.1% er Leute nutzen dann nutzt das noch ein paar Millionen Leuten die ihre Konfiguration nicht ändern müssen.

Zum Vergleich Systemd: Kommt nicht mit numerisch beginnenden Usernamen zurecht. Es ist genau eine Zeile, die dazu angepasst werden müsste, um das zu ändern. Und die würde sogar deutlich kürzer. Die verwenden wir auf der Arbeit halt wirklich und es ist leider extremst schwer davon weg zu kommen. (Da müsste Software umgeschrieben werden, die wir selbst nur zugekauft haben.) Ich weiß nicht wie häufig das ist. Aber keine Chance das durchzusetzen, dass Systemd das zulässt. Und er wirft nicht mal eine Fehlermeldung sondern verhält sich nur falsch. Das Problem ist also auch noch schwer zu debuggen. Nachdem gezeigt wurde, dass das sicherheitsrelevant ist, weil kein Mensch damit rechnet, dass man im Jahr 2019 nicht beliebige Usernamen vergeben kann haben sie für den speziellen Fall eine wo das Sicherheitsrelevant ist, eine Warnung eingebaut. Grundsätzlich will man aber aus "Kompatibilitätsgründen" von der Idee nicht weg, dass keine Fehler geworfen werden, wenn man Usereingaben nicht versteht. Und man stellt sich auch ganz offen hin und meint es sei absolut nicht Sache von Systemd sei jeden möglichen Spezialfall abzudecken, wenn diese durch den User verhindert werden könnten.

Sorry: Wessen Ansprüche an die Software, die er entwickelt so niedrig sind, dessen Software will ich nicht verwenden.
Ich will nicht grundsätzlich weg von der Architektur von Systemd. Die ist nicht schlecht gewählt. Aber ich hätte gerne stabil einsetzbare und vor allem flexible Software.
Und dazu gehört zu aller erst mal die Idee, dass man
a) Versucht Schnittstellen zu schaffen, damit man Teile der Software austauschen kann, wenn alternativen besser geeignet sind. (Das verstehe ICH als Admin unter Modularität.)
b) die Schnittstellen in einem geeigneten Gremium (LSB oder POSIX währen da die Naheliegenden.) zu standardisieren sodass andere mit ihren Bedürftnissen auf die Weiterentwicklung einwirken können. (Denn nur so bekommt man welche die auch auf Spezialfälle, von denen man selbst noch nie was gehört hat abdecken.)
c) Versucht alte standardisierte APIs zu implementieren und wenn nötig kompatibel zu erweitern und nur im Notfall neue zu definieren und die ausreichend erweiterbar macht, damit man sich an die Zukunft halten kann. Auf keinen Fall aber dauernd neue zueinander inkompatible zu schaffen oder gar alte inkompatibel zu kürzen (wie bei fstab und crypttab). (Denn letzteres verursacht unnötigen Aufwand.)
d) Harte Qualitäts- und Robustheitsanforderungen an seine Software stellt und bereit ist für die auch wenigstens ein paar Jahre gerade zu stehen. Das heißt vor allem auch mit Fehlern von anderen Programmen/Usern umgehen zu können. Das kann auch gerne ein Beenden mit einer Fehlermeldung sein.

Nicht die Architektur an sich ist das Problem sondern die unzählige Details. Und die bekommt man nicht weg, wenn man nicht grundsätzlich auf einen, ich sage mal jetzt, Konservativern Entwicklungsstiel umsteigt. Sonst habe ich halt jeden Monat wieder mit neuen Problemen zu kämpfen, die ich zwar beheben kann, die mir aber enorme unnötige Arbeit verursachen und die ich woanders gar nicht hätte. Oder um wieder mit nem UNIX-Grundsatz zu antworten: Value developer time over machine time. Ich brauche nicht nochmal einen schnelleren Dienstestarter. Die Bash war mir schnell genug. Ich brauche einen, der MIR zeit spart.

Ernsthaft: Ein mal The Art of Unix Programming als Pflichtlektüre würde vielen der Systemd-Developer gut tun.
rot: Moderator wanne spricht, default: User wanne spricht.

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Systemd, ein Rant

Beitrag von ingo2 » 19.09.2019 21:43:56

Ich habe diesen Post in der Mailing-list von debian-devel gefunden:
https://lists.debian.org/debian-devel-a ... 00001.html

Interessant dabei und Hauptthema ist der Abschnitt unter
Init System Diversity

Ich gebe dazu keinen Kommentar ab, ist aber sicher von Interesse, wenn man sehen möchte, wo Debian bezüglich systemd hinsteuert.

Ingo

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von Revod » 20.09.2019 11:06:24

ingo2 hat geschrieben: ↑ zum Beitrag ↑
19.09.2019 21:43:56
...
Ich gebe dazu keinen Kommentar ab, ist aber sicher von Interesse, wenn man sehen möchte, wo Debian bezüglich systemd hinsteuert.

Ingo
Ich kann kein englisch und deshalb habe mir von deepl.com die jeweiligen Absätze übersetzen lassen, doch leider ist die Übersetzung sehr, sehr an vielen Sätze am EN Sinn vorbei übersetzt worden und daher für mich immer noch nicht verstanden.

Irgend wie habe ich verstanden, dass die Systemd Maintainer keine Lust mehr haben und irgend wie verstanden, dass es gravierende Bug hat, die harte Lösungen erfordern. Und irgend wie verstanden, dass man von Systemd weg kommen will, oder behalten möchte und dafür Sysv-Init gänzlich von Debian entfernen will.

Nicht nur für mich, könntest Du bitte nicht einfach in ein bis drei Sätze kurz sagen wohin sich nun Debian bewegen will ob Richtung Elogind, Systemd, oder nur noch zu den " klassischen " init Scripte?

Danke schon Mal.

PS: Man könnte auch schreiben; Debian will sich bezüglich Systemd in Zukunft Richtung .... bewegen.... siehe Link, und gut ist.
Systemd und PulseAudio, hmmm, nein danke.

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Systemd, ein Rant

Beitrag von ingo2 » 20.09.2019 13:04:47

Also, mal ein Versuch, das mit ein paar Worten zu beschreiben:

Es gibt 2 Möglichkeiten für Desktops Login-Vorgänge durchzufüheren/managen:
Debianelogind und systemd-logind.service. Debianelogind benötigt kein Debiansystemd.
Debianelogind wird benötigt, um Debian auf Architekturen zu nutzen, die systemd nicht unterstützt, Debian ist also derzeit noch für alternative init-Systeme zu haben/nutzen.

Problem dabei ist, dass Desktop-Umgebungen prinzipiell beide Varianten unterstützen müssen, die aber zueinannder inkompatibel sind. D.h. ein Wechsel bedeutet komplette De- und anschließend Neu-Installation.

Das Problem dabei ist, dass die beiden "Lager" wenig co-operativ sind und offensichtlich gerade das systemd-Lager sich recht stur stellt.

Gelöst ist das Problem noch nicht.

Ingo

Benutzeravatar
whisper
Beiträge: 3192
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Systemd, ein Rant

Beitrag von whisper » 20.09.2019 13:31:54

Perfekt zusammen gefasst.
Ist aber auch eine normale Sache, dass bei langwierigen Abstimmungen irgendwann die Luft raus ist.
Vielleicht hilft dieses Statement ja und man rafft sich auf.
Ich kann das sehr gut nachvollziehen, habe ich selbst auch schon privat und beruflich erlebt.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von Revod » 20.09.2019 14:46:25

ingo2 hat geschrieben: ↑ zum Beitrag ↑
20.09.2019 13:04:47
Also, mal ein Versuch, das mit ein paar Worten zu beschreiben:

Es gibt 2 Möglichkeiten für Desktops Login-Vorgänge durchzufüheren/managen:
Debianelogind und systemd-logind.service. Debianelogind benötigt kein Debiansystemd.
Debianelogind wird benötigt, um Debian auf Architekturen zu nutzen, die systemd nicht unterstützt, Debian ist also derzeit noch für alternative init-Systeme zu haben/nutzen.

Problem dabei ist, dass Desktop-Umgebungen prinzipiell beide Varianten unterstützen müssen, die aber zueinannder inkompatibel sind. D.h. ein Wechsel bedeutet komplette De- und anschließend Neu-Installation.

Das Problem dabei ist, dass die beiden "Lager" wenig co-operativ sind und offensichtlich gerade das systemd-Lager sich recht stur stellt.

Gelöst ist das Problem noch nicht.

Ingo
Danke ingo2, sehr gut erklärt.

Ich wäre für eine " Neuinstallation " mit elogind und ohne... :mrgreen:
Systemd und PulseAudio, hmmm, nein danke.

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Systemd, ein Rant

Beitrag von ingo2 » 17.11.2019 11:49:12

Aktuell läuft die Abstimmung zu einer "General Resolution" bei Debian - mal gespannt wie die ausgeht:
A General Resolution has been started about Init Systems and
systemd. It currently has 3 available options. More information
can be found at:
https://www.debian.org/vote/2019/vote_002


Kurt Roeckx
Debian Project Secretary

guennid

Re: Systemd, ein Rant

Beitrag von guennid » 17.11.2019 16:06:59

Na, dann werden wohl Red Hats Fünfte Kolonnen bald wieder da sein.

Frage am Rande: Wird bei Android eigentlich systemd benutzt?

Grüße, Günther

Benutzeravatar
schorsch_76
Beiträge: 2543
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von schorsch_76 » 17.11.2019 16:18:15

guennid hat geschrieben: ↑ zum Beitrag ↑
17.11.2019 16:06:59
Na, dann werden wohl Red Hats Fünfte Kolonnen bald wieder da sein.

Frage am Rande: Wird bei Android eigentlich systemd benutzt?

Grüße, Günther
Nein. Android nutzt ein eigenes init System.

https://elinux.org/Android_Booting

Radfahrer

Re: Systemd, ein Rant

Beitrag von Radfahrer » 17.11.2019 16:22:43

Super!
Dann können die ganzen ewig gestrigen ja auf Android umsteigen, sobald Devuan gestorben ist.

scnr :mrgreen:

Antworten