Αναβάθμιση πυρήνα (official .rpm) – Fedora 20

ΑΥΤΗ Η ΔΗΜΟΣΙΕΥΣΗ ΕΧΕΙ ΓΙΝΕΙ ΠΑΝΩ ΑΠΟ ΕΝΑ ΧΡΟΝΟ ΠΡΙΝ!

Η αναβάθμιση του πυρήνα μιας διανομής μπορεί να λύσει (η να επιφέρει) διάφορα προβλήματα. Σκεφτείτε το καλά πριν προχωρήσετε σε κάποιον νεότερο πυρήνα.

Για ποιο λόγο θα θέλατε να αναβαθμίσετε ; Τι θα σας προσφέρει ο νεότερος πυρήνας ;

Οι νεότεροι πυρήνες συνήθως έχουν κάποια improvements/βελτιώσεις σε ότι αφορά την υποστήριξη νεότερου hardware. Η κάθε διανομή συντηρεί τους δικούς της πυρήνες οι οποίοι είναι βασισμένοι στον αρχικό πυρήνα, τον λεγόμενο και Linux vanilla kernel (mainline στο Ubuntu). Όταν ο πυρήνας τεσταριστεί και θεωρηθεί σταθερός και έτοιμος, τότε πακετάρεται και περνά στην διανομή ως αναβάθμιση. Μέσα σε αυτόν (τον Fedora kernel, να τον πούμε έτσι) συμπεριλαμβάνονται κάποιες ρυθμίσεις (βελτιώσεις) που τις διαχειρίζονται οι developers της εκάστοτε διανομής. Οπότε, μια αξιοσημείωτη διαφορά είναι ότι ο vanilla kernel δεν περιέχει μέσα τις βελτιώσεις (patches) που περιέχει ένας fedora kernel. Γι’ αυτό και δεν συνίσταται να γίνεται εγκατάσταση κάποιου vanilla kernel στην διανομή σας. Μόνον σε περιπτώσεις που θέλετε να τεστάρετε κάποιον πυρήνα ή σας το ζητήσει κάποιος developer (π.χ. αναφορά bug) , πάλι για testing σκοπούς όμως.

Αν ωστόσο θέλετε να πειραματιστείτε με τους vanilla kernels υπάρχουν κάποια διαθέσιμα αποθετήρια γι’ αυτόν το σκοπό. Δείτε το Wiki για οδηγίες.

Υπάρχει άλλος τρόπος να αναβαθμίσουμε τον πυρήνα ; Κάποιος ποιο Official να τον πούμε έτσι ;
Ναι, υπάρχει. Βασικά δεν είναι Official, με την έννοια της υποστήριξης. Αν δηλαδή αντιμετωπίσετε προβλήματα που έχουν σχέση με τον πυρήνα, δεν θα σας δοθεί βοήθεια όταν διαπιστωθεί ότι τρέχετε έναν πυρήνα που δεν βρίσκεται στα Offical αποθετήρια της εκάστοτε έκδοσης (για τώρα Fedora 20).
Γιατί τότε τον αναφέρω ως official ; Γιατί είναι Fedora kernel και όχι ο vanilla.
Κάθε διανομή διατηρεί κάποιο build-system , εκεί όπου χτίζονται τα πακέτα είτε για την current stable , είτε και για την επόμενη (development branch). Ένα από αυτά τα build systems για την Fedora είναι το koji. Εδώ μπορείτε να βρείτε ένα κάρο πακέτα που χτίζονται. Άλλα με επιτυχία , άλλα με αποτυχία. Βλέπετε το state και θα καταλάβετε.

Κάπου εκεί μέσα λοιπόν χτίζεται και ο Fedora kernel και συγκεκριμένα εδώ . Εκεί θα δείτε διάφορες εκδόσεις του πυρήνα. Σας εφιστώ την προσοχή να μην χρησιμοποιήσετε κάποιο πακέτο rc (rc1, rc2 ..κλπ). Αυτοί είναι πυρήνες release candidate και δεν θεωρούνται σταθεροί. Ψάξτε να βρείτε τον πυρήνα που θέλετε, ο οποίος θα έχει κάποιο όνομα χωρίς rc μέσα. Αν επισκεφτήκατε ήδη το build system για τον πυρήνα (εδώ) θα είδατε πακέτα για τις δυο (αυτή τη στιγμή) current stable εκδόσεις (f19, f20) καθώς και την current development branch (f21). Αυτό που θα κάνουμε εμείς εδώ είναι να εγκαταστήσουμε τον πυρήνα από την f21 στην f20. Οι εξαρτήσεις για τον πυρήνα είναι μηδαμινές έως ανύπαρκτες, οπότε δεν θα αντιμετωπίσουμε τέτοιο πρόβλημα. Δεν ισχύει το ίδιο όμως και για άλλα πακέτα (που ενδεχομένως να θέλετε), ωστόσο οι εξαρτήσεις από την μια έκδοση στην άλλη π.χ από Fedora 19 σε 20 , πάλι (συνήθως) είναι λίγες.

Εντοπίζουμε τον σταθερό πυρήνα (χωρίς rc στο όνομα), που για τώρα είναι ο kernel-3.13.0-1.fc21 . Αν πατήσετε στο Link θα δείτε κάποιες πληροφορίες για το πακέτο (π.χ State:complete). Κάντε τώρα scroll προς τα κάτω και θα δείτε τα πακέτα. Θα δείτε και το Download link δίπλα. Αναλόγως την αρχιτεκτονική του συστήματός σας, κατεβάστε τα κατάλληλα. (i686=32bit) (x86_64=64bit).
Ποια πακέτα όμως ;
Προσωπικά κατέβασα 4. Δεν χρειάζεται να τα κατεβάστε όλα για να εγκαταστήσετε τον πυρήνα.

Αυτά είναι: (για 64bit έκδοση)

kernel-3.13.0-1.fc21.x86_64.rpm
kernel-devel-3.13.0-1.fc21.x86_64.rpm
kernel-headers-3.13.0-1.fc21.x86_64.rpm
kernel-modules-extra-3.13.0-1.fc21.x86_64.rpm

Τοποθετήστε τα μέσα σε έναν φάκελο όπου δεν υπάρχουν άλλα .rpm πακέτα. Εν ανάγκη φτιάξτε έναν καινούριο. Ας υποθέσουμε ότι φτιάχνετε έναν και τον ονομάζετε new-kernel. Εκεί θα συνδεθείτε μέσω τερματικού και θα τρέξετε δυο εντολές.

cd new-kernel
sudo yum install *.rpm
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

η τελευταία είναι για τον bootloader, έτσι ώστε να αναγνωρίσει τον νέο πυρήνα και να μπορείτε να κάνετε boot από αυτόν.

Έχετε υπόψιν σας ότι η Fedora, όταν έρχεται μια αναβάθμιση πυρήνα (ή στην περίπτωσή μας εγκαθιστάτε κάποιον νεότερο) δεν διαγράφει τον παλιό. Οπότε σε κάθε περίπτωση σφάλματος, π.χ δεν λειτουργεί σωστά, δεν μπορούμε να κάνουμε boot, μπορούμε να κάνουμε μια επανεκκίνηση και να επιλέξουμε τον παλιότερο πυρήνα.

8 thoughts on “Αναβάθμιση πυρήνα (official .rpm) – Fedora 20

  1. $ uname -a
    Linux media 3.13.3-201.fc20.x86_64 #1 SMP Fri Feb 14 19:08:32 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

    10 μέρες και να τος ο 3.13 και μάλιστα στην 3.13.3 έκδοση, από τα επίσημα αποθετήρια, προσαρμοσμένος και δοκιμασμένος για F20 και θα συνεχίσει να ενημερώνεται με security updates και νέες εκδόσεις. Αν κάποιος είχε βάλει τον 3.13.0-1.fc21 θα το έπαιρνε το update ή θα μπερδευόταν το yum και θα θεωρούσε το fc21 νεότερη έκδοση οπότε δεν θα το αναβάθμιζε;

    Όπως και να έχει 10 μέρες αναμονή είναι νομίζω προτιμότερες από το να βάλεις χέρι και να μπλέξεις πακέτα fc21 με fc20 ;)

    1. Κανονικά γίνεται η αναβάθμιση. Μου ήρθε και εμένα εχθές ο νέος πυρήνας. Ο yum δεν μπερδεύεται. Όσους πυρήνες και να βάλεις, ακόμη και αν χτίσεις δικό σου με αριθμό 3.13.10-9999.f25 , απλά θα έχεις και αυτόν και τους παλιούς μαζί. Ωστόσο, εγώ πάω ντουγρού για τον 3.14 (f21), όταν σταθεροποιηθεί βέβαια (όχι RC). ;) Οι συγκεκριμένοι πυρήνες (αυτοί που προτείνω στο άρθρο) είναι τεσταρισμένοι πριν μπουν στο αποθετήριο. Δεν είναι ούτε Rawhide , ούτε git …κλπ. Μόλις σταθεροποιηθούν και δοκιμαστούν αρκετά, πακετάρονται και μπαίνουν στο αποθετήριο. Η μόνη διαφορά εδώ, που μπορεί να δημιουργήσει πρόβλημα(αν και το βλέπω δύσκολο) είναι ότι τεστάρονται για την επόμενη έκδοση (στην περίπτωσή μας f21). Σε περίπτωση προβλήματος όμως, δεν υπάρχει θέμα. Κάνει κάποιος απεγκατάσταση πολύ εύκολα, μπαίνοντας από τον προηγούμενο/σταθερό/Official (για την έκδοση που έχει)/ πυρήνα.

  2. ΟΚ. Από τη στιγμή που δεν μπόρεσες να βρεις κάποιο documentation που να αναφέρει την παραπάνω διαδικασία (ίσως γιατί δεν προτείνεται για διάφορους λόγους… παίζει και σε εσένα να δούλεψε κατά τύχη π.χ.) καλώς την καταγραφείς. Εξάλλου δεν έχω σκοπό (ούτε και δικαίωμα) να υποδείξω τι θα γράφεις στο blog σου. Απλά θέλησα να μοιραστώ κάποιες σκέψεις μου, που πηγάζουν από την εμπειρία που έχω με νεοεισερχόμενους χρήστες Linux που χωρίς να ξέρουν τι κάνουν και τι κινδύνους κρύβει μια παρέμβαση στο σύστημα, την κάνουν απλά επειδή κάπου διάβασαν ότι είναι εύκολο και ότι δούλεψε, και μετά όταν έθρουν αντιμέτωποι με προβλήματα που λογικά και αναμενόμενα (αλλά όχι για αυτούς) πιθανώς προκύψουν, χτυπιούνται και φωνάζουν πόσο χάλια και άχρηστο είναι το Linux.

    Όσο για τη χρήση Fedora σε παραγωγικό υπολογιστή, νομίζω τα παραλές. Είναι πάρα πολλοί οι χρήστες που χρησιμοποιούν Fedora ή Ubuntu ή OpenSuse ή Gentoo ή Mint ή ακόμα και FreeBSD για επαγγελματική χρήση. Και καλά κάνουν από τη στιγμή που η σταθερότητα, ο ρυθμός ανανέωσης και η υποστήριξη της διανομής που έχουν επιλέξει τους καλύπτει για τη δουλειά που τη χρησιμοποιούν. Αλίμονο αν η μόνη επαγγελματική χρήση GNU/Linux περιορίζοταν στο RHEL, το SUSE και Oracle Linux!

    1. Δεν αναφέρθηκα σε άλλες διανομές αλλά στη Fedora συγκεκριμένα. Αυτό, γιατί δεν παρέχει κάποια LTS έκδοση (απ’ όσο ξέρω) με μακράς διάρκειας υποστήριξη. Η φιλοσοφία της στέκεται γύρω από το upstream και bleeding edge η οποία «κρύβει» (αν όχι σε όλες τις περιπτώσεις) ενδεχόμενα σφαλμάτων. Προσωπικά, σε κάποιον που θα ήθελε Linux για επαγγελματικό/παραγωγικό περιβάλλον θα πρότεινα μια LTS έκδοση(π.χ Ubuntu LTS) ή κάποιο free implementation του RHEL(αν δεν θέλει να πληρώσει) π.χ CentOS ή scientific Linux.

  3. Βαικά κάποιος που θέλει ο υπολογιστής του να δουλεύει σταθερά και αποδοτικά, δεν έχει κανένα λόγο κάνει την παραπάνω «επίφοβη» διαδικασία. Εξάλλου ο νέος πυρήνας μετά από λίγο καιρό, αφου δοκιμαστεί επαρκώς από την κοινότητα και γίνουν όλες οι απαραίτητες προσαρμογές του για να «κουμπώνει» καλύτερα στη διανομή μας, θα γίνει διαθέσιμος από τα επίσημα αποθετήρια και θα τον εγκαταστήσουμε με ένα yum update ή από τον διαχειριστή ενημερώσεων.

    1. Δεν είναι σίγουρο ότι θα περάσει (ή θα προλάβει να περάσει) στην F20 πριν αυτή πιάσει το EOL. Η διαδικασία είναι μεν επίφοβη, αλλά σε εισαγωγικά όπως σωστά το έβαλες. Στην περίπτωση που δεν δουλέψει σωστά, απλά κάνουμε boot από τον προηγούμενο και τον απεγκαθιστούμε. Ωστόσο, επειδή ο 3.13 έχει αρκετές βελτιώσεις (και ειδικά για SSD δίσκους) , όπως και κάθε νέα έκδοση πυρήνα φαντάζομαι (έχεις αρκετές βελτιώσεις επίσης) δεν είναι κακό να κάνουμε μια εγκατάσταση να δούμε τι γίνεται. Εξάλλου είναι τόσο εύκολη η διαδικασία και της εγκατάστασης και της απεγκατάστασης. Προσωπικά τον τρέχω ήδη (τον 3.13) χωρίς το παραμικρό πρόβλημα. (απαράβατος κανόνας για μένα είναι πως, ότι γράφω εδώ / ή και αλλού / ως tutorial, το έχω δοκιμάσει πρώτα εγώ ο ίδιος)

      1. Λογικά θα προλάβει να περάσει. Απ’ ότι διαβάζω η F21 θα καθυστερήσει μάλλον λίγο οπότε μέχρι το τέλος του 2014 – αρχές 15 η F20 θα είναι ζωντανή. Από την εμπειρία μου από τη F19 οι νέες εκδόσεις πυρήνα περνάνε συνήθως 1-2 μήνες μετά την κυκλοφορία τους.

        Ο λόγος που επισημαίνω τους κινδύνους σε τέτοιους είδους άρθρα – και αμφισβητώ και κάπως τη χρησιμότητά τους – είναι ότι κατά τη γνώμη μου, όποιος ξέρει τι νέα χαρακτηριστικά έχει η νέα έκδοση του πυρήνα και γιατί θέλει να τον βάλει/δοκιμάσει πριν να μπει στα επίσημα αποθετήρια, έχει ψαχτεί και ξέρει και που να τον βρει και πως να τον εγκαταστήσει και ρυθμίσει, οπότε δεν περιμένει να διαβάσει εδώ για το πως να το κάνει. Αυτός από την άλλη που θα διαβάσει σε αυτό το άρθρο κάτι που δεν γνωρίσει ήδη, μάλλον είναι καλύτερα να μην το επιχειρήσει σε υπολογιστή παραγωγικότητας, γιατί του λείπουν οι γνώσεις και η εμπειρία για να το κάνει σωστά και να αντιμετωπίσει τα όποια προβλήματα (όσο απλό και εύκολο και αν του φαίνεται διαβάζοντας αυτό το άρθρο). Τώρα αν υποθέτουμε ότι το άρθρο απευθύνεται σε αρχάριο που έχει ένα έξτρα pc μόνο για δοκιμές και δεν νοιάζεται να το «χαλάει» και να το ξαναστήνει προκειμένου να μάθει, πάω πάσο… Αλλά και πάλι νομίζω ότι αυτός που ενδιαφέρεται να πειραματιστεί και να μάθει, είναι πιο πιθανό και καλύτερο γι’ αυτόν να πάει κατευθείαν στις πηγές (documentation διανομής, release notes κλπ) στις οποίες ανέτρεξες κι εσύ, ώστε να τα μάθει «από πρώτο χέρι».

      2. Δεν είναι απαραίτητο κάποιος που γνωρίζει κάποια χαρακτηριστικά του νέου πυρήνα να ξέρει και την διαδικασία εγκατάστασης. Εννοώ, πολλά άρθρα στο Internet δίνουν ένα changelog με βελτιώσεις του νέου πυρήνα αλλά μέχρι εκεί. Το άρθρο ξεκινά με κάποια ερωτήματα εξάλλου, δεν προτρέπει κάποιον να το κάνει ντε και καλά.
        Όταν έγραψα αυτό το άρθρο έψαχνα για το πως να εγκαταστήσω τον 3.13 σε Fedora 20 και δεν βρήκα κάποιο Official documentation. Αν υπάρχει και μου ξέφυγε δώσε το να το προσθέσω στο άρθρο. Όσα βρήκα είχαν σχέση με το χτίσιμο και την μεταγλώττιση πυρήνων (είτε custom, είτε vanilla). Ήθελα έναν απλό τρόπο για να εγκαταστήσω έναν νεότερο fedora kernel στο σύστημά μου. Έτσι βρήκα αυτόν τον τρόπο (από διάφορες πηγές) και αφού πρώτα τον δοκίμασα και είδα μηδέν προβλήματα, τον έγραψα κι εδώ για όποιον ενδιαφέρεται. Αν κάποιος χρησιμοποιεί το σύστημά του για παραγωγικό σκοπό ή επαγγελματικά, ίσως θα έπρεπε να σκεφτεί να μην εγκαταστήσει καν Fedora αλλά να πάει κατευθείαν σε RHEL (λόγω διάρκειας υποστήριξης και σταθερότητας).

Συμβάλετε κι εσείς με ένα σχόλιο

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s