staging.inyokaproject.org

Sinn von Abhängigkeiten?

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

glasenisback

Avatar von glasenisback

Anmeldungsdatum:
20. November 2011

Beiträge: 1603

encbladexp schrieb:

Die aktuelle Roadmap von systemd sieht aus meiner Perspektive (Sysadmin…) großartig aus. Ich kann Dinge schneller Umsetzen und muss nicht 25 verschiedene Tools beachten um ein Problem zu lösen. Das ganze sogar noch Distributionsübergreifend, wenn man mal von Gentoo (systemd kein Standard) absieht.

Eben. Durch systemd fallen die ganzen kleinen "Nettigkeiten" komplett weg, welche man in Sachen Sys-V-Skripte so durchziehen musste. So kann ich ohne Probleme einen Daemon ohne irgendwelche "su -c"-Konstrukte als Nicht-Root-Benutzer laufen lassen.

Ich habe auf meinem Desktop-Rechner seit ein paar Tagen Ubuntu 15.04 laufen und ich vermisse SysV-Init und Upstart kein bisschen.

encbladexp Team-Icon

Ehemaliger
Avatar von encbladexp

Anmeldungsdatum:
16. Februar 2007

Beiträge: 17531

glasenisback schrieb:

So kann ich ohne Probleme einen Daemon ohne irgendwelche "su -c"-Konstrukte als Nicht-Root-Benutzer laufen lassen.

Und dann können wir noch ohne Hacks Dienste automatisch starten lassen. Oder wir können Dienste durch ein Socket starten lassen (Socket Activation), wir können User Sessions ordentich verwalten, Multi-Seat funktioniert endlich richtig, und natürlich sind auch Ressource Limits kein Problem mehr ohne das wir vom Distributor gelieferte Scripts modifizieren müssen.

Ja, systemd ist echt schlimm. Das größte Problem der letzten Jahre.

Doch zurück zum Thema: Abhängigkeiten für Pakete sind in der Regel sinnvoll, ist dies nicht der Fall genügt ein Ticket und der Entwickler schaut sich das an, in der Regel begründet er aber warum es eine bestimmte Abhängigkeit gibt.

mfg Stefan Betz

Cruiz Team-Icon

Avatar von Cruiz

Anmeldungsdatum:
6. März 2014

Beiträge: 5557

encbladexp, du siehst das einfach nicht richtig. Alles Neue ist von Grund auf böse, denn du musst dazulernen. Ich meine wer will das schon. Nach der Ausbildung hat man doch ausgelernt. Das muss bis zur Rente halten. 😬

V0LKER

Avatar von V0LKER

Anmeldungsdatum:
23. Februar 2014

Beiträge: 1967

encbladexp schrieb:

mfg Stefan Betz
PS: KDE ist natürlich keine Bloatware, aber ich denke du meinst was ich damit ausdrücken wollte 😉

Nun KDE gewinnt sogar durch systemd, sie benutzen logind für sich, da ihr eigenes Konzept wohl nicht so richtig läuft. Nein systemd wird sich sehr start ins System integrieren, starten, beenden, Laufwerke einbinden (fstab wird dann nicht mehr benötigt)timeserverabfrage usw. Damit ist systemd verdammt mächtig und damit gefährlich - leider. In meiner Ausbildungszeit, da gab es nur Unix, wurde mir gelehrt, ein Programm für eine Funktion. So waren die Programme übersichtlich und weniger Fehlerträchtig. Man sieht es schon heute systemd meldet seit Jahren, glaube 1,5 Jahre, div. Fehler aber beseitigt werden diese nicht, dass System läuft ja sonst. Oh man, aber gut jeder hat da seine eigenen Vorstellungen.

Ich glaube das wird hier langsam OT. Sorry.

Gruss

jug Team-Icon

Ehemalige
Avatar von jug

Anmeldungsdatum:
19. März 2007

Beiträge: 12335

V0LKER schrieb:

Nein systemd wird sich sehr start ins System integrieren, starten, beenden, Laufwerke einbinden (fstab wird dann nicht mehr benötigt)timeserverabfrage usw.

Ich sehe das Problem ehrlich gesagt nicht, abgesehen davon, dass du ein schlechtes Gefühl dabei hast. Und subjektive Eindrücke sind immer problematisch.

In meiner Ausbildungszeit, da gab es nur Unix, wurde mir gelehrt, ein Programm für eine Funktion. So waren die Programme übersichtlich und weniger Fehlerträchtig.

Dann nutze ein Unix, wenn dir das besser gefällt. Live and let live.

Ich glaube das wird hier langsam OT. Sorry.

In der Tat.

~jug

juifeng

Anmeldungsdatum:
16. April 2006

Beiträge: 159

Interessanterweise geht es ja momentan an einigen Fronten in eine andere Richtung als man es bei Linux mit den Paketverwaltungen gewohnt ist.

Snappy Ubuntu Core wurde hier schon erwähnt, gleiches gilt auch für Ubuntu auf den Handys (Ubuntu Touch, Phone, wie auch immer es jetzt heißt): Apps kommen in Form von Click Packages, die nur genau eine Abhängigkeit haben, nämlich zu einem Grundsystem/-framework, das aus einer Sammlung von Bibliotheken besteht. Werden darüber hinaus andere Bibliotheken benötigt, sind diese statisch zu linken oder in der Click Package als private Kopie einzufügen. Für Sicherheitsupdates dieser Bibliotheken ist dann der App-Autor zuständig, dafür gibt es weniger Inkompatibilitäten. Ein ähnlicher Ansatz wurde vor einigen Monaten als Vision von Lennart Poettering vorgestellt, im Zusammenhang mit stateless systems und BTRFS.

Ein hier angesprochener theoretischer Vorteil von "aufgesplitteten" Paketen, dass bei einem OpenTTD-Update das Paket mit den Grafikdaten nicht erneut heruntergeladen werden muss, kann bei üblichen Paketerstellung leider nicht so wirklich ausgespielt werden. Da alle OpenTTD-Pakete aus einem gemeinsamen Quellpaket gebaut werden, besitzen auch alle OpenTTD-Pakete die gleiche Versionsnummer. Ändert man eine Zeile Code, muss die Nummer des Quellpakets erhöht werden. Dadurch erhöht sich auch die Nummer der deb-Pakete, und es werden sowohl die ausführbaren Dateien als auch die Grafikdaten erneut heruntergeladen, auch wenn sich nur ein kleiner Teil einer ausführbaren Datei geändert hat. Ist natürlich nur ein praktisches Problem, das lösbar wäre, wenn man es wollte.

Trotzdem hat die Unterteilung den Sinn, dass auf den Mirrors Platz gespart wird. Der Kern von OpenTTD existiert in einer eigenen Version für i386, amd64, armhf, mipsel, … – das Paket mit den Grafikdateien muss jedoch nur ein Mal vorgehalten und auch nur einmal gebaut werden, da dieses für jede Architektur gleich ist.

Bei anderen Paketen findet die Unterteilung auch oft statt, damit man als Nutzer nicht alle Dateien auf der Platte haben muss. Boost (C++-Bibliothek) ist ein sehr gutes Beispiel, das war bei Arch früher immer ein riesiges Paket (ich glaube einige hundert MB), weil alle Header installiert wurden, auch wenn man als Anwender nur eine kleine .so-Datei von einigen KB gebraucht hätte. Inzwischen haben die das auch aufgesplittet, aber ich glaub nur in 2 Pakete (headers für die Entwickler und der Rest für alle Anwender oder so). In Debian/Ubuntu ist die Unterteilung aber noch deutlich feiner, so hat man wirklich fast nur die Teile auf der Platte, die das System aktuell auch braucht.

Natürlich kann man es mit der Unterteilung auch übertreiben, keine Frage.

Noch zum OT:

Damit ist systemd verdammt mächtig

cool! Endlich ist der ganze Unterbau des Systems aus einem Guss, und man muss sich nicht für jede Kleinigkeit mit andersartigen Manpages, Configs und Konzepten auseinandersetzen. Ein relativ einheitliches Bedienkonzept hat viele Vorteile. Noch besser, wenn es bald in fast allen Linux-Distros gleich gehandhabt werden kann.

und damit gefährlich

… ? Okay. Ist ja jetzt nicht so, dass systemd ein closed-source-BLOB ist. Was daran gefährlich sein soll, verstehe ich nicht. Die Entwicklung liegt in der Hand von sehr vielen Mitwirkenden vieler Distributionen, das wird nicht nur im Hinterzimmer von Red Hat entwickelt. Es ist ein Gemeinschaftsprojekt. Linux (also der Kernel) ist ja auch verdammt mächtig, aber nicht "gefährlich" für uns.

So waren die Programme übersichtlich und weniger Fehlerträchtig.

Das Zusammenwirken der Programme allerdings schon. InitScript-Debugging, CronJob-anflehen und /var/log verzweifelt durchgreppen macht nicht so viel Spaß wie die "alles aus einer Hand"-Lösung von systemd.

Man sieht es schon heute systemd meldet seit Jahren, glaube 1,5 Jahre, div. Fehler

So schlimm kann der ja wirklich nicht sein. Habe systemd bestimmt schon 1,5 Jahre am Start mit Arch (Hauptrechner aber noch mit Ubuntu 14.04 und damit upstart) – einziges Problem, das ich wahrgenommen habe: Einige Monate war die Bash completion von systemctl kaputt und Arch wollte den Patch dafür nicht einspielen. Gibt schlimmeres, und bei Ubuntu wäre das sicher nicht passiert. [Edit: Und ich erledige die Netzwerkeinrichtung über systemd-networkd, habe eigens erstellte unit files, nutze ausschließlich journalctl für das syslog, die Zeit wird per systemd-timesyncd synchronisiert, und statt per cronjob werden meine eigenen service units regelmäßig per timer unit aktiviert. Auch die Boot-Analyse-Funktionen von systemd habe ich schon genutzt. Das ist jetzt sicher nur ein Bruchteil der systemd-Funktionen, aber ich gehe davon aus, dass ich solche Dinge intensiver nutze als der durchschnittliche Ubuntu-User, und trotzdem keinerlei Probleme habe, jedenfalls viel weniger als damals mit den klassischen Werkzeugen.]

V0LKER

Avatar von V0LKER

Anmeldungsdatum:
23. Februar 2014

Beiträge: 1967

juifeng schrieb:

So schlimm kann der ja wirklich nicht sein. Habe systemd bestimmt schon 1,5 Jahre am Start mit Arch (Hauptrechner aber noch mit Ubuntu 14.04 und damit upstart) – einziges Problem, das ich wahrgenommen habe: Einige Monate war die Bash completion von systemctl kaputt und Arch wollte den Patch dafür nicht einspielen. Gibt schlimmeres, und bei Ubuntu wäre das sicher nicht passiert. [Edit: Und ich erledige die Netzwerkeinrichtung über systemd-networkd, habe eigens erstellte unit files, nutze ausschließlich journalctl für das syslog, die Zeit wird per systemd-timesyncd synchronisiert, und statt per cronjob werden meine eigenen service units regelmäßig per timer unit aktiviert. Auch die Boot-Analyse-Funktionen von systemd habe ich schon genutzt. Das ist jetzt sicher nur ein Bruchteil der systemd-Funktionen, aber ich gehe davon aus, dass ich solche Dinge intensiver nutze als der durchschnittliche Ubuntu-User, und trotzdem keinerlei Probleme habe, jedenfalls viel weniger als damals mit den klassischen Werkzeugen.]

Vergiss nicht das systemd demnächst auch das System startet, mit hilfe von Gummiboot, dann gibt es kein Grub, syslinux mehr. Aber egal...

glasenisback

Avatar von glasenisback

Anmeldungsdatum:
20. November 2011

Beiträge: 1603

V0LKER schrieb:

juifeng schrieb:

So schlimm kann der ja wirklich nicht sein. Habe systemd bestimmt schon 1,5 Jahre am Start mit Arch (Hauptrechner aber noch mit Ubuntu 14.04 und damit upstart) – einziges Problem, das ich wahrgenommen habe: Einige Monate war die Bash completion von systemctl kaputt und Arch wollte den Patch dafür nicht einspielen. Gibt schlimmeres, und bei Ubuntu wäre das sicher nicht passiert. [Edit: Und ich erledige die Netzwerkeinrichtung über systemd-networkd, habe eigens erstellte unit files, nutze ausschließlich journalctl für das syslog, die Zeit wird per systemd-timesyncd synchronisiert, und statt per cronjob werden meine eigenen service units regelmäßig per timer unit aktiviert. Auch die Boot-Analyse-Funktionen von systemd habe ich schon genutzt. Das ist jetzt sicher nur ein Bruchteil der systemd-Funktionen, aber ich gehe davon aus, dass ich solche Dinge intensiver nutze als der durchschnittliche Ubuntu-User, und trotzdem keinerlei Probleme habe, jedenfalls viel weniger als damals mit den klassischen Werkzeugen.]

Vergiss nicht das systemd demnächst auch das System startet, mit hilfe von Gummiboot, dann gibt es kein Grub, syslinux mehr. Aber egal...

Ich starte schon jetzt mein System ohne extra Bootmanager. Dank UEFI kann ich den Kernel direkt ohne Umwege booten.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Übrigens installiert PC-BSD bei den (allgemeinen) Sprachpaketen ein riesiges Paket für alle möglichen Sprachen auf einmal statt ein einzelnes Paket aus vielen. Könnte man als Verschwendung, aber auch als Übersichtlichkeit und Einfachheit des Grundsystems bezeichnen (weniger potentielle Abweichungen in Grundausstattungen, keine weiteren Abhängigkeitsdefinitionen oder Nutzerauswahlen nötig).

V_for_Vortex Team-Icon

Avatar von V_for_Vortex

Anmeldungsdatum:
1. Februar 2007

Beiträge: 12095

Benno-007 schrieb:

(weniger potentielle Abweichungen in Grundausstattungen, keine weiteren Abhängigkeitsdefinitionen oder Nutzerauswahlen nötig).

Mit dem Argument könnte Ubuntu nach der Installation auch einfach alle Pakete der Paketquellen nachinstallieren. ☺

glasenisback

Avatar von glasenisback

Anmeldungsdatum:
20. November 2011

Beiträge: 1603

V for Vortex schrieb:

Benno-007 schrieb:

(weniger potentielle Abweichungen in Grundausstattungen, keine weiteren Abhängigkeitsdefinitionen oder Nutzerauswahlen nötig).

Mit dem Argument könnte Ubuntu nach der Installation auch einfach alle Pakete der Paketquellen nachinstallieren. ☺

Mir fällt im Moment kein einziger Fall ein, bei welchem ein Paket ein Sprachpaket als zwingend notwendige Abhängigkeit betrachtet.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Na zumindest die englische Sprache als Fallback (für Übersetzungslücken) sollte schon installiert sein bzw. überhaupt eine Sprache. Ich glaube, das deutsche Sprachpaket von Firefox war es bei PC-BSD, was mir ca. 80 MB (!) nachzog. Waren vermutlich allgemeine Sprachpakete für alles mögliche (in allen Sprachen). War vielleicht einfacher für den Paketierer - auch bezüglich anderer Sprachen einfach alles in eins zu tun. Unter Unix geht man es auch gern etwas gemütlicher an und giert nicht wild nach ständigen Neuerungen wie etwa Unity oder Systemd. Warum dann nicht auch einfach ein Grundsystem, ein Sprachpaket...simple and stupid, in deed. 😉

eierl.Wollmilchsau

(Themenstarter)

Anmeldungsdatum:
24. Juli 2014

Beiträge: 144

Ein bekannter hat mir gerade wieder einmnal erklärt "wie scheiße" Linux ist, weil er für Intel SDK zwei Biblis nachinstallieren musste; unter Mac OS X sei das besser. Da versuchte ich ihm beherzt zu erkären, dass das nichts mit Linux zu tun hat, sondern einfach daran liegt, dass Intel die Bibliotheken nicht mitliefert. Hat aber eigentlich nichts mit dem Thema zu tun, da das Ding ja nicht ja nichteinmal paketiert war.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Vielleicht waren sie ja schon installiert oder installierbar, vielleicht sogar automatisch.

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55572

Benno-007 schrieb:

Ich glaube, das deutsche Sprachpaket von Firefox war es bei PC-BSD, was mir ca. 80 MB (!) nachzog. Waren vermutlich allgemeine Sprachpakete für alles mögliche (in allen Sprachen).

http://www.freshports.org/www/firefox-i18n/

Da gibt es schlichtweg keine Lokalisierung für einzelne Länder, sondern nur ein Paket. 80 MB dürfte das aber auch nicht ausmachen, sind schließlich nur die xpi-Dateien, die man auch manuell herunterladen und installieren kann.

Viel schöner ist, dass dann beim nächsten Aufruf von Firefox für jede Language-Pack-XPI ein eigenen Fenster mit "Installieren/Ablehnen"-Dialogen geöffent wird. Zumindest bei dem Original-FreeBSD-Paket.