Γιατί ένας Slackware user να χρησιμοποιήσει BSD;
Giannis Karampas
jonny_b at hellug.gr
Mon May 7 02:11:10 EEST 2007
Giorgos Keramidas wrote:
> On 2007-05-06 19:10, Giannis Karampas <jonny_b at hellug.gr> wrote:
>
>> Giorgos Keramidas wrote:
>>
>>>> <flamebait>
>>>> <bofh>Και πολύ καλά σού 'κανε</bofh>
>>>> Άκου εκεί Slackware. Γιατί να βάλεις ένα Linux που θέλει να
>>>> γίνει BSD, και να μη βάλεις το Αληθινό BSD(TM) μια και καλή;
>>>> </flamebait>
>>>>
>> Apo tin stigmi pou yparxoun toses dianomes ekei eksw to ti dianomi
>> doulevei o kathenas einai ypokeimeniko, kathws kathe mia exei ta
>> pronomia tis kai ta ellatwmata tis opote dialegeis ti sou tairiazei.
>>
>
> Σωστός. Το αρχικό post ήταν επίτηδες μαρκαρισμένο με <flamebait> tags,
> γιατί δεν είναι 100% «σοβαρό» :)
>
>
>> Me tin idia skepsi giati na mi valw ubuntu pantou kai na ta vrw ola
>> etoima? I mipws debian,fedora i kai na gyrisw pisw sta windows stin
>> teliki? To slackware me volevei, sto slackware prospathw na mathw
>> perissotera gia to linux kovontas kai ravontas, to slackware tha
>> doulepsw. Den exw vrei akoma logo na kanw migration kapou allou opote
>> giati na valw BSD?....
>>
>
> Πέρα από την πλάκα του αρχικού post, δεν είναι πολύ κακό αυτό που
> γράφεις παραπάνω:
>
> To slackware me volevei, sto slackware prospathw na mathw
> perissotera gia to linux kovontas kai ravontas
>
> [-- πιο-σοβαρή-απάντηση από την προηγούμενη --]
>
> Το Slackware ήταν, την περίοδο 1994-1999 περίπου, και το δικό μου
> αγαπημένο distribution. Είναι πολύ σημαντικό να μπορείς να στήσεις ένα
> μινιμαλιστικό Linux, όπως ένα Slackware με ελάχιστα πακέτα από το βασικό
> σετ. Είναι επίσης πολύ σημαντικό να μπορείς να μεταγλωττίσεις και να
> «χτίσεις» εσύ το δικό σου στυλ από Linux.
>
> Το Slackware είχε, τότε που το χρησιμοποιούσα κι εγώ αφειδώς, το πιο
> απλό σύστημα από rc scripts και δεν ήταν λίγες οι φορές που με φίλους
> κάναμε τα εντελώς δικά μας startup scripts, κομμένα και ραμμένα 100% στα
> δικά μας μέτρα και σταθμά.
>
> Η εμπειρία έχει δείξει, επίσης, ότι αυτοί που χρησιμοποιούν το Slackware
> ακριβώς επειδή τους αρέσει αυτή η ευελιξία και η έλλειψη bloatware,
> είναι πολύ εύκολο να μάθουν να χρησιμοποιούν κάποιο BSD σύστημα. Οι
> βασικές αρχές του Slackware είναι πολύ κοντά στον τρόπο που οργανώνεται
> και στήνεται κι ένα BSD σύστημα σε πολλά πράγματα.
>
> Οι λόγοι για τους οποίους αξίζει κάποιος Slackware fan να ασχοληθεί με
> το BSD είναι διπλής φύσεως: τεχνικοί και κοινωνικοί.
>
> Στους τεχνικούς λόγους περιέχονται τουλάχιστον και οι εξής:
>
> * Αυτό που κάνει ο Volkerding με το Slackware είναι ακριβώς ότι κάνουν
> τα BSD συστήματα εδώ καιπάνω από 25 χρόνια.
>
> Η συσσωρευμένη εμπειρία που κρύβεται πίσω και κάτω από ένα BSD είναι
> το αμάλγαμα από δοκιμές και σχεδιασμό που συνεχίζεται πρακτικά χωρίς
> διακοπή αυτά τα 25 χρόνια, από μερικούς από τους πιο έμπειρους κι
> έξυπνους προγραμματιστές σε όλο τον κόσμο.
>
> Αυτό που κάνει ένα άτομο για το Slackware, λέγεται 'release
> engineering'. Στο FreeBSD, για παράδειγμα, η ομάδα που ασχολείται
> με το release engineering είναι απλώς άλλη μία από τις δεκάδες
> task-based ομάδες στις οποίες συμμετέχουν τόσο core FreeBSD
> developers όσο και εξωτερικοί συνεργάτες.
>
> * Ο πυρήνας λογισμικού γύρω από τον οποίο χτίζεται ένα ολοκληρωμένο
> BSD είναι πιο κεντρικά ελεγχόμενος.
>
> Υπάρχουν φοβερές διαφορές μεταξύ των διαφόρων διανομών Linux, και το
> Slackware είναι απλά μία από αυτές. Δεν είναι εύκολο πάντα να βρει
> κανείς ένα κεντρικό σημείο με το πλήρες source tree ενός 'Linux',
> γιατί απλά δεν υπάρχει το Ένα Μοναδικό(TM) Linux. Στο BSD όλος ο
> πηγαίος κώδικας και όλα τα εργαλεία για την παραγωγή ενός πλήρους,
> λειτουργικού συστήματος υπάρχουν σε ένα πολύ συγκεκριμένο σημείο.
> Δεν υπάρχει σε ένα BSD σύστημα ο πανικός του να ψάχνει κανείς ποιο
> package repository χρειάζεται να βάλει σήμερα στο randomly chosen
> ανά distribution `/etc/whatever/package-mirrors/tade.conf'. Όλες οι
> εκδόσεις ενός FreeBSD release είναι π.χ. reproducible 100% από
> οποιονδήποτε έχει όλο το source tree.
>
> * Σχεδιασμός του πηγαίου κώδικα.
>
> Υπάρχουν πολύ σαφή, συγκεκριμένα και εκτενώς τεκμηριωμένα standards
> τα οποία πρέπει να ακολουθεί ο πηγαίος κώδικας για να είναι «αρκετά
> καλής ποιότητας» για να γίνει μέρος ενός BSD. Αυτό προφανώς μπορεί
> να ενδιαφέρει μόνο όσους χρήστες είναι προγραμματιστές, αλλά στο BSD
> μας αρέσει να αντιμετωπίζουμε όλους τους χρήστες μας σαν δυνητικούς
> contributors πηγαίου κώδικα, γιατί σήμερα μπορεί να μην έχουν την
> εμπειρία, τη διάθεση ή το χρόνο να το κάνουν, αλλά μεθαύριο μπορεί
> να τα έχουν όλα αυτά.
>
> * Σχεδιασμός του εγκατεστημένου συστήματος
>
> Στο Linux υπάρχουν file system standards, αλλά δεν είναι ούτε τόσο
> αυστηρά, ούτε εφαρμόζονται το ίδιο από όλους τους δημιουργούς
> διανομών. Έτσι, για παράδειγμα, στο Debian υπάρχουν config files
> στο /etc/network με ονόματα όπως 'interfaces' και 'options', αλλά
> στο Redhat είναι σε άλλο σημείο τα network interface options ή
> ακολουθούν διαφορετικό format. Στο SuSE υπάρχει ένα τρίτος τρόπος
> να ρυθμίσει κανείς network interfaces, και στο Arch Linux ένας
> τέταρτος.
>
> Η γνώση που αποκτά κανείς δουλεύοντας σε μια διανομή Linux δεν είναι
> αυτόματα «μεταφέρσιμη» σε ένα άλλο Linux distribution.
>
> Το εντελώς ανάποδο ισχύει σε ένα BSD. Τα network interfaces
> ρυθμίζονται σε όλα τα FreeBSD στο ίδιο σημείο, από τότε που
> το FreeBSD ήταν στην έκδοση 2.X πριν από μια δεκαετία και
> βάλε. Η γνώση που αποκτά κανείς δουλεύοντας σε ένα BSD
> σήμερα, θα είναι χρήσιμη και σε δέκα χρόνια. Είναι ήδη, και
> σήμερα, χρήσιμη ακόμα και σε άλλα BSD.
>
> Τα αρχεία ρυθμίσεων σε κάποια Linux μετακινούνται χαρούμενα από το
> ένα μέρος σε ένα άλλο. Σε ένα BSD αυτό δε γίνεται ΠΟΤΕ, ή αν γίνει
> υπάρχει standard τρόπος για backwards compatible ρυθμίσεις.
>
> * Binary συμβατότητα μεταξύ διαφορετικών εκδόσεων.
>
> Πάρα πολλές φορές, σε ένα Linux σύστημα χρειάζεται να
> μεταγλωττιστούν ξανά δεκάδες προγράμματα γιατί π.χ. άλλαξε ένα
> header στον πυρήνα, μεταξύ έκδοσης X.Y.Z και X.Y.(Z+1) του πυρήνα.
> Αυτό δε θα γίνει ΠΟΤΕ σε ένα STABLE branch ενός BSD, ή αν γίνει κατά
> λάθος θα διορθωθεί αυτόματα.
>
> Η εγγύηση σταθερότητας των Application Programming Interfaces και
> Application Binary Interfaces που παρέχει το BSD κατά την πλήρη
> διάρκεια ζωής ενός STABLE branch είναι κάτι μοναδικό στον κόσμο του
> free software. Μπορεί να συγκριθεί μόνο με το binary compatibility
> του Solaris, το οποίο μόλις πρόσφατα έγινε μέρος της free software &
> open source βάσης λογισμικού του κόσμου.
>
> * Η τεκμηρίωση των BSD είναι `first class citizen'
>
> Στα BSD συστήματα δεν υπάρχει περίπτωση να τρέξει κανείς εντολές
> όπως `man package-manager' και να δει χαζά μηνύματα του στυλ ``This
> program needs a manpage''. Αν κάτι δεν έχει τεκμηρίωση, μπορεί
> ακόμα και να γίνει backout και να βγει από το επίσημο source tree,
> με αίτημα να γραφτεί πιο καλή και πλήρης τεκμηρίωση.
>
> Αυτό μπορεί να φαίνεται ασήμαντο στην αρχή, αλλά είναι πολύ χρήσιμο
> και δείχνει την σοβαρότητα με την οποία αντιμετωπίζει η κοινότητα
> του BSD τους χρήστες της. Είναι απαράδεκτο να βρεθεί κάποιος σε
> σημείο να έχει μόνο ένα SSH connection ανοιχτό σε ένα remote server,
> σε κάποιο colocation service στην άλλη άκρη της γης, και να μη
> μπορεί να αναβαθμίσει το σύστημα επειδή πρέπει να βρει κάπως ποιές
> επιλογές δέχεται το version 1.2.3-beta19-jfk της εντολής
> pkg-foobar-map-whatever ή κάτι αντίστοιχο.
>
> * Chaos vs. Order
>
> Αυτό που κάνει το BSD να ξεχωρίζει είναι ότι υπάρχουν τα εξής βασικά
> πράγματα:
>
> - Ένα σαφώς καθορισμένο ``βασικό σύστημα''
> - Το Ports Tree από thirdparty software
> - Μια σταθερή πολιτική και οργάνωση Release Engineering
> - Πολύ καλή τεκμηρίωση και υποστήριξη για upgrades
>
> Ο τρόπος με τον οποίο χτίζεται ένα release είναι πάρα πολύ καλά
> ορισμένος, ελεγχόμενος και διαφανής. Αυτό που κάνει το BSD είναι να
> διανέμει ένα πλήρως λειτουργικό, ολοκληρωμένο UNIX(R) ως βασικό
> σύστημα, και γύρω από αυτό «χτίζει» ένα σύστημα οργάνωσης,
> εγκατάστασης, διανομής και αναβάθμισης thirdparty λογισμικού. Αυτό
> που κάνουν τα περισσότερα Linux είναι να παίρνουν περίπου «τυχαία»
> κομμάτια και να προσπαθούν να δώσουν την ψευδαίσθηση ενός
> «συστήματος» με πολλή προσπάθεια συναρμολόγησης ενός απέραντου
> puzzle.
>
> Για ορισμένες δουλειές (όπως π.χ. τον πειραματισμό με τον τρόπο που
> δουλεύει ένα UNIX(R) σύστημα), το puzzle παίζει μια χαρά. Για
> άλλες, πιο σοβαρές δουλειές, το puzzle καταλήγει να είναι ένα σοβαρό
> bottleneck, και ένα απέραντο ναρκοπέδιο από πράγματα που μπορεί να
> πάνε στραβά. Στη δεύτερη περίπτωση το BSD δείχνει με λαμπερό τρόπο
> την αξία του.
>
> Επειδή ακριβώς ανέφερες ότι «δεν έχεις χρόνο», αξίζει πραγματικά να
> αφιερώσεις ΛΙΓΟ χρόνο για να δεις πως δουλεύει σε καθημερινή βάση ένα
> BSD. Όλος ο σχεδιασμός και η υλοποίηση ενός BSD έχει φτιαχτεί με
> γνώμονα την ευκολία με την οποία μπορεί ένα σύστημα να στηθεί έτσι που η
> εγκατάσταση και οι αναβαθμίσεις να είναι όσο πιο ελεύθερες γίνεται από
> ηλιθιότητες του στυλ «έκανα update το kernel μου και ξαφνικά δεν παίζει
> το USB mouse, επειδή τώρα πια ο πυρήνας έχει απαίτηση να αλλάξω από
> devfs σε udev» και αντίστοιχα πράγματα. Η ελάχιστη επένδυση σε χρόνο
> που απαιτεί ένα BSD για να το μάθεις, θα αποδώσει τα μέγιστα και πολύ
> γρήγορα, αν πραγματικά σε ενδιαφέρει να μη σπαταλάς χρόνο σε ανούσιες
> τετριμμένες λεπτομέρειες της εγκατάστασης και ρύθμισης του συστήματος,
> και της ευκολίας με την οποία μπορείς να υποστηρίξεις και να
> αναβαθμίσεις αυτές τις ρυθμίσεις.
>
> Στους κοινωνικούς λόγους συμπεριλαμβάνονται οι παρακάτω:
>
> * Καλή οργάνωση σε task-based ομάδες
>
> Η πλήρης ομάδα ανάπτυξης π.χ. του FreeBSD είναι οργανωμένη σε πιο
> μικρές, task-based ομάδες, που είναι ανοιχτές όσο πιο πολύ γίνεται
> στο «κοινό». Υπάρχουν τουλάχιστον οι εξής ομάδες:
>
> core - κεντρική όμαδα οργάνωσης του FreeBSD
> re - release engineers
> bugmeister - bug database admins
> portmgr - ports tree overseers
> doceng - documentation + www tree overseers
> accounts - υπεύθυνοι λογαριασμών @ freebsd.org
> admins - ομάδα διαχείρισης συστημάτων @ freebsd.org
> webmaster - ομάδα διαχείρισης του web site
> secteam - ομάδα διαχείρισης security προβλήματων
> press - υπεύθυνοι για press releases & δημοσιότητα
> marketing - ομάδα προώθησης και διαφήμισης
> soc - ομάδα διαχείρισης Google SoC projects
>
> Υπάρχουν και πολλές ακόμα ομάδες προσανατολισμένες σε ένα ρόλο, έτσι
> που να μπορεί οποιοδήποτε μέλος της ομάδας ανάπτυξης του FreeBSD να
> είναι μέλος, να συνεισφέρει, να κατευθύνει ή να δίνει ιδέες σε ένα ή
> περισσότερα πράγματα που αφορούν το γενικότερο «FreeBSD Project».
>
> Ο ρόλος τον οποίο καλύπτει ο Volkerding για το Slackware είναι
> κυρίως αυτός του release engineer, και λίγο αυτός που ανήκει στην
> ομάδα secteam. Στο FreeBSD έχουμε μια πιο καθολική κάλυψη για τα
> θέματα που αφορούν τόσο την δομή, την οργάνωση και λειτουργία της
> ίδιας της ομάδας ανάπτυξης, όσο και την εικόνα μας προς τον έξω
> κόσμο -- είτε αυτή αφορά μια δημοσίευση στον τύπο, είτε την
> αντιμετώπιση ενός critical security προβλήματος, το οποίο μπορεί να
> επηρεάσει εκατοντάδες, ή ακόμα και χιλιάδες, κόσμο.
>
> Οποιοσδήποτε μπορεί να είναι μέλος μιας ομάδας, αρκεί να πιστεύει
> και αυτός και η ομάδα ότι η συνεισφορά του σε έργο θα είναι
> σημαντική είτε γι αυτόν (π.χ. ως τρόπος ανάπτυξης των 'δεξιοτήτων'
> του), είτε για την ίδια την ομάδα. Εγώ π.χ. ως τώρα, από το 1999
> και μετά έχω γίνει κατά καιρούς μέλος στις ομάδες: bugmeister (μια
> περίοδο ήμουν μόνος μου μόνος μου στην ομάδα bugmeister), και core
> (ακόμα είμαι σε αυτήν).
>
> * Η ομάδα των BSD είναι από τις πιο δημοφιλείς και πετυχημένες
> merit-based ομάδες ανάπτυξης λογισμικού
>
> Για να μπορεί κάποιος να επηρεάσει την εξέλιξη ενός BSD, δε
> χρειάζεται να έχει «μπάρμπα στην Κορώνη». Αν είναι διατεθειμένος να
> αφιερώσει τον χρόνο και μπορεί να προσφέρει στην εξέλιξη, ανάπτυξη
> και βελτίωση του BSD της προτίμησής του, είναι τεκμηριωμένος και
> πλήρως «ανοιχτός στο κοινό» ο τρόπος με τον οποίο μπορεί να
> δημοσιοποιήσει τις αλλαγές του.
>
> Η εκτίμηση της κοινότητας των BSD για τα άτομα που δείχνουν ότι
> _έχουν_ την θέληση και τη διάθεση να προσφέρουν είναι άμεση, εμφανής
> και καθολική. Κανείς από την ομάδα π.χ. του FreeBSD δε μπορεί να
> ασκήσει βέτο σε μια αλλαγή επειδή «δεν του αρέσει η φάτσα του τάδε».
> Αν οι αλλαγές έχουν το σωστό τεχνικό υπόβαθρο, είναι σχεδιασμένες με
> τρόπο που να μην δημιουργούν τεχνικά ή κοινωνικά προβλήματα στην
> ομάδα, τότε είναι σίγουρο ότι θα έχουν τουλάχιστον μια σοβαρή
> ευκαιρία για εκτενές review και σοβαρή πιθανότητα για approval.
>
> * Η ομάδα ανάπτυξης και οι χρήστες δεν είναι ελιτιστές μπάσταρδοι
>
> Όσο και αν φαίνεται περίεργο αυτό, ειδικά σε συνδυασμό με τα ακραία
> μερικές φορές μηνύματα που στέλνω εγώ στην l-g-u, η ομάδα ανάπτυξης
> των BSD δεν είναι ελιτιστές μπάσταρδοι. Δεν μας ενδιαφέρει να
> «αποδείξουμε» σε κανέναν ότι «είμαστε οι καλύτεροι». Απλά μας
> ενδιαφέρει ιδιαίτερα η «ποιότητα» κι όχι τόσο πολύ η «ποσότητα» σε
> ότι φτιάχνουμε, και αυτό μερικές φορές παρεξηγείται από εξωτερικούς
> παρατηρητές ως μια μορφή ελιτισμού (κυρίως όταν κάποιος δεν κάνει
> την ελάχιστη προσπάθεια που απαιτείται για να «μάθει τις νόρμες και
> τον τρόπο λειτουργίας της ομάδας», με αποτέλεσμα να απορρίπτονται
> σωρηδόν οι αλλαγές τις οποίες προτείνει).
>
> Είναι σημαντικό, ακόμα κι αν είναι απλός χρήστης ενός συστήματος
> κανείς, να νιώθει ότι «είναι μέρος της ομάδας». Με αυτό τον τρόπο
> πρέπει να αντιμετωπίζονται οι χρήστες, και αυτός είναι ο τρόπος τον
> οποίο κάνει ειλικρινείς προσπάθειες όλη η κοινότητα του FreeBSD να
> καθιερώσει. Οι λίστες ηλεκτρονικού ταχυδρομείου του FreeBSD
> π.χ. φημίζονται για τον σοβαρό, σταθερό και φιλικό τρόπο με τον
> οποίο αντιμετωπίζουν ακόμα και τις πιο απλές ερωτήσεις.
>
> Για όλους αυτούς τους λόγους, κι ακριβώς επειδή ο σχεδιασμός του
> Slackware (από τεχνικής άποψης τουλάχιστον) μοιάζει αρκετά με αυτόν του
> FreeBSD base system, εγώ προτείνω σε όποιον του αρέσει το Slackware να
> ρίξει μια ματιά και στο FreeBSD. Η κοινότητα του FreeBSD είναι δεκτική
> σε νέα μέλη, κι αν αυτά τα μέλη έχουν περάσει ήδη από το μονοπάτι του
> Slackware, μας αρέσει ιδιαίτερα και εκτιμάμε πολύ το γεγονός ότι ο
> τελικός χρήστης είναι ήδη εξοικειωμένος με τον τρόπο που δουλεύει ένα
> UNIX(R) σύστημα. Το Slackware είναι ιδανικό σαν 'pool' από
> εκπαιδευόμενους μελλοντικούς χρήστες και ενεργά μέλη της ομάδας
> ανάπτυξης του FreeBSD.
>
> Οπότε, όποιος Slackware fan θέλει να δει και ένα «διαφορετικό», πιθανόν
> πιο ορθολογικά σχεδιασμένο σύστημα, με ομάδα ανάπτυξης που αριθμεί
> εκατοντάδες μέλη (κι όχι έναν Patrick), είναι σαφώς καλοδεχούμενος στο
> FreeBSD ;-)
>
> - Γιώργος
>
>
>
Koitakse na deis, to keimeno sou einai wraio kai isws na aksizei na
asxolithw me BSD kai isws na mou arese kai kalytera apo to slack.
Par'ola afta, afti ti stigmi pou milame exw ena systima eksairetika
aksiopisto, taxytato kai sta metra mou. Ti kalytero logo loipon mporei
kapoios na mou dwsei gia na to allaksw? Afou exei o,ti xreiazomai....
Kai to gegonos oti sto slackware project einai enas patrick enw sto BSD
posa atoma pou palevoun edw kai tosa xronia den mou leei kati. Kai i
microsoft exei polla xronia stin plati tis alla afto den simainei oti
afto pou dinei mporw EGW na to apokalesw leitourgiko systima me oli ti
simasia tis leksis(kati pou ypostiriza prin kan mathw oti yparxei kai to
linux)
Afto pou thelw na pw einai oti to "kalo" leitourgiko systima einai to
"diko mou" leitourgiko to opoio to epeleksa egw gia na kalipsei tis
dikes mou anages. Tis kalyptei? Special! Edw tha meinw mexri na vgei mia
ekdosi slackware pou na min mporei pleon na antiproswpefsei tis anages
mou. To BSD einai to diko sou leitourgiko,antiproswpevei tis dikes sou
anages kai o,ti kai na sou pw egw den prokeitai na se peisw na to
allakseis giati ekei tin vrikes.
Opote kataligoume pali sto idio symperasma: Yparxoun polla leitourgika?
To zitima einai ypokeimeniko. Egw pantreftika ton piguino me tin pipa
kai esu ton diavolako tou BSD..... Mporei mia mera na antallaksoume
gomenes....(tis binary gomenes ennoeitai...)
Giannis Karampas
More information about the Linux-greek-users
mailing list