Systemd, ein Rant

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

Systemd, ein Rant

Beitrag von whisper » 10.07.2018 14:02:24

Bin gerade über http://www.danisch.de/blog/2018/07/10/s ... scheidung/
gestolpert.
Ein Punkt daraus
Das Debugging ist eine Katastrophe. Immer wieder passiert es, dass irgendein System beim Booten an irgendwas hängt, aber nicht sagt, was. Auf der Console wird angezeigt, dass man jetzt auf einen wichtigen Job wartet – aber nicht, auf welchen.
Das habe ich ab- und an auch und ist schon nervig.
Es gibt auch einen Timeout, dann geht es meist weiter.
Diesen "Manchmal" Fehler einzugrenzen ist bestimmt möglich, aber könnte mit entsprechenden Hinweisen viel schneller und einfacher sein.

So tief drin stecke ich nicht im Startupsystem, weiß nur, das war früher leihter zu durchschauen und damit konnte man auch leichter helfend eingreifen.
Wenn ich aber bei Debian bleiben will (und das will ich) kann man nur hoffen, dass das systemd Universum langsam abkühlt und bewohnbar wird :x

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Systemd, ein Rant

Beitrag von heisenberg » 10.07.2018 14:25:58

Meine Erfahrungen sind da folgende(So wirklich tief drin bin ich auch nicht):
  • Ich hatte schon mal ein Problem mit einem Drucker-/Scannertreiber(3rd-party), der das System in einer der nächsten Systemstarts lahmgelegt hat. Ich habe auf Verdacht via rescue mal rc.local gelöscht. Dann ging es wieder.
  • Ein Server ist irgendwann nicht mehr gestartet.(Wartet auf Dienst irgendwas). Ich habe auch über die Debug-Konsole versucht da Informationen rauszubekommen, was denn da jetzt wirklich klemmt. Selbst nach viel Recherche, wie ich das jetzt debuggen kann nicht hinbekommen. In Hilflosigkeit kurzerhand das Backup eingespielt fertig.
  • Ansonsten ist das Einrichten von neuen Systemdiensten sehr einfach und angenehm.
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Systemd, ein Rant

Beitrag von MSfree » 10.07.2018 14:55:27

Das erinnert mich an eine berühmte Fehlermelldung, die bei Windows NT4 nervenderweise auftrat:
Der Start eines Dienstes, der beim Systemstart gestartet werden sollte, schlug fehl. :facepalm:
In keinem Log war rauszufinden, weilcher Dienst gemeint sein könnte.

Bisher konnte ich Startproblem allerdings in der Regel mit systemd-analyze lösen, zumindest, wenn die Krücke noch bis zum Login kam.

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

Re: Systemd, ein Rant

Beitrag von whisper » 10.07.2018 15:01:21

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 14:55:27
Bisher konnte ich Startproblem allerdings in der Regel mit systemd-analyze lösen, zumindest, wenn die Krücke noch bis zum Login kam.
Dumm nur, wenn's beim runterfahren passiert. Mal sehen, ob ich dann beim Hochfahren mit systemd-analyze weiterkomme :mrgreen:

Benutzeravatar
Meillo
Moderator
Beiträge: 8782
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Systemd, ein Rant

Beitrag von Meillo » 10.07.2018 15:18:02

Ich finde es gut, wenn mit etwas Abstand die Entscheidungen von damals neu bewertet werden, um fuer zukuenftige Entscheidungen zu lernen.

Ob man bereits genug Abstand hat, kann ich schlecht beurteilen. Der Blogpost scheint mir auch keine sachliche Neubewertung der Situation zu sein. Es waere einfach gut, wenn so ein kontroverses Thema wie Systemd zu gegebener Zeit ordentlich aufgearbeitet werden wuerde.
Use ed once in a while!

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 » 10.07.2018 15:44:57

Beispielsweise übernimmt das Ding die DNS-Auflösefunktion, aber es gibt da überhaupt nichts zu konfigurieren.
Ist das nicht optional?
Und konfigurieren kann man es auch.
Bei Ubuntu schaffen sie es nicht, den dnsmasq erst dann zu starten, wenn die interfaces alle oben sind – deshalb werden manche Interfaces nicht bedient, weil sie beim Start des Daemons noch nicht da waren.
Systemd will wohl das die Programme selber etwas dynamischer sind. https://www.freedesktop.org/wiki/Softwa ... orkTarget/
If you are a developer, instead of wondering what to do about network.target, please just fix your program to be friendly to dynamically changing network configuration. That way you will make your users happy because things just start to work, and you will get fewer bug reports as your stuff is just rock solid. You also make the boot faster for your users, as they don't have to delay arbitrary services for the network anymore (which is particularly annoying for folks with slow address assignment replies from a DHCP server).

Code: Alles auswählen

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

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 10.07.2018 16:00:44

Meillo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 15:18:02
Es waere einfach gut, wenn so ein kontroverses Thema wie Systemd zu gegebener Zeit ordentlich aufgearbeitet werden wuerde.
Ich halte das für sehr schwer.... für mich wäre das so, als würden C-Programmierer (die nicht umsteigen wollen), und C++-Programmierer (die umgestiegen sind und die Vorteile begriffen haben) über den Sinn oder Unsinn von C++ diskutieren. Was meiner Meinung nach die Diskussion so schwer macht, ist die Tatsache, dass nicht verifiziert werden kann, was tatsächlich die Ursache vermeintlicher Customizing-Probleme mit systemd ist - echte Bugs mal außen vor gelassen. So Aussagen wie "systemd kriegt's nicht hin" und "der Service wartet nicht auf den Service" oder "systemd hängt beim Start oder beim Stop" lassen mich immer zuerst vermuten, dass es lediglich der Unit-Programmierer nicht hinkriegt, sich in seiner Unit so zu äußern, dass es keine Konflikte gibt. Ich habe echt schon einige verrückte Abhängigkeiten hingebastelt und mich jedesmal gewundert, dass systemd damit klar kommt... einschließlich der Einbindung systemseits bereits vorhandener Units. Das irgendwer nicht auf irgendwen gewartet hat, hab ich noch nie erlebt... nur dann, wenn der Dienst selber ne Macke hatte und nicht mit sauberen Exit-Code zurückgekehrt ist. Und wenn meine Programme Abhängigkeiten haben, dann ist es meine Überzeugung, dass das Warten auf die Abhängigkeit Sache meines Programms bzw. der dazugehörigen Unit ist... das ist nicht Sache von systemd .... mein Programm muss eben selber checken, ob das verfügbar ist, was es braucht, ansonsten warten oder beenden. Mit der Erwartungshaltung von sysvinit kann das aber nix werden, weil man bei sysvinit durch die starr lineare Reihenfolge davon ausgehen konnte, wenn 'mein' Job gestartet wird, sind auch die Abhängigkeiten erfüllt. In Wahrheit ist das mit den Parallelstarts unter systemd also ein Paradigmenwechsel, den sich meiner Meinung einige weigern zu aktzeptieren oder sich anzupassen. Das ist m.M.n. keine gute Basis für eine Diskussion.

Wenn jemand mit dem Herzen C-Programmierer ist, aber mit C++ arbeiten muss, wird er nie die Vorteile von C++ hervorheben, sondern nur auf jeden Fehler rumreiten. Wie gesagt, ich halte das für ein unlösbares Thema, weil persönliche Neigungen es unlösbar machen....insofern kann ein solch kontroverses Gespräch nur schwer konstruktiv sein. Ich teile die Meinung dieses Bloggers nicht... und er ist auch nicht sachlich überzeugend... imho ist das nur 'ne Meinung.... und er hat nicht nachgewiesen, dass er nicht vielleicht selber Ursache der Probeme ist.

j.m2.c.
Zuletzt geändert von TomL am 10.07.2018 16:05:42, insgesamt 1-mal geändert.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Systemd, ein Rant

Beitrag von MSfree » 10.07.2018 16:05:00

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 15:44:57
If you are a developer, instead of wondering what to do about network.target, please just fix your program to be friendly to dynamically changing network configuration. That way you will make your users happy because things just start to work, and you will get fewer bug reports as your stuff is just rock solid. You also make the boot faster for your users, as they don't have to delay arbitrary services for the network anymore (which is particularly annoying for folks with slow address assignment replies from a DHCP server).
Wenn ich so etwas lese, kann ich eigentlich nur noch an die Decke gehen. Da hat jemand (Poettering?) mal wieder viel zu kurz gedacht. Wenn ein Dienst wie ein DHCP-Sever (und dnsmasq gehört in diese Kategorie) IP-Adressen nur auf einem Interface ausliefern soll und ein zweites bitte in Ruhe lassen soll, wäre es schon nett, wenn dieser Dienst erst gestartet wird, wenn das Netzwerk vollständig da ist. Warum dnsmasq bei Ubuntu nicht startet, wenn das Netzwerk oben ist, liegt an einer Fehlkonfiguration in der .service-Datei für Systemd. Eine schlampig definierte Starthierarchie damit zu entschuldigen, daß dann der Systemstart schneller ist, zeugt nicht gerade von Weitsicht.

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 10.07.2018 16:08:16

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:05:00
Warum dnsmasq bei Ubuntu nicht startet, wenn das Netzwerk oben ist, liegt an einer Fehlkonfiguration in der .service-Datei für Systemd. Eine schlampig definierte Starthierarchie damit zu entschuldigen, daß dann der Systemstart schneller ist, zeugt nicht gerade von Weitsicht.
Und was hat systemd damit zu tun, wenn der Entwickler von dnsmasq seine Units nicht ordentlich hinkriegt? Und nix anderes steht da imho im von Carlos zitierten Text.... der Entwickler muss sein Programm so hinstellen, dass es mit parallelen Starts von Services klarkommt. Also... systemd kann man das imho bestimmt nicht anlasten....

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 » 10.07.2018 16:13:29

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:05:00
Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 15:44:57
If you are a developer, instead of wondering what to do about network.target, please just fix your program to be friendly to dynamically changing network configuration. That way you will make your users happy because things just start to work, and you will get fewer bug reports as your stuff is just rock solid. You also make the boot faster for your users, as they don't have to delay arbitrary services for the network anymore (which is particularly annoying for folks with slow address assignment replies from a DHCP server).
Wenn ich so etwas lese, kann ich eigentlich nur noch an die Decke gehen. Da hat jemand (Poettering?) mal wieder viel zu kurz gedacht. Wenn ein Dienst wie ein DHCP-Sever (und dnsmasq gehört in diese Kategorie) IP-Adressen nur auf einem Interface ausliefern soll und ein zweites bitte in Ruhe lassen soll, wäre es schon nett, wenn dieser Dienst erst gestartet wird, wenn das Netzwerk vollständig da ist.
Waere es nicht optimal wenn der DHCP-Sever selber sieht ob das interface da ist oder nicht?

Code: Alles auswählen

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

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Systemd, ein Rant

Beitrag von MSfree » 10.07.2018 16:36:19

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:13:29
Waere es nicht optimal wenn der DHCP-Sever selber sieht ob das interface da ist oder nicht?
Optimal wäre es sicherlich nicht.

Dnsmasq kann man in der Konfiguration mitteilen, welches Interface mit DHCP versorgt werden soll. Wenn ich sowieso nur ein Interface habe, lasse ich die Option weg und alles ist gut. Habe ich mehrere müßte ich eine Warteschleife ins Programm bauen, die in regelmässigen Abständen prüft, ob die Schnittstelle, die in der Konfiguration steht, bereits hochgefahren ist. Erwische ich dann die Schnittstelle noch in einem halbhochgefahrenen Moment, kommt es darauf an, ob das erkennbar ist und nochmal gewartet werden muß oder ob es dann mit der halben Konfiguration weiter geht und dnsmasq dann einfach nicht funktioniert oder sich beendet.

Es gibt im Kernel jedenfalls keine Funktion, mit der man ein Programm einfach solange warten lassen kann, bis eine bestimmte Bedingung (wie Schnittstelle ist vollständig konfiguriert) erfüllt ist. Das muß das Programm mit Polling machen und Polling ist eine der schlechtesten Testmethoden, die sogar viel Rechenzeit verbraten kann, wenn man es falsch macht, was den Startvorgang sogar verlängern kann.

Systemd und die .service-Dateien unterstützen ja den Fall, daß eine Unit erst gestartet werden soll, wenn eine Bedingung erfüllt ist. Und das ist meines Erachtens der korrekte Weg, auch wenn es ein paar zehntel Sekunden Startzeit kostet.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Systemd, ein Rant

Beitrag von tobo » 10.07.2018 17:08:44

TomL hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:00:44
Meillo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 15:18:02
Es waere einfach gut, wenn so ein kontroverses Thema wie Systemd zu gegebener Zeit ordentlich aufgearbeitet werden wuerde.
Ich halte das für sehr schwer.... für mich wäre das so, als würden C-Programmierer (die nicht umsteigen wollen), und C++-Programmierer (die umgestiegen sind und die Vorteile begriffen haben) über den Sinn oder Unsinn von C++ diskutieren.
Das ist doch mal ein richtig schönes Beispiel dafür, warum man mit populistischen Meinungsmaschinen keinen Dialog führen kann: Das Ergebnis der Diskussion steht bereits vor deren Beginn fest und schwingt in jeder Argumentation mit.

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

Re: Systemd, ein Rant

Beitrag von whisper » 10.07.2018 17:30:21

Eigentlich hätte ich wissen müssen, dass ich damit eine gerade eingeschlafene Diskussion erneut entfache...

Mein Anliegen war, darauf hinzuweisen, dass das System noch Ecken und Kanten hat. Wie ich nun lese, ist das zu kurz gegriffen, das Problem liegt wohl an der Umsetzung von Annahmen bei anderen Diensten und bei der Akzeptanz bei den Endusern.

Als solchen User begreife ich mich hier.
Es ist schön, dass manche Dinge nun (eigentlich) viel schneller erledigt sind (War es bis vor einigen Wochen ja auch, Boot in 4.x Sekunden)
Nur fahre ich jetzt Buster, (selber schuld) und da ist es momentan so, dass beim rebooten in beiden Phasen starke Verzögerungen (nicht immer) auftreten, die ich zwar aushalten, aber nicht unbedingt gut heißen muss.

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 » 10.07.2018 17:38:22

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:36:19
Dnsmasq kann man in der Konfiguration mitteilen, welches Interface mit DHCP versorgt werden soll. Wenn ich sowieso nur ein Interface habe, lasse ich die Option weg und alles ist gut. Habe ich mehrere müßte ich eine Warteschleife ins Programm bauen, die in regelmässigen Abständen prüft, ob die Schnittstelle, die in der Konfiguration steht, bereits hochgefahren ist. Erwische ich dann die Schnittstelle noch in einem halbhochgefahrenen Moment, kommt es darauf an, ob das erkennbar ist und nochmal gewartet werden muß oder ob es dann mit der halben Konfiguration weiter geht und dnsmasq dann einfach nicht funktioniert oder sich beendet.
Muss man nicht sowieso was aehnliches machen um Situationen zu hantieren wie z.B. Netzwerk wechsel?
MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 16:36:19
Es gibt im Kernel jedenfalls keine Funktion, mit der man ein Programm einfach solange warten lassen kann, bis eine bestimmte Bedingung (wie Schnittstelle ist vollständig konfiguriert) erfüllt ist. Das muß das Programm mit Polling machen und Polling ist eine der schlechtesten Testmethoden, die sogar viel Rechenzeit verbraten kann, wenn man es falsch macht, was den Startvorgang sogar verlängern kann.
In der doku steht was von rtnetlink, das ist nicht dafuer gedacht?
Kann es wirklich viel Rechenzeit kosten jede Sekunde nachzufragen ob ein interface up ist?

Code: Alles auswählen

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

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Systemd, ein Rant

Beitrag von MSfree » 10.07.2018 18:25:14

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 17:38:22
Muss man nicht sowieso was aehnliches machen um Situationen zu hantieren wie z.B. Netzwerk wechsel?
Es kommt drauf an, ob es sich im einen Client oder einen Server handelt. Ein Server wird selten das Netzwerk wechseln, so daß sich das Problem hier eigentlich nicht stellen sollte. Grundsätzlich verlangen alle Serverdienste, egal ob DHCP, DNS, SSH, SMB, NFS, Squid, IMAP etc. mindestens eine konfigurierte Netzwerkschnittstelle.

Bei einem Client ist es möglich, abzufragen, ob ein Netzwerkkabel gesteckt oder abgesteckt wurde, z.B. mit allow-hotplug in der /etc/network/interfaces. Ähnliches gilt für WLAN, wenn man den Empfangsbereich verläßt oder in einen neuen Empfangsbereich kommt. Die Situation ist hier aber eine andere. Da wird auf die unkonfigurierte Netzwerkschnittstelle reagiert, um sie daraufhin zu konfigurieren.
In der doku steht was von rtnetlink, das ist nicht dafuer gedacht?
Nein, nicht wirklich.
Kann es wirklich viel Rechenzeit kosten jede Sekunde nachzufragen ob ein interface up ist?
Nein, einmal pro Sekunde zu prüfen, kostet so gut wie gar nichts, verlängert aber den Bootvorgang unnötig. Wenn du 30 Dienste startest, die jeweils 1-2 Sekunden warten, bis ihre Randbedingungen erfüllt sind, dann hast du unter Umständen 30-60s zusätzliche Bootzeit.

Läßt man als anderes Extrem gar keine Wartezeit zu, so könnte eine aktuelle CPU damit ausgelastet werden 100 Millionen mal pro Sekunde irgendeinen Zustand abzufragen, die andere Prozesse bekommen dann im zweifelsfall gar keine CPU-Zeit mehr.

Wie gesagt, Polling ist doof. :mrgreen:

Und genau darum gibt es z.B.

Code: Alles auswählen

 After=network.target auditd.service
in der /lib/systemd/system/ssh.service. Systemd sorgt dann dafür, daß SSH erst dann gestartet wird, wenn das Netzwerk und der Auditd laufen. Der Nachteil dieser Hierarchiedefinition ist halt, daß die CPU beim Booten eventuell nicht komplett ausgelastet werden kann, weil für einige Dienste systemd durch das Warten auf die Randbedingungen einige Dienste nicht vollständig parallelisiert starten kann.

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 10.07.2018 18:38:52

tobo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 17:08:44
warum man mit populistischen Meinungsmaschinen keinen Dialog führen kann: Das Ergebnis der Diskussion steht bereits vor deren Beginn fest und schwingt in jeder Argumentation mit.
Könntest Du bitte diesen Satz erklären? Ich bin nämlich einigermaßen verunsichert, ob ich damit vorsätzlich beleidigt wurde oder ob ich gar nicht gemeint war.

Soweit es eine solche hypothetische Diskussion angeht steht für mich fest, dass sich 99 von 100 systemd-Hassern vehement gegen jeglichen Missionierungsversuch wehren werden, vermutlich begleitet von der Aufforderung, diese unnötige und unsachliche Missionierung zu unterlassen... denn schließlich ist man ja "alt" genug, das treffend selber einzuschätzen... und relevante Fakten für systemd sind dann auch nur Fan-Boy-Gelabere. Als überzeugter Gegner will man ja nicht auf einmal als Wendehals darstehen. Und auf der anderen Seite werden systemd-Befürworter nicht mehr auf die Vorteile von systemd verzichten wollen, wenn sie zu sysvinit zurück sollten.

Glaubst Du wirklich, dass es neue Fakten gibt, die nicht schon (falsch oder richtig) widerlegt wurden.... wie auch immer, aber auf jeden Fall 'widerlegt'.... so wie jetzt hier oberhalb mit den Abhängigkeiten, die systemd angelastet werden, wo es aber m.M.n. gar nix mit zu tun hat?

Bei einer solchen Diskussion, wo es zum großen Teil um Neigungen und Animositäten geht, gibts nur ein Ergebnis, und zwar kein Ergebnis. Bin ich jetzt eine populistische Meinungsmaschine, weil ich meine Zeit deswegen nicht mehr mit der Diskussion mit einem Systemd-Hasser verschwenden will?

Benutzeravatar
Meillo
Moderator
Beiträge: 8782
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Systemd, ein Rant

Beitrag von Meillo » 10.07.2018 20:30:33

Ich finde, man merkt deutlich, dass noch nicht die Zeit gekommen ist, um nuechtern, sachlich, neutral und wissenschaftlich dieses Thema neu zu bewerten. So werde ich wohl noch ein paar Jahre darauf warten muessen.
Use ed once in a while!

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Systemd, ein Rant

Beitrag von tobo » 11.07.2018 00:46:49

TomL hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 18:38:52
tobo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 17:08:44
warum man mit populistischen Meinungsmaschinen keinen Dialog führen kann: Das Ergebnis der Diskussion steht bereits vor deren Beginn fest und schwingt in jeder Argumentation mit.
Könntest Du bitte diesen Satz erklären? Ich bin nämlich einigermaßen verunsichert, ob ich damit vorsätzlich beleidigt wurde oder ob ich gar nicht gemeint war.
Ich weiß zwar nicht, wie man das falsch verstehen kann, aber bitte: Natürlich warst du gemeint. Ich verstehe auch nicht, dass du dich dadurch vorsätzlich beleidigt fühlst, schließlich ist das genau der Habitus, mit dem du hier durchweg auftrittst!? Es gibt einen Unterschied darin, eine Meinung zu einer Sache zu haben und ein Urteil darüber zu fällen. Und wenn dann auch noch die Pro-Vergleiche (C++) mit derselben Absurdität an Logik vorgebracht werden (da gibt's ganze Webseiten darüber, die sich nur damit befassen und das Gegenteil behaupten), um die "Beweiskette" zu schließen, dann stützen sich am Ende die Vermutungen/Halbwahrheiten/Lügen gegenseitig. Genauso argumentieren die Populisten von AfD und CSU, ebenso solche Meinungsmaschinen wie z.B. Scholz oder von der Leyen. Letztere (um den Kreis zu schließen), in ihrer vollen Pracht, vom Autor des Blogs "porträtiert" (alt und länglich, aber lesenswert):
http://www.danisch.de/blog/2011/06/21/w ... unde-ging/
Es geht nichts über eine vordefinierte Meinung?!

ViNic

Re: Systemd, ein Rant

Beitrag von ViNic » 11.07.2018 07:10:27

Linux ist einfach nicht stabil. Der TE nutzt doch ein Testing, wo es keine Garantie gibt das Programme laufen. Je nachdem welche Distribution man nutzt, hat man distributionsspezifische Probleme. Zum Beispiel, SystemD in Testing kaputt aber in openSuSE Leap funktioniert es. Ist SystemD jetzt kaputt oder nicht?

Ich kann mich noch sehr gut daran erinnern als PulseAudio das Licht der Welt erblickte. Zuerst auf Fedora und mit Verspätung von Monaten und Jahren dann auch in anderen Distributionen. PulseAudio hat unter Fedora funktioniert, weil es dort wohl sauber implementiert wurde. Andere Distributionen hatten da Probleme. Ubuntu zum Beispiel hat es über ein Jahr lang nicht hinbekommen PulseAudio zum funktionieren zu bringen, andere Distros waren da ähnlich. War PulseAudio nun defekt oder nicht?

Ich habe vor paar Tagen Debian Testing in VirtualBox installieren wollen. Ging nicht weil der Installer meinte Ext4 im Moment nicht zu unterstützen. Debian Stable funktioniert wunderbar.

Jede Linux Distribution hat ihre eigene Probleme, weil jeder seine eigene Suppe kocht. Darüber sollte man einen Rant machen.

SystemD ist super! :THX:

DeletedUserReAsG

Re: Systemd, ein Rant

Beitrag von DeletedUserReAsG » 11.07.2018 07:41:55

ViNic hat geschrieben: ↑ zum Beitrag ↑
11.07.2018 07:10:27
Zum Beispiel, SystemD in Testing kaputt aber in openSuSE Leap funktioniert es. Ist SystemD jetzt kaputt oder nicht?
Du schreibst es doch schon: systemd in Testing ist kaputt (wenn es denn so ist, ich kann’s nicht prüfen). Das Ding ist nicht geeignet, standalone zu laufen, also wird man seine Funktionsfähigkeit auch immer im Kontext beurteilen müssen. Die bessere Frage wäre also: woran liegt’s, dass systemd in Testing gerade nicht so tut, wie es soll – und wie kann man es fixen?

Davon zu unterscheiden wären generelle Kritikpunkte an systemd, die zweifelsfrei existieren und oft auch durchaus ihre Berechtigung haben. Die sind unabhängig von der Distribution, und der im Eingangsbeitrag genannte Punkt wäre so einer: soweit ich weiß, gibt systemd in keiner Distribution aus, wo genau es denn nun gerade hängt. Mit „A start/stop job is running for user …” kann man nunmal unter keiner Distribution, auch nicht unter SuSE Leap, auf dem ersten Blick erkennen, wo man ansetzen sollte.
Warum steht da nicht stattdessen sowas wie „xyz.service running for user 0815 is blocking […]“ oder „Waiting for xyz.service running for user 0815 to finish unmounting /pfad/…“?


---
ViNic hat geschrieben: ↑ zum Beitrag ↑
11.07.2018 07:10:27
SystemD ist super! :THX:
Hilf mir bitte: war das ironisch gemeint? Die Schreibweise „SystemD“ und der verstärkende Smiley deutet eigentlich stark drauf hin, aber der gesamte Beitrag erscheint mir nicht ironisch gemeint?
Autorenteam von systemd hat geschrieben:
Yes, it is written systemd, not system D or System D, or even SystemD. And it isn't system d either. Why? Because it's a system daemon, and under Unix/Linux those are in lower case, and get suffixed with a lower case d. And since systemd manages the system, it's called systemd. It's that simple.

TomL

Re: Systemd, ein Rant

Beitrag von TomL » 11.07.2018 10:36:20

tobo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 17:08:44
Das ist doch mal ein richtig schönes Beispiel dafür, warum man mit populistischen Meinungsmaschinen keinen Dialog führen kann: Das Ergebnis der Diskussion steht bereits vor deren Beginn fest und schwingt in jeder Argumentation mit.
Das gefährliche ist nicht eine falsche Meinung zu haben und sich diese Meinung mit vielleicht falsch verstandenen Argumenten selber zu erklären... das ist menschlich und passiert vermutlich den meisten irgenwann im Leben. Mit unwiderlegbarer Gegenargumentation und treffenden Fakten kann man dem leicht begegnen.
Aber genau darauf verzichtest du . Du legst gar keinen Wert darauf mich von der Falschheit meiner Meinung zu überzeugen, sondern versuchst schlichtweg den Kontrahenten zu dämonisieren und zu diffamieren. Und genau das ist das Werkzeug der populistischen Hetzer, Meinungsunterdrücker und Demagogen. Ich habe meine Meinung wenigstens versucht zu erklären.... Du willst das nur unterdrücken.... und genau das ist das wahre gefährliche ...hier im gleicher Hinsicht wie draussen in der Politik.
Aber ich sag dir was... Du hast gewonnen... ich werde versuchen, auf jegliche Äußerungen künftig zu verzichten.

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 » 11.07.2018 10:47:40

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 18:25:14
Nein, einmal pro Sekunde zu prüfen, kostet so gut wie gar nichts, verlängert aber den Bootvorgang unnötig. Wenn du 30 Dienste startest, die jeweils 1-2 Sekunden warten, bis ihre Randbedingungen erfüllt sind, dann hast du unter Umständen 30-60s zusätzliche Bootzeit.
Sprechen wir jetzt hier noch von Netzwerk, oder allgemein von Randbedingungen?

Code: Alles auswählen

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

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Systemd, ein Rant

Beitrag von MSfree » 11.07.2018 11:23:04

Lord_Carlos hat geschrieben: ↑ zum Beitrag ↑
11.07.2018 10:47:40
Sprechen wir jetzt hier noch von Netzwerk, oder allgemein von Randbedingungen?
Es macht aus meiner Sicht keinen Unterschied.

Eine Netzwerkbedingung ist nur ein Spezialfall, auf den allgemeinen Fall trifft das in gleichem Ausmaß zu.

Es wäre also ziemlich dumm, Diensten das Warten auf Bedingungen beizubringen, weil das eben auch dazu führt, daß unnötig lange gewartet wird.

whiizy
Beiträge: 662
Registriert: 23.07.2011 22:09:37

Re: Systemd, ein Rant

Beitrag von whiizy » 11.07.2018 15:49:50

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 14:55:27
Bisher konnte ich Startproblem allerdings in der Regel mit systemd-analyze lösen, zumindest, wenn die Krücke noch bis zum Login kam.
Allgemein gefragt:
Gibt es eigentlich "systemische" Gründe dafür, daß wartende start oder stop jobs nicht besser darüber Auskunft geben, worauf sie genau warten?

Müsste der systemd denn nicht jederzeit unerfüllte Abhängigkeiten erkennen und somit auch sofort mitteilen können?

Oder sind es vielleicht nur administrative Gründe, daß "zu technisch klingende Fehlermeldungen" von unbedarften Usern ferngehalten werden sollen und erst über spezielle System-Tools transparent werden?

Benutzeravatar
novalix
Beiträge: 1908
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: Systemd, ein Rant

Beitrag von novalix » 11.07.2018 17:29:40

Meillo hat geschrieben: ↑ zum Beitrag ↑
10.07.2018 20:30:33
Ich finde, man merkt deutlich, dass noch nicht die Zeit gekommen ist, um nuechtern, sachlich, neutral und wissenschaftlich dieses Thema neu zu bewerten. So werde ich wohl noch ein paar Jahre darauf warten muessen.
Wie so häufig, ist es eben nicht ganz so einfach zu bestimmen, was genau das Thema ist.
Lass mich mal folgende Perspektive aufreissen:

Hier im df sind ja viele Veteranen des Gebrauchs von Rechenmaschinen versammelt. Da wurde schon so manches Bit verschoben in diesem oder jenem Register. Wir verstehen zu unterschiedlichen Graden in unterschiedlichen Teilbereichen der Verarbeitungslogik unserer elektronischen Geräte zu folgen.
Wir erwarten und finden einen Ablauf linearer Prozesse in Geflechten kombinatorischer Logik; kompliziert aber letztlich stringent ableitbar.
So gesehen müsste jede Frage zum Ablauf eines programmatischen Prozesses eine eindeutige Antwort hervorbringen.
So ist es aber nicht.
Das liegt weniger an den Prozessen als an den Fragen, die *wir* an sie stellen.

Fragen sind Ausdruck von Erwartungshaltungen, von Horizonten, in denen die individuelle Erfahrungswelt und interpretative Muster kondensiert sind.
Wenn wir mit Rechenmaschinen hantieren, nehmen wir eine implizite Grundhaltung ein, dass je mehr wir uns damit beschäftigen, je genauer wir die Abläufe verstehen und kontrollieren können, desto optimaler wird das Funktionieren dieser Geräte sein.
Wir glauben an den Fortschritt.

Auf der anderen Seite gibt es da ein strukturelles Problem: Komplexität.
Kann heutzutage noch eine Einzelperson sämtliche konstruktiven Details einer handelsüblichen CPU aus dem Ärmel schütteln?
Und das wäre ja nur die materiell-technische Ebene, komplexitätsmäßig voll old school.
Wir sind auf dem Weg in die Artificial Intelligence im großen Stil, sagen alle.
Manche sagen, dass solche komplexen elektronischen Prozesse nur dann sinnvoll und nachvollziehbar gesteuert und beobachtet werden können, wenn wir artificial ignorance walten lassen.

Das Unix-Erbe ist in diesem Zusammenhang interessant, nicht nur aber auch weil die Radikalinskis von Devuan sich explizit darauf berufen. Norbert Tretkowski hatte da mal mit einem ordentlichen Schuss Selbstironie "In Low-Tech we trust" auf die Freiheitsflagge geschrieben.
Im Kern sehe ich im KISS-Prinzip eine Technik der geordneten Komplexitätsreduktion, die in einer Hinsicht bisher ungeschlagen ist: in ihrer eigenen Einfachheit. Die Technik der Komplexitätsreduktion ist einfach zu verstehen und somit auch anzuwenden und durchzuhalten. Das ist nicht zuletzt das Feature, das Richard Gabriel in seiner "Worse is better"-Analogie herausarbeitet.
Beispiel aus der Praxis:
Die Unix-Rechteverwaltung ist vergleichsweise tumb. Windows hat seit seinem NT-Kernel ein viel weitreichenderes, fein granulierbares Konzept eingeführt. Da ist nur kaum eine Sau mit klar gekommen. Das ging so weit, dass die erste ernsthafte Anwendung dieser Rechteverwaltung in einem End-User-Betriebssystem (Vista) mehr als zehn(!) Jahre später zu einem totalen Fiasko wurde. Dabei war das System doch "besser"[*].
Aber eben nicht besser handhabbar.
Allerdings gibt es in der Unix-Welt noch dieses seltsame Biest: die Lernkurve.
Die Technik der Komplexitätsreduktion an sich ist einfach und das kostet. Um mit solchen Systemen sinnvoll zu arbeiten, müssen grundlegende aber auch spezielle Techniken und Fertigkeiten erworben werden, die häufig genug wenig spektakulär anmuten, vielmehr wie dröge Fleißarbeit daher kommen. Das ist nicht jedermanns Sache. Der Webshop läuft nicht? "Mach mal chmod -R 777 auf das ganze Verzeichnis." "Supi, jetzt funzts. Super Lösung. Merk ich mir."

Ist das die Frage? Entweder Weiter-immer-weiter oder Schuster-bleib-bei-deinen-Leisten?

C++ ist besser[2] als C. Deswegen hat der C-Programmierer kein Argument außer Neid.
Nächste Frage: Warum ist nicht jede Software, die seit Erscheinen von C++ geschrieben wurde, in C++ geschrieben worden?
Ist das noch logisch?

Ja, was denn jetzt? Wie umgehen mit der Frage:
Ist systemd gut?

Ich sage: Keiner - auch niemand nicht - ist mittelfristig in der Lage den Überblick zu behalten (to keep things at grip). Das macht uns schwer zu schaffen. So schwer, dass manche ihr Heil in Dogmen suchen. Andere in Sarkasmus. So richtig schlimm wird es, wenn beides sich paart. Und wie es Beelzebub nun einmal eingerichtet hat, sind die eigenen Vorurteile just im Bereich des blinden Flecks, von dem wir nur indirektes Wissen erlangen können. Wir sehen ihn nicht.

Wahrscheinlich haben wir hier ein Problem unter Menschen, weniger ein Problem von Funktionsweisen bestimmter Maschinen. Wobei zweiteres möglicherweise zu einem gewissen Anteil prinzipiell nur eine Projektionsfläche des ersteren darstellt. Wir bleiben für Sie diesbezüglich am Ball.

Ich sprach von "Dogmen" und "Vorurteilen". Das sind schlimme Wörter für allzumenschliches. Immerhin beruht die Funktionsweise unserer Wahrnehmung auf dem "Ausklammern von Zweifeln" und dem Herausarbeiten prägnanter Merkmale einer Gestalt, die wir dann als Dinge und Sachverhalte in unserer Erfahrungswelt gruppieren und sprachlich verarbeiten können. Das Vor-Urteil hat einen wesentlichen funktionalen Stellenwert in der Art und Weise, wie wir der Welt begegnen. In diesem Sinne kann keine Perspektive - auch nicht die wissenschaftliche - für sich in Anspruch nehmen, frei und umfassend zu sein. Dann wäre sie auch keine Perspektive.
Alan Kaye sagte einmal: "A point of view is worth 80 IQ-Points". Da könnte was dran sein. Noch besser schneidet der Proband natürlich ab, wenn er die Perspektive nicht nur einnehmen, sondern ihre Möglichkeiten und Grenzen sich selbst und anderen gegenüber auch darlegen kann.
Ab da wird es dann wieder kompliziert.

[1] Selinux war augenscheinlich von der NT-Rechteverwaltung inspiriert.

[2] .. ist doppelt plus gut .. scnr
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

Antworten