Re: Σχετικά με τις ενημερώσεις Linux kernel
Pantelis Koukousoulas
pktoss at gmail.com
Sun Aug 19 04:53:38 UTC 2012
2012/8/18 stavros daliakopoulos <stavros.daliakopoulos at gmail.com>:
> αφού το ksplice έχει άδεια gpl γιατί δεν έχει περάσει στο linux μόνιμα,
> άσχετα αν το αγόρασε η oracle?
Όταν λέμε "ksplice" εννοούμε διάφορα κομμάτια:
* Το πρώτο κομμάτι ήταν να υπάρξει η δυνατότητα να γίνει ο πυρήνας
compile με τις παραμέτρους -ffunction-sections και -fdata-sections.
Το κομμάτι αυτό προτάθηκε και έγινε merge στον πυρήνα πριν
κάποια χρόνια https://lkml.org/lkml/2008/8/24/159
* Τα low-level userspace εργαλεία: Π.χ., η εντολή που φτιάχνει
ένα "hot update" module από ένα kernel tree στο οποίο έχουμε
εφαρμόσει ένα patch. Αυτά από ότι θυμάμαι είχαν επίσης γίνει
release στην αρχή ως GPL με τη μορφή ενός public github
repository.
Από τη στιγμή που η Oracle αγόρασε την εταιρία Ksplice Inc,
η επίσημη ενημέρωση λέει ότι ο κώδικας αυτός "μεταφέρεται
στο oss.oracle.com". Αυτό που υπάρχει αυτή τη στιγμή στο
oss.oracle.com είναι απλά το εξής:
https://oss.oracle.com/ksplice/software/ksplice-0.9.9.1-src.tar.gz
Ούτε git repo, ούτε updates, ούτε τίποτα.
βλ. http://cormander.com/2011/07/ksplice-currently-violates-the-gpl/
Μάλλον οι δικηγόροι της Oracle δε συμφωνούν 100% με αυτή την
οπτική και κανένας δεν έχει βρεθεί να τους μηνύσει ακόμα.
Ευτυχώς υπήρχαν αρκετά git clones και έτσι σώζεται ο κώδικας
ως είχε πριν "κλείσει" ουσιαστικά:
Π.χ., https://github.com/CentOS/ksplice
Για οδηγίες ως προς το πώς χρησιμοποιούνται τα εργαλεία αυτά
βλ. π.χ.,
http://cormander.com/2011/08/how-to-use-the-ksplice-raw-utilities/
* Το "service κομμάτι" (uptrack) δηλ:
* Το κομμάτι δηλαδή της παραγωγής των binary updates
(σε κάποιες περιπτώσεις χρειάζεται manual δουλειά, δεν
είναι πάντα τόσο απλό όσο να τρέξεις ksplice-create
στο κατάλληλο tree)
* Το software του "client": uptrack-upgrade, uptrack-show
κλπ και το αντίστοιχο server κομμάτι (το οποίο βέβαια
μπορεί να ήταν απλά ένα directory προσβάσιμο από
http).
* Η διαχείριση των subscriptions κλπ.
Για το κομμάτι αυτό δε γνωρίζω πολλά πράγματα για το αν ήταν
ποτέ καν open-source, άρα αν κάποιος θέλει να αναπτύξει αντίστοιχη
υπηρεσία θα πρέπει να ξαναγράψει το σχετικό κώδικα και να έχει
και ανθρώπους που καταλαβαίνουν από data structure repairs κλπ
ώστε να επεμβαίνουν "manually" όταν τα raw utilities δε δουλεύουν
σωστά.
Οπότε, συνοψίζοντας, η κατάσταση έχει ως εξής:
* Το kernel κομμάτι είναι μέρος του kernel εδώ και 2-3 χρόνια αν θυμάμαι
καλά.
* Τα raw utilities θα μπορούσαν να είναι κομμάτι της διανομής αλλά
δεν αξίζουν τον κόπο δεδομένου ότι δεν απευθύνονται σε end users
αλλά περισσότερο σε προγραμματιστές.
* Το service κομμάτι (π.χ., ο uptrack manager και τα uptrack command
line tools) δεν είναι open-source καν, οπότε δεν μπορεί να είναι
κομμάτι κάποιας διανομής.
* Αυτή τη στιγμή νομίζω το ubuntu 10.04 και 12.04 υποστηρίζεται δωρεάν
στο uptrack, οπότε αν κάποιος εμπιστεύεται την oracle και δεν τον πειράζει
το γεγονός ότι ουσιαστικά τρέχει binary kernel κώδικα με αυτό τον τρόπο,
μπορεί να χρησιμοποιήσει τα υπάρχοντα closed-source πακέτα του client.
Αυτοί που φαίνεται να επηρρεάζονται περισσότερο αρνητικά από την
αλλαγή ιδιοκτησίας της ksplice inc είναι αυτοί που τρέχουν CentOS οι
οποίοι σκέφτονται να αναπτύξουν τη δική τους αντίστοιχη υπηρεσία
(βλ. CentOS rebootless kernel upgrades project) με βάση τον τελευταίο
ανοιχτό κώδικα για τα ksplice tools.
Ελπίζω αυτό να ξεκαθαρίζει κάπως την κατάσταση,
Παντελής
More information about the Ubuntu-gr
mailing list