Ώστε θέλεις να αντικαταστήσεις το init system; Κάνε το σωστά

Δεδομένο; Ωραία γράψτε για αυτό τεκμηριωμένα.

Έχει γραφεί μια σειρά άρθρων στο παρόν forum γιατί ο αθρογράφος τους θεωρεί καλό το systemd. Στα σχόλια προσδοκάται ο γόνιμος αντίλογος. Αν οι πολέμιοι του systemd θεωρούν καλή πρακτική να γράφονται για να απαντήσουν και στη συνέχεια να διαγράφονται (μαζί με την απάντηση τους) αυτό είναι κρίμα για τις διανομές που εκπροσωπούνται από αυτά τα inits.

Σε αυτό με βρίσκεις απόλυτα σύμφωνο.

1 «Μου αρέσει»

σε αυτό το τελευταίο κρύβεται η σκέψη μου… το τελευταίο που θα έπρεπε να μας απασχολεί είναι τι system init έχουμε… Μάλλον θα έπρεπε να μας απασχολεί αλλά όχι να γίνεται ο κακός χαμός…

3 «Μου αρέσει»

Μην πει κανείς για νεκρανάσταση γιατί ο ίδιος ο OP μόλις το διαφήμισε στο reddit, και αφού προτρέπει στην ανάγνωση λογικά προτρέπει και στην περισσότερη συζήτηση του και ανάδειξη του θέματος/συζήτησης.

Αγγίζουμε την γελοιότητα νομίζω, για να διαβάσεις για το s6 θα πας στο φόρουμ του gentoo; Σαν να λες για να συζητήσεις τη φιλοσοφία του Heidegger θα πας στην πλατεία στο μοναστηράκι.

systemd is much, much worse than the other ones, and a real danger for the future of GNU/Linux. I have a special page dedicated to it.

skarnet.org: a word about systemd (για την κριτική αυτή δεν έχει προκύψει αντίλογος, η λίστα συζήτησης είναι ανοικτή, κανένα μήνυμα δεν διαγράφεται, το archive της λίστας (υπάρχουν κι άλλες) αναπαράγεται από 2 συστήματα τα οποία μπορεί να κάνει κάποιος search. Οι συμμετέχοντες στις λίστες αυτές είναι κορυφές στο αντικείμενο τους, και κάποιων τα βιβλία υπάρχουν στα ράφια των κορυφαίων sys-admin όλης της γης.

Το runit πέτυχε 100% τους στόχους του, έκλεισε με 0 bugs! Ο δημιουργός του είναι λαλίστατος στις λίστες του s6. Ti είναι αυτό που προσπάθησε να κάνει αλλά δεν το προσπάθησε αρκετά; Το ότι η απλότητα του το κάνει νάνο μπροστά στο s6 είναι επειδή ήταν βασικός στόχος του η απλότητα. To sinit είναι ακόμα μικρότερο, αλλά όπως είπε κι ο Αϊνστάϊν, οι μηχανολόγοι προσπαθούν να κάνουν ένα σύστημα όσο πιο απλό γίνεται, αλλά όχι περισσότερο από όσο πρέπει. Το sinit έχει περάσει αυτό το όριο κατά πολύ. Για ένα i386 είναι 100000 φορές πιο λειτουργικό από το καλύτερο σύστημα με systemd.

Το cups είναι ένα τρομερά περίπλοκο σύστημα της ΗΡ κομμένο και ραμμένο στα μέτρα της ΙΒΜ-systemd, αλλά δουλεύει και χωρίς αυτό, προσθέτοντας φόρτο εργασίας στους devs της κάθε διανομής, με τις ιδιοτροπίες του. Δουλεύει άψογα με τους εκτυπωτές βασικά της ίδιας εταιρείας, αλλά το τι τραβάνε οι μη-PS εκτυπωτές άλλων μαγαζιών για να λειτουργήσουν με HP-Cups αυτοί το ξέρουν.

Αν δεν υπάρχει απόκριση με τις εντολές :

% lpr --help
% man lpr

να το ψάξεις, πατάτα εγκατάσταση έχεις κάνει

Τον κακό χαμό τον προκαλούν κάποιοι που προσπαθούν να πάρουν ένα και μόνο σύστημα, που προάγεται από 99% τις εμπορευματικές φυλλάδες για αρχάριους χρήστες, δηλαδή γύρω στο 30% των χρηστων linux/unix/BSD … και ψευδώς να το παρουσιάσουν ως ΤΟ ΛΙΝΟΥΞ!

Τι κέρδος έχουν αυτοί που προάγουν ψέματα;

Εξαιρετικά, αν λοιπόν έχω ένα i386 έχω λόγους να το επιλέξω. Αλλά μισό λεπτό ή υποστήριξη για τον i386 έχει αφαιρεθεί απο τον πυρήνα του Linux εδώ και μια δεκαετία.

Ας μιλήσουμε τώρα τώρα για ένα άλλο init σύστημα, που παίζει μια χαρά σε i386 το MSDOS. Αυτό είχε δύο αρχεία το AUTOEXEC.BAT και το CONFIG.SYS. Δεν ήταν τέλειο; Δεν είχε 0 bugs; Κάποιες διανομές εμπνευσμένες απο το IRIX είχαν κάτι παρόμοιο, όπως για παράδειγμα το SuSe μέχρι την έκδοση 7, τουλάχιστον που το παρακολουθούσα. Εμπρός πίσω

θα απαντούσα, αλλά τα λεφτά που παίρνω απο τους Ιλουμινάτι, δεν τα δηλώνω στην εφορία, όποτε καταλαβαίνεις…

Σε αυτές τις συζητήσεις είναι σαν να προσπαθείς να μιλήσεις με κάποιον που υποστηρίζει την σφαιρικότητα της γης. Δεν θα βγάλεις άκρη. Απλά θα χάσεις τον χρόνο σου. Οπότε ας δεχτούμε πως μας πληρώνουν και ας το λήξουμε εδώ. Δεν μπορείς να κερδίσεις ότι και να πείς

Αν κάποιος ήθελε να υποστηρίξει κάποιο εναλλακτικό init και να έχούν κάποιο βάρος τα λεγόμενα του, θα έλεγε το Χ είναι καλύτερο για το Ψ για το Δ από την πλευρά του Z. Όπου Χ,Ψ κάποια init, Δ κάποια εργασία (ενδεικτικά hardening κάποιας υπηρεσίας, γράψιμο κάποιου λογισμικού που θέλουμε να τρέχει σε όσο το δυνατόν περισσότερες διανομές, πακετάρισμα των υπηρεσιών μιας διανομής, ενεργοποίηση μιας υπηρεσίας κλπ) και Z κάποια οντότητα (όπως για παράδειγμα ένας διαχειριστής συστημάτων, ένας προγραμματιστής, κάποιος που μετέχει στην ανάπτυξη μιας διανομής, ένας τελικός χρήστης κλπ…)

Για παράδειγμα μπορείτε να κάνετε κάτι σαν αυτό σε κάποιο άλλο init και να το παρουσιάσετε (αν μας αφήσουν και δεν το σβήσουμε, οι Ιλουμινάτι που μας πληρώνουν)

Δεν βλέπω να κάνετε κάτι τέτοιο, δεν νομίζω δε πως μπορείτε να το κάνετε. Από τα γραπτά σας και από αυτά που γράφετε για το lpr είναι εμφανές σε όποιον γνωρίζει κάποια βασικά πως δεν έχετε ιδέα τι είναι και τι κάνει ενας print server και ποια είναι η χρήση του. Όπως επίσης δεν έχετε ιδέα τι είναι και τι κάνει ένα init συστημα (σε όσους δεν έχουν i386) ή ένας sound server. Αλλά θα πρέπει να παραδεχτώ πως μια χαρά δούλευε σε ένα i386. Θα μπορούσα να έγραφα περισσότερα αλλά θα σας κούραζα και δεν θα το ήθελα, πραγματικά. Άλλωστε δεν θα είχε και κανένα απολύτως νόημα.

image

Κερδάμε αδέλφια !! 147 χρήστες από τους κάπου 2000 χρήστες που χρησιμοποιούν το Linux παγκοσμίως, θέλουν το runit. Τσάμπα οι μισθός μας, ελπίζω κάτι άλλο να βρεθεί και να μην χάσουμε το μεροκάματο. Θα αιτηθώ μεταφοράς στο τμήμα με τα τσιπάκια και το 5G. Δυστυχώς φίλοι μου χωρίς το μπαγίοκο να πέφτει θα το κλείσουμε το μαγαζί. Αντίο και ευχαριστώ για τα ψάρια.

Τελευταία νέα:

  • Άνθρωποι που δεν αντιλαμβάνονται πόσο τρομερά πολύπλοκη είναι η σημερινή τεχνολογία των υπολογιστών, πιστεύουν ότι ένα λογισμικό επιπέδου hello world (και αυτό 0 bugs έχει και είναι και feature complete άμα λάχει) μπορεί να είναι καλή λύση για θεμελιώδες λογισμικό ενός υπολογιστή.

  • Εκλαμβάνουν ως «κριτική» -που μάλιστα χρήζει και αντιλόγου- τις προσωπικές απόψεις ενός «πουθενά» προγραμματιστή (αυτό ακριβώς είναι ο Bercot, μη γελιόσαστε) που δεν περιέχουν καμία σοβαρή αναφορά σε τεχνικά σημεία αλλά αναπαράγουν παρωχημένα εν έτει 2021 τσιτάτα για «καθεδρικούς» και «παζάρια», παραβλέποντας ότι ο ίδιος ο γράφοντας χρησιμοποιεί διαφορετικούς και αυθαίρετους ορισμούς, αφού παραδέχεται ότι ούτε το δικό του λογισμικό είναι «παζάρι» (γιατί μπορεί ο κύριος Eric S. Raymond να είναι αντιπαθής σε κάποιους φανατικούς αλλά δε διστάζουν να χρησιμοποιήσουν τα γραφόμενά του, δίνοντας σε αυτά τα νοήματα που τους βολεύουν).

  • Νομίζουν ότι αντιλήψεις για την ανάπτυξη της τεχνολογίας των υπολογιστών που είχαν κάποια σχετική εφαρμογή στα '70s-'80s, όταν το λογισμικό και οι αντίστοιχες ανάγκες ήταν χαοτικά πιο απλά από όσο σήμερα, μπορούν να συνεχίζουν να εφαρμόζονται απροβλημάτιστα 4 δεκαετίες αργότερα, καθώς και ότι πεποιθήσεις όπως το «The single, overarching problem with systemd is that it attempts, in every possible way, to do more instead of less» μπορούν να εκληφθούν ως βάσιμα επιχειρήματα χωρίς γέλια.

  • Δεν έχουν ενημερωθεί ότι η αρχιτεκτονική i386 έπαψε να αναπτύσσεται πριν από 14 χρόνια αλλά εξακολουθούν να πιστεύουν ότι μπορούν να κάνουν σοβαρή συζήτηση με τα σημερινά δεδομένα.

  • Παραθέτουν στατιστικά της πλάκας από μια ιστοσελίδα που αναφέρει επί λέξει ότι τα στατιστικά της δεν έχουν καμία εγκυρότητα.

  • Πιστεύουν ότι χιλιάδες διαφορετικοί προγραμματιστές ανά τον κόσμο -πλην όσων (πάντα ελάχιστων) συμφωνούν με τη δική τους στρεβλή αντίληψη περί τεχνολογίας- με έργο και συνεισφορά σε όλο αυτό που ονομάζεται «ΕΛ/ΛΑΚ» απείρως μεγαλύτερα και σπουδαιότερα από του Bercot, δεν έχουν κρίση, ικανότητα και εμπειρία αλλά είναι όλοι τους ανεξαιρέτως έμμισθα τσιράκια εταιρειών / αδαείς / ανίκανοι και αποδέχτηκαν «ξαφνικά» (άλλο αν αναπτύσσεται 11 ολόκληρα χρόνια) το «προβληματικό» / «ανασφαλές» / ό,τι μας συμφέρει κι ας μην ισχύει λογισμικό που ονομάζεται «systemd», αδυνατώντας όλοι αυτοί να δουν το «τεχνικά αρτιότερο» οποιοδήποτε άλλο λογισμικό.

  • Δε μπορούν να ζήσουν αν δεν εισβάλουν ως άλλοι Ιεχωβάδες σε διάφορους διαδικτυακούς τόπους για να διακυρήξουν τη μία και μοναδική αλήθεια του θεόσταλτου λογισμικού που αντιτίθεται στην τεχνολογία του Σατανά.

  • Δεν ενδιαφέρονται όχι μόνο να ενημερωθούν σφαιρικά για ένα θέμα αλλά ούτε καν διαβάζουν με προσοχή τις απαντήσεις των συνομιλητών τους στον υποτιθέμενο «διάλογο» που λένε ότι θέλουν να κάνουν.

Tροφή για σκέψη:

2 «Μου αρέσει»

Ας κάνουμε μια απλή σύγκριση ανάμεσα σε δυο σελίδες:

Είναι το κείμενο που ανακοινώνει το project systemd. Για να το τυπώσεις και να το διαβάσεις θέλεις 15 σελίδες νεκρά δέντρα. Θα βρεις μέσα μια τεχνική ανάλυση της πρότασης, μια μελέτη το τι κάνουν άλλα συστήματα, μια ιεράρχηση στόχων καθώς και μια εξήγηση των λόγων γιατι επιλέχθηκε μια λύση έναντι της άλλης.

Ας δούμε στην συνέχεια την τεκμηριωμένη απάντηση που θεωρητικά δόθηκε

καλώ τον οποιοδήποτε να ελέγξει το επίπεδο της δήθεν ανάλυσης.

Επίσης ενδιαφέρων είναι να δει κάποιος την αντιμετώπιση που είχε το πρώτο κείμενο. Θα βρεθεί εδώ

Ενδιαφέρον βρίσκω πως η όποια κριτική είναι Ad Homminem απέναντι στον προγραμματιστή και το εντελώς άσχετο pulse audio.

Μέρος δεύτερον : Υπάρχει σύνδεση με ακροδεξιά και ναζισμό;

Επίσης ενδιαφέρουσα είναι η σύνδεση του non-systemd με το alt-right κίνημα και κατά συνέπεια με τον ανορθολογισμό . Παραθέτω 4 tweets του Pottering

So, there appears to be a free software project called “suckless”. As I understand it’s a group of people who don’t like systemd very much. Which is totally fine. What is a bit questionable though is that they keep spamming me with unsolicited invites to their confs, but I guess that’s their kind of humour, and I can certainly tune my spam filter to match this kind of spam, too. What totally isn’t fine though, is that these mails originate from a host called “wolfsschanze” (νεκρός σύνδεσμος)), which appears to be the laptop a certain Laslo Hunhold works from (their conf organizer?). Don’t they understand that adopting such a form of Nazi symbolism just makes it easier to discount their work? (BTW, just to mention this in this context since it fits into the milieu: this kind of of stuff gets posted onto the Devuan mailing lists: (νεκρός σύνδεσμος) The message has since been deleted from the Devuan archives (aren’t those people usually against any form of “censorship”?), but the Internet Archive doesn’t forget: σύνδεσμος

The “wolfsschanze” thing is exactly those http://suckless.org people.

Τα συγκεκριμένα tweets μπορούν να βρεθούν ακολουθώντας το tweet που παρέθεσε ο @anon54176929.

Επόμενη στάση wikipedia

Προσέξτε το σήμα, τι μου θυμίζει τι; Η σύνδεση με τον νεοναζισμό δεν πέρασε στο άρθρα άλλα αν πάμε στο Talk θα βρούμε κάποια ενδιαφέροντα στοιχεία. Στο reddit κόσμος αναφέρει πως οι συναντήσεις τους μοιάζουν με αυτές που έκανε στα βουνά μια τοπική εγκληματική οργάνωση

[center]Πηγή: https://suckless.org/conferences/2017/[/center]

Γιατί αν θέλεις να αλλάξεις την γραμματοσειρά ή το χρώμα του τερματικού; Τι ποιο φιλικό απο το να πειράξεις τον κώδικα και να το κάνεις compile. Σοβαρά δεν κάνω πλάκα έτσι λένε πως πρέπει να το κάνεις :laughing: :laughing: :laughing:

Και μιας και είμαστε στο wikipedia ας δούμε τι είναι αυτό το wolfsschanze

Το πρώτο στρατηγείο του Hitler; Είναι δυνατόν Βίρνα; Μάλλον σύμπτωση θα είναι :sweat_smile:

Αν ένα λογισμικό είναι GPL θα το κρίνουμε πρώτα από αυτό καθώς και για την τεχνική του αρτιότητα. Δεν ήθελα να τεθεί στην συζήτηση κάτι τέτοιο, (όπως επέλεξα και δεν το ανέφερα σε στην συζήτηση εδώ για το suckless υπάρχει πάντα η άγνοια), αλλά αν κάποιος το παίζει επαναστάτης και κατηγορεί τους υπόλοιπους σαν ξεπουλημένους που τα παίρνουν από τις πολυεθνικές, ας είναι τουλάχιστον ειλικρινής with what side are you on boy, what side are you on ? όπως θα ρώταγε ο Pete Seeger.

Η άρνηση αποδοχής του μοντέρνου κόσμου, η στροφή στο ένδοξο παρελθόν, η αρχαιολατρία και ο ανορθολογισμός τι να θυμίζουν άραγε τι;

Για το αν είναι άσχετα τα παραπάνω ή ακόμα και αποπροσανατολιστικά, κρίνετε μόνοι σας, αλλά διαβάστε μια ψύχραιμη και τεκμηριωμένη κριτική (not) (μάλλον από το ίδιο άτομο) στο Reddit εδώ. Κάπου και η ανοχή έχει τα όρια της.

θα περίμενα από τον @anon54176929 να παραθέσει το άρθρο Οι τηλευαγγελιστές του Linux στο YouTube, ένας από αυτούς τους κυρίους από τους ποιο φανατικούς “φίλους” του systemd, που συχνά περνάει γραμμή, χρησιμοποιεί γλώσσα στυλ και σύμβολα της αμερικάνικης ακροδεξιάς, ορατά εμφανή σε όποιον ξέρει να τα εντοπίσει. Και αυτό σύμπτωση θα είναι :grin:

1 «Μου αρέσει»

Τώρα αλήθεια υποστηρίζετε οτι οποιος είναι εναντια στο systemd είναι ακροδεξιός ή καταλαβαίνω λάθος; Αλλιώς πως κολλάνε οι αναφορές αυτές; Σας έχασα…

Ακριβώς όσο πουλημένος είναι στις 5 πολυεθνικές και “προάγει και αναπαράγει τις διαφημίσεις της ΙΒΜ”, αν έχει αντίθετη γνώμη. Αν κάποιος ατεκμηρίωτα λέει τα παραπάνω, ε τότε ας αποδεχτεί και τις τεκμηριωμένες παραπάνω αναφορές. Παραπέμπω εδώ.

Αλλά ναι δυστυχώς, γεγονός είναι πως ένα σημαντικό ποσοστό ατόμων. που συνήθως δεν έχουν και τις τεχνικές γνώσεις, εναντιώνετε και συχνά δίνει και την γραμμή, έχει δεσμούς με Αμερικάνικά και Γερμανικά alt-right “κινήματα”.

Και μιας και ζούμε στις εποχές που ζούμε, ρητά και κατηγορηματικά ΟΧΙ. Στο systemd όπως και κάθε άλλο πρόγραμμα, μπορεί καθενός να μην του αρέσει, να μην το θέλει στο σύστημα του ή να προσπαθεί να φτιάξει κάτι καλύτερο (μακάρι, αν και χλωμό το βλέπω).

1 «Μου αρέσει»

A ok, γιατί τρόμαξα για λίγο :grin:

1 «Μου αρέσει»

Ο Garret εξέφρασε απλά μια απορία (το λες και educated guess) την οποία βρήκα ενδιαφέρουσα και την παρέθεσα. Ούτε εκείνος, ούτε εγώ, ούτε ο @Asfodelus κάναμε λόγο για «όποιον είναι» ανεξαιρέτως. Απλά, είναι βέβαιο ότι θα υπάρχουν επικαλυπτόμενα τμήματα σε αυτό το υποθετικό διάγραμμα Venn.

Ίσως θα έπρεπε να έπρεπε να αναλυθούν οι λόγοι που κάνουν κάποιους ανθρώπους όχι απλά να μην προτιμούν το οποιοδήποτε λογισμικό ή να διαφωνούν με αυτό αλλά να είναι ενάντια, στον βαθμό που παρατηρούμε με το systemd και όχι μόνο. Είμαι βέβαιος ότι τόσο εσύ όσο και κάθε νοήμων άνθρωπος μπορεί να διακρίνει γνωστές ιδιότητες που εμφανίζει κάθε είδους συνωμοσιολόγος και αυτές οι ιδιότητες απαντώνται με μεγάλη συχνότητα σε οπαδούς της alt-right και συναφών «ιδεών».

Ωραία, ευχαριστώ για τις απαντήσεις.

Να κάνω και μια (αστοιχείωτη μάλλον, λόγω της ασχετοσύνης μου) ερώτηση που μου ήρθε τώρα σχετικά με το systemd και τα πιο μοντέρνα init γενικότερα.
Όπως καταλαβαίνω έχουν γίνει μεγαλύτερα και «διαχειρίζοντε» πολλά πράματα. Υπάρχει η δυνατότητα, για κάποιον που ξέρει κάποια πράματα (δηλαδή όχι εγώ) να αφαιρέσει κάτι που δε χρησιμοποιεί και άρα του περισεύει, για να τα ελαφρύνει;

Κατ αρχήν είναι μύθος πως το systemd είναι βαρύ. Η καρδία του είναι το init αυτό καθ αυτό, το σύστημα καταγραφής και το dbus/udev. Χωρίς αυτά δεν γίνετε. Το udev είναι ουσιαστικά μια επέκταση του πυρήνα. Χωρίς αυτό ο υπολογιστής σου θα είναι στατικός, δεν θα μπορείς να συνδέσεις μια συσκευή USB για παράδειγμα. Δεν υπάρχει σήμερα καμία διανομή που να μην το χρησιμοποιεί. Το dbus είναι απαραίτητο για την επικοινωνία των εφαρμογών μεταξύ τους και με το λειτουργικό. Πάλι δεν θα βρεις καμία διανομή χωρίς μια υλοποίηση του να τρέχει. Το σύστημα καταγραφής είναι πολύ σημαντικό για να το έχεις ανεξάρτητο.

Όλα τα άλλα είναι ανεξάρτητα κομμάτια και κάθε διανομή επιλέγει τι θα χρησιμοποιήσει. Δεν θέλεις systemd boot αλλά προτιμάς το grub; Κανένα πρόβλημα. Δεν θέλεις το systemd-network; Χρησιμοποίησε κάτι άλλο. Όπως επέλεξε τι θέλεις να κάνει DNS κλπ. Αλλά αυτές οι λειτουργίες θα υπάρχουν έτσι και αλλιώς, με τον ένα ή τον άλλο τρόπο, άρα δεν κερδίζεις κάτι.

Θα σου φανεί παράξενο, αλλά αν θέλεις να έχεις ελαφρύ σύστημα, και πιο διαχειρίσιμο ο καλύτερος τρόπος είναι να χρησιμοποιείς μόνο το systemd. Κερδίζεις μόνο σε πολυπλοκότητα αν έχεις το δίκτυο να το δουλεύει ο Network Manager που να κάνει από πίσω την χρήσh του systemd (ή μήπως κάτι διαφορετικό) ή να έχεις επιπλέον το syslog να κάνει καταγραφές. Καθαρές τέτοιες διανομές θα βρεις λίγες καθώς οι περισσότερες έχουν επίπεδα συμβατότητας με το παρελθόν, και καλά κάνουν.

Το μεγάλο πλεονέκτημα του systemd είναι ακριβώς το ότι έχεις ένα ενιαίο σύστημα να κάνει τις βρομοδουλειές που πρέπει να γίνουν, και που μπορεί να αλλάξει ταυτόχρονα, και όχι να περιμένει το ένα υποσύστημα κάποιο άλλο μήνες ή χρόνια να αλλάξει για να βελτιώσει κάτι.

Κάτι ξέρουν στο BSD που έχουν τα πάντα σε ένα αποθετήριο και εξελίσσουν το λειτουργικό όλο μαζί. Το μοντέλο αυτό έχει και τα μειονεκτήματα του, αλλά ήταν πάντα ο παραδοσιακός τρόπος εξέλιξης του UNIX. Αυτοί που μιλάνε για μονολιθικότητα και UNIX philosophy, απλά αγνοούν την ιστορία. Και για κάποιο παράξενο λόγο δεν κατηγόρησε ποτέ κάποιος το BSD σαν μονολιθικό επειδή ο κώδικας του είναι σε ένα αποθετήριο.

Επίσης δεν θα βρεις επιλογή συστήματος εκκίνησης ή των κάτω στρωμάτων του λειτουργικού σε κανένα UNIX ή BSD. Είναι μύθος πως στο UNIX είχες πάντα επιλογές. Αν κάποιος έχει διαφορετική άποψη, ας αναφέρει κάποιο ιστορικό παράδειγμα.

Δες για παράδειγμα το DragonFlyBSD περιέχει στο ίδιο αποθετήριο ακόμα και τα παιγνίδια

1 «Μου αρέσει»

Ήθελα να κάνω ένα διάλειμμα από τη σαπίλα που διαβάζω στις ειδήσεις καθημερινά, λέω ωραίο φαίνεται αυτό το θέμα, θα βουτήξω. Τι το 'θελα… :stuck_out_tongue:

Ευχαριστώ που με μορφώνετε για πολλοστή φορά.

2 «Μου αρέσει»

@Asfodelus δεν πολυκατάλαβα την απάντηση σου ως προς το εξής: Επειδή είχα ένα συγκεκριμένο παράδειγμα στο μυαλό μου όταν έκανα την παραπάνω ερώτηση, ας πούμε οτι έχεις ενα rpi zero που το προορίζεις για κάποια πολύ συγκεκριμένη δουλειά και θέλεις να απαλλαγείς από πράματα που δεν χρειάζεσαι, για να το βελτιστοποιήσεις ως προς το σκοπό που το προορίζεις. Το init (στο rpi zero είναι το πιο συνηθισμένο το systemd) μπορεί να σε βοηθήσει σε αυτό; Βασικά αυτό ρωτάω… Αν υπάρχει και κανας οδηγός για dummies ακόμη καλλίτερα να έχουμε και κανα λινκ…

Αυτή είναι μια από τις κλασσικές περιπτώσεις που μπορεί να έχει νόημα κάποιο εναλλακτικό σύστημα εκκίνησης σαν το runit. Μπορείς επίσης αν τρέχει μόνο ένα συγκεκριμένο πράγμα, να μην έχεις καν σύστημα εκκίνησης. Το init να είναι ένα απλό αρχείο shell. Μπορείς να το τραβήξεις ακόμα περισσότερο στα άκρα και να μην έχεις ξεχωριστό λειτουργικό αλλά κάποιο unikernel.

Για παράδειγμα μια εργασία που είχα κάνει πριν λίγα χρόνια. Ένας web server χωρίς χωριστό λειτουργικό με μέγεθος λίγα KB. Μου πήρε λίγες ώρες δουλειάς σαν demo. Δεν ξέρω αν καταφέρανε να το μεταφέρουν σε αρχιτεκτονική Arch, τότε δεν έπαιζε σε raspberry.

Τώρα στην πράξη ακόμα και ένα rpi zero είναι ένας πολύ ισχυρός υπολογιστής με αρκετή μνήμη. Η Cannonical προωθεί για παράδειγμα τα snaps για εφαρμογές IoT (εκεί είναι τα λεφτά). Ίσως να μην αξίζει το κόπο.

Ναι κάπου είχα δει πρόσφατα αυτό για τα unikernels, αλλά δεν το κατέχω. Πολύ ενδιαφέρον είναι πάντως αυτά τα unikernels.
Το rpi zero είναι μια χαρά ισχυρός υπολογιστάκος, για μερικά πράματα, αλλά για άλλα καλό είναι να του αφαιρείς κάτι από φορτίο.

Σαν web browser, ναι. Θέμα ίσως είναι πως εναλλακτικές web engines είναι ουσιαστικά δύο. Blink και WebKit. Όλοι οι σύγχρονοι (HTML5 και JS) web browsers βασίζονται σε αυτές τις δύο. Για τα υπόλοιπα οι περιορισμένες εναλλακτικές δεν είναι πρόβλημα ή ίσως και θετικό (για SMB όλοι συνεισφέρουν στο samba ενώ για printing όλοι συνεισφέρουν στο cups) , αλλά εδώ βασικά δίνεται στους devs αυτών των τριών (ελεγχόμενων από εταιρείες) η δυνατότητα να καθορίσουν τα standards του web.

Παρουσίαση διαφορετική από αυτή τη σύντομη περιγραφή που έχει στη σελίδα του γιατί;

Τι άλλο χρειάζεται πέρα από αυτό;

Γιατί είναι απαραίτητο ένα λογισμικό που δουλεύει χωρίς σημαντικά προβλήματα να έχει συνεχή updates; Σε κάθε περίπτωση υπάρχει updated fork στο Void όπου και χρησιμοποιείται. Νομίζω και άλλες διανομές χρησιμοποιούν το fork του Void.

Τι εννοείς πως είχε νόημα σε περιβάλλον τερματικού; Γιατί μια υπηρεσία στο background να απαιτεί αλλαγή στη λειτουργία της είτε αυτό είναι τερματικό, είτε γραφικό περιβάλλον. Επίσης αναρίθμητοι servers τρέχουν με systemd και συνεπώς χωρίς γραφικό περιβάλλον.

Χρειάζομαι κάποιο specialized εργαλείο για τα ανοίξω αυτά είτε σε τερματικό, είτε γραφικό περιβάλλον;

Δουλεύει εφόσον χρησιμοποιείς ένα specialized εργαλείο που διαβάζει και επεξεργάζεται το binary log για σένα.

Γιατί το “if you build it, it will come” δεν ισχύει, γιατί κανένας δεν είναι ούτε άσφαλτος ούτε παντογνώστης, και σε ε´να συνέδριο θα έρθεις σε επικοινωνία με αυτούς που το λειτουργούν, θα πάρεις ιδέες και ανάδραση, για να το γνωρίσει ο κόσμος για χιλιάδες λόγους.

Επίσης μια “σύντομη περιγραφή” αρκεί; Φαντάσου να γράφει κάτι σαν αυτό “Ο κινητήρας Βάνκελ είναι ένας κινητήρας εσωτερικής καύσης. Είναι καλύτερος από ένα κινητήρα Όττο”. Αν έφτιαχνες τόσο εύκολα ένα αυτοκίνητο, όσο μια διανομή Linux θα σου ήταν ικανοποιητική αυτή η περιγραφή, έστω με 7-8 παραγράφους περισσότερο; Δεν θα ήθελες να μάθεις πολλά περισσότερα;

Δεκάδες άλλα πράγματα, οι υπολογιστές δεν είναι στατικοί και δεν ζούμε στην δεκαετία το 70. Για να εκμεταλλευτείς πλήρως τις δυνατότητες του πυρήνα. Γιατί ο υπολογιστής στο σπίτι σου απαιτεί άλλα πράγματα απο ένα υπολογιστή σε ένα Datacenter, Δες τα άρθρα που έχουν γραφτεί εδώ για να δεις άλλες ανάγκες.

Γιατί ο πυρήνας συνεχώς εξελίσσετε, γιατί έχει νέα API. Γιατί κάτι που δουλεύουν 10 άνθρωποι αν πας να το εφαρμόσεις σε επαγγελματική χρήση θα προκύψουν εκατοντάδες πράγματα που δεν έχει σκεφτεί και εκατοντάδες προβλήματα. Αν το πιστεύεις αυτό γιατί δεν τρέχεις μια διανομή δεκαετίας;

Η φιλοσοφία των μικρών εργαλείων φίλτρων έχει νόημα σε περιβάλλον τερματικού. Ποιο είναι το ισοδύναμο των εντολών grep, awk, sed σε γραφικό περιβάλλον;

Expect the output of every program to become the input to another, as yet unknown, program.

Πως έχει σχέση αυτό σε γραφικό περιβάλλον; Και τι σχέση έχει με ένα δαίμονα που εξ ορισμού δεν είναι συνδεμένος με ένα tty; Που κολλάει το όποιο init σε μια τέτοια περίπτωση;

Έχεις δοκιμάσει να κάνεις grep, awk, sed σε αρχεία XML ή JSON; Η φιλοσοφία των κλασσικών εργαλείων τερματικού έχει πάει περίπατο. Θέλεις κάτι σαν το jq.

Και τα απλά αρχεία καταγραφής σε κείμενο θέλουν ένα ειδικό εργαλείο για να τα δεις. Έχει το όνομα cat, αλλά για να βρεις μια χρήσιμη πληροφορία θέλεις πάλι ειδικά εργαλεία όπως το awk ή το grep

Για να μην κακολογούμε άδικα, η σελίδα του runit δεν λέει πως είναι καλύτερο αλλά ότι μπορεί να αντικαταστήσει το sysvinit. Στη συνέχεια εξηγεί τη λειτουργία του και έχει μια σελίδα με οφέλη. Συνεπώς κάποιος που έχει χρησιμοποιήσει το sysvinit μπορεί να κάνει τη σύγκριση μόνος του.

Αν και συμφωνώ ότι δεν είναι ο καλύτερος τρόπος αυτός να κάνει κάποιος διαφήμιση κάτι που έχει φτιάξει.

To userspace API του πυρήνα γενικά είναι αρκετά σταθερό ως προς το backwards compatibility και δεν θα απορούσα αν δεν είχε κάποια αλλαγή που να το έσπαγε για πάνω από δεκαετία. Επίσης το runit είναι POSIX compatible, όχι Linux compatible, γι´ αυτό και τρέχει σε όλα τα Unix/Unix-like λειτουργικά.

Λόγο ασφάλειας. Παρόλα αυτά αρκετά προγράμματα που χρησιμοποιώ δεν έχουν updates εδώ και χρόνια.

Κι όπως έγραψα:

Το θέμα είναι πως καλός ή κακώς αρκετοί servers, προσβάσιμοι με tty, τρέχουν systemd.

Ναι;

Όχι; Ένας οποιοδήποτε text editor κάνει τη δουλειά.

Ναι, μπορεί τα κλασσικά εργαλεία και αυτός να μην είναι τόσο χρήσιμα όσο το jq αλλά παραμένει κείμενο και κάποιος χωρίς το jq μπορεί εν τέλη να δει/επεξεργαστεί εάν υπάρξει ανάγκη.

Επίσης μιας που αναφέρθηκε το jq είναι ένα εργαλείο που ακολουθεί ακριβώς τη Unix φιλοσοφία.

“Text is the universal interface.” Αυτά είναι εργαλεία που δουλεύουν σε αυτό το interface. Συνεπώς δεν είναι “ειδικά” αλλά “γενικά” εργαλεία που εφαρμόζονται όπου το output είναι κείμενο (το bullet 2). Το JSON (και XML) βασικά μπορεί να θεωρηθεί ως εναλλακτικό interface που βασίζεται σε text.

Μα οτιδήποτε άλλο είναι καλύτερο απο το sysvinit. H πλάκα είναι πως πολλοί από όσους αντίδραση για την αντίδραση αντιτίθενται στο systemd προτιμούν το sysvinit :sweat_smile: :sweat_smile:

Η βασική αρχή του Linus είναι “don’t break the user space” κάτι το οποίο σε γενικές γραμμές το καταφέρνει. Αλλά παράλληλα με τα παλιά API προσθέτει καινούργια και καλύτερα. Δεν θα πρέπει να τους γίνει χρήση; Τζάμπα τα φτιάχνουνε οι άνθρωποι;

Επίσης, αν κάποιο init τρέχει και σε άλλα λειτουργικά, επειδή δεν κάνει την καλύτερη χρήση του πυρήνα, ή δεν χρησιμοποιεί τα χαρακτηριστικά ασφαλείας που έχει, εγώ σαν χρήστης Linux τι κερδίζω; Το BSD έχει τον δικό του πυρήνα και δεν θα με χάλαγε, θα ήθελα μάλιστα αν τρέχω BSD να τρέχω κάποιο init και εργαλεία που χρησιμοποιούν αυτά τα παραπάνω που σαν λειτουργικό έχει να προσφέρει.

Η οποία ποια είναι και γιατί δεν την ακολουθεί το journald ; Για να ξέρουμε γιατί ακριβώς μιλάμε η φιλοσοφία του UNIX στο τερματικό περιγράφετε σε βιβλία σαν αυτό. Μικρά εργαλεία που συνδυάζονται μεταξύ τους με σωληνώσεις. Σε αυτό το μοτίβο δεν ταιριάζει ούτε το XML ούτε το JSON ούτε όλες οι βάσεις δεδομένων. ΟΚ μπορείς να δεις ένα αρχείο XML με χρήση κάποιων ειδικών εργαλείων όπως το cat. Και λοιπόν τι; Μπορείς να μου το εξηγήσεις μέσα στα πλαίσια της “φιλοσοφίας του UNIX” που κάποιοι την έχουν κάνει καραμέλα, αν και συνήθως δεν έχουν ιδέα τι είναι;

Να καταργήσουμε τις βάσεις δεδομένων επειδή δεν ταιριάζουν με ένα βιβλίο που γράφτηκε πριν κοντά 40 χρόνια; Κάπου μπορώ ποιο εύκολα να χειριστώ και να εξάγω πληροφορία από ένα αρχείο sqlite απο ένα αρχείο CSV. Είναι τα αρχεία CSV άχρηστα; Είναι η sqlite;

Κάθε τεχνολογική επιλογή έχει τα θετικά της και τα αρνητικά της. Σε κάποιες περιπτώσεις τα αρχεία κειμένου είναι προτιμότερα από τα δυαδικά. Και η χρήση binary log έχει πλεονεκτήματα που επικρατούν των μειονεκτημάτων τους (πραγματικά ή φανταστικά). Στην χρήση τους σε περιβάλλον τερματικού όμως απλά αντικαθιστάς την πρώτη εντολή και δεν είναι αυτή ή cat και μπορείς να φιλτρλαρεις αυτό που θέλεις τις περισσότερες φορές χωρίς να είσαι αναγκασμένος να χρησιμοποιήσεις κάποιο grep. Οπότε γιατί όχι;

Για να γίνει κάτι υπηρεσία συστήματος ή δαίμονας, θα πρέπει να περάσει από μια ειδική διαδικασία πολλών βημάτων και διπλού fork ώστε να χάσει τα κληρονομικά της και να μπει στο δέντρο των διεργασιών κάτω από την διεργασία με PID 1. Για το λόγο αυτό πρέπει το κάθε init να τρέχει σε PID 1, και ας λένε κάποιοι το αντίθετο.

Αυτό λέει τουλάχιστον το POSIX (που κάποιοι το έχουν κάνει καραμέλα, χωρίς πάλι να έχουν ιδέα τι είναι). Κάποια στιγμή βγήκαν τα daemontools από κάποιον Bernstein (άλλη καραμέλα) και είπε “Μάγκες ότι κάνετε τα κάνετε λάθος. Δεν πρέπει να τα κάνεις αυτά, είστε όλοι σας λάθος, μόνο εγώ ξέρω το σωστό”. Και έπρεπε να ξαναγραφτούν τα πάντα από την αρχή, έτσι όπως σας λέω εγώ μάγκες.

Αρκετές υπηρεσίες τροποποιήσαν τον κώδικά ώστε να παίρνουν μια σημαία και να είναι συμβατά. Μια στιγμή δεν απαιτεί αυτό να τροποποιηθούν οι υπηρεσίες; Γιατί τότε οι φανατικοί του Bernstein γκρινιάζουν για το systemd και ότι πρέπει να ξαναγράψεις τις υπηρεσίες (προαιρετικά;) ; Άβυσσος ή ψυχή του ανθρώπου :laughing: Γιατί στην μια περίπτωση σωστά τα λέει ο άνθρωπος και να αλλάξουμε τον τρόπο, και στην άλλη περίπτωση να είσαι πουλημένος των πολυεθνικών; Η επιλογή πρέπει να βασίζετε σε τεχνικούς λόγους, αλλά χωρίς να παραβλέπουμε την προς τα πίσω συμβατότητα και τους ανθρωποκεντρικούς παράγοντες που ανέφερα στην πρώτη δημοσίευση.

Η προσέγγιση αυτή είχε τα καλά της, αλλά πέραν λίγων εγκαταστάσεων πήγε άπατη γιατί δεν είχε προς τα πίσω συμβατότητα. Τι έκανε λοιπόν το systemd; ¨Έκανε εφικτό αυτόν τον τρόπο, τον οποίο έχει εκμοντερνίσει, χωρίς όμως να απαιτεί να ξαναγράψεις κάθε υπηρεσία από την αρχή. Ενδιαφέρον ανάγνωσμα είναι το παρακάτω. Μα να μην καταφέρει ούτε ένα σωστά; λολ

Κατά συνέπεια η απάντηση είναι όχι. Η σωστή απάντηση είναι τρέχουν με περιβάλλον tty, αλλά δεν αλληλεπιδράς με αυτούς, μόνο το init system.

Πιθανά να μιλάς να τρέξεις μια υπηρεσία σαν εκτελέσιμο από το τερματικό. Αλλά αυτό θα το κάνεις μόνο αν θέλεις να κάνεις κάτι debugging ή αν κάνεις development (ως απλός χρήστης). Και τότε η χρήση είναι συνήθως να βλέπεις μόνο τα logs. Κατά συνέπεια η συνδεση αυτού με την “φιλοσοφία του UNIX” είναι άκυρη.

Update: Η ιστορία ενός Debian Developer

Αξίζει να διαβαστεί για να δούμε την ιστορία ενός ανθρώπου που πρόσφερε στο Debian, πως ζούσε και πόσο σημαντικά είναι τα συνέδρια. Επίσης τι κακό έκανε στο Debian αυτή η αχρείαστη κόντρα για το systemd.

O Joey Hess, δημιουργός του debconf και του debian installer, μετά απο 18 χρόνια στο debian τα παράτησε, ο λόγος; Αηδίασε με αυτούς που πολέμησαν το systemd και την φασαρία που έκαναν κάποιοι. Το debian σκέφτεται να αλλάξει την πολιτική του να μην ξαναγίνουν τα ίδια πηγή.

Διαβάστε και αυτό.