Τι είναι ο FedUp;
Ο FedUp (FEDora UPgrader) είναι ένα νέο σύστημα αναβάθμισης των διανομών Fedora, από το Fedora 18 και μετά. Αντικαθιστά όλες τις προηγούμενες προτεινόμενες μεθόδους αναβάθμισης (PreUpgrade και DVD) που χρησιμοποιούνται σε προηγούμενες εκδόσεις Fedora. Ο Anaconda, ο εγκαταστάτης του Fedora, δεν περιέχει κάποια ενσωματωμένη μέθοδο αναβάθμισης από τις εκδόσεις Fedora 18 και μετά. Αυτή η λειτουργία έχει ανατεθεί εξ' ολοκλήρου στον FedUp.
Αυτή τη στιγμή, ο FedUp είναι ικανός να χειριστεί αναβαθμίσεις μεταξύ όλων των υποστηριζόμενων εκδόσεων Fedora, από ένα δικτυακό αποθετήριο ή από ένα DVD που θα χρησιμοποιηθεί ως πηγή. Οι αναβαθμίσεις από EOL εκδόσεις Fedora ίσως να λειτουργήσουν σωστά, αλλά πρέπει να ξέρετε ότι δεν υποστηρίζονται. Περισσότερες μέθοδοι αναβάθμισης έχουν προγραμματιστεί να συμπεριληφθούν και αυτή η σελίδα θα ενημερώνεται καθώς ενσωματώνονται.
Πως λειτουργεί ο FedUp;
Το σύστημα του FedUp αποτελείται από δυο μέρη - τον client που χρησιμοποιείται για να κατεβάσει τα πακέτα και να προετοιμάσει την αναβάθμιση και ένα περιβάλλον pre-boot που εκτελεί την κανονική αναβάθμιση χρησιμοποιώντας τον systemd και τον yum. Περισσότερες λεπτομέρειες για την διαδικασία μπορείτε να βρείτε σε μια ανάρτηση που έχει γίνει από τον δημιουργό του FedUp(Αγγλικά).
Τα αρχεία κατεβαίνουν στην τοποθεσία /var/tmp/system-upgrade (ή στην καθορισμένη από το --cachedir [χρειάζεται εφαρμογή;]) και θα εκκαθαριστούν αυτόματα αφού ολοκληρωθεί με επιτυχία η διαδικασία της αναβάθμισης.
Ο FedUp Client
Ο FedUP client τρέχει στο σύστημα το οποίο θα αναβαθμιστεί. Συλλέγει πληροφορίες για να πακέτα που χρειάζονται αναβάθμιση και επιπροσθέτως κατεβάζει τα απαραίτητα initramfs και τον πυρήνα που χρειάζεται για την πραγματική αναβάθμιση. Προς στιγμήν, μόνο ένα περιβάλλον γραμμής εντολών (CLI) είναι διαθέσιμο για τον FedUp, αλλά και ένα γραφικό περιβάλλον (GUI) αναμένεται να ενσωματωθεί...κάποια στιγμή.
Η Αναβάθμιση
Η πραγματική αναβάθμιση συμβαίνει όταν γίνει επανεκκίνηση στο σύστημα, αφού έχει τρέξει ο FedUp client. Τα συστήματα αρχείων προσαρτώνται κατά την διάρκεια της εκκίνησης, τα ήδη κατεβασμένα πακέτα εγκαθίστανται και γίνονται κάποιες εργασίες σχετικές με την αναβάθμιση. Κατά την διάρκεια της αναβάθμισης, ένα ειδικό θέμα plymouth χρησιμοποιείται, το οποίο μέσω μιας γραμμής προόδου, δείχνει την πραγματική πρόοδο της αναβάθμισης.
Τα Επακόλουθα
Όταν η αναβάθμιση ολοκληρωθεί, ο FedUp θα κάνει επανεκκίνηση το σύστημά σας αυτόματα. Αυτό γίνεται έτσι ώστε να μπορείτε να τρέξετε αυτό το σημείο της αναβάθμισης «ασυνόδευτα»(χωρίς να είστε μπροστά στον υπολογιστή) και να επιστρέψετε, στο πλέον αναβαθμισμένο σύστημά σας. Προσέξτε όμως ότι, αν έχετε κάποιο μέσο εγκατάστασης συνδεδεμένο στον υπολογιστή(CD/DVD/USB), τότε ίσως να γίνει επανεκκίνηση σε αυτό το μέσο αντί για τον σκληρό δίσκο, όταν ολοκληρωθεί η αναβάθμιση. Αν αφήσετε το σύστημά σας και επανέλθετε και δείτε κάποιον εγκαταστάτη του Fedora ή κάτι παρόμοιο, τότε μάλλον έχει συμβεί το προηγούμενο.
Συνήθεις Ερωτήσεις(FAQ)
Γιατί η αναβάθμιση στο Fedora 20 δεν λειτουργεί σωστά (κάνει εκκίνηση αμέσως στο παλιό Fedora);
Γιατί «τα κάναμε θάλασσα» ! Συγγνώμη γι' αυτό. Ο FedUp 0.7 που ήταν στα σταθερά αποθετήρια των Fedora 18 και 19, δεν μπορεί να αναβαθμίσει επιτυχώς την έκδοση σε Fedora 20. Ο FedUp 0.8 όμως, μπορεί μια χαρά. Πρέπει να χρησιμοποιήσετε τον FedUp 0.8 για να αναβαθμίσετε σε Fedora 20. Αν αναβαθμίζετε από το Fedora 18, θα χρειαστεί να περάσετε την παράμετρο --nogpgcheck. Δείτε στην σελίδα Common Bugs page για όλες τις λεπτομέρειες.
Πως αναφέρω σφάλματα που βρίσκω στην αναβάθμιση;
Πρώτα δείτε στα Common F19 bugs ή Common F20 bugs και ελέγξτε αν το πρόβλημα υπάρχει ήδη εκεί. Αν δεν υπάρχει, το στοιχείο για να αναφέρετε το πρόβλημα εξαρτάται από το ακριβές λάθος το οποίο εμφανίστηκε:
Πρόβλημα με την προετοιμασία της αναβάθμισης
Αν παρουσιαστεί πρόβλημα κατά την χρήση του FedUp client (fedup
) πριν την επανεκκίνηση, ψάξτε ή αναφέρετε το σφάλμα για τον FedUp, χρησιμοποιώντας την έκδοση από την οποία αναβαθμίζετε.
Προβλήματα κατά την διάρκεια της αναβάθμισης
Αν παρουσιαστεί πρόβλημα μετά την προετοιμασία της αναβάθμισης και την αρχική επανεκκίνηση, ψάξτε ή αναφέρετε το σφάλμα για το πακέτο fedup-dracut
, χρησιμοποιώντας την έκδοση στην οποία αναβαθμίζετε.
Προβλήματα μετά την αναβάθμιση
Για προβλήματα μετά την αναβάθμιση και για συγκεκριμένο πακέτο, αναφέρετε το σφάλμα κατά του πακέτου με στο οποίο αντιμετωπίζετε το πρόβλημα.
Πως θα κάνω αποσφαλμάτωση κατά τη διάρκεια της αναβάθμισης;
Ένας οδηγός επίλυσης και αποσφαλμάτωσης θα γραφτεί κάποια στιγμή και θα τοποθετηθεί ο ανάλογος σύνδεσμος εδώ.
Το λογισμικό που αναβαθμίζεται, επαληθεύεται από τον FedUp;
Από την έκδοση 0.8, το κάνει από προεπιλογή. Τα κλειδιά υπογραφής των πακέτων για νεότερες εκδόσεις Fedora, στέλνονται σε παλαιότερες εκδόσεις Fedora, επιτρέποντας έτσι στον FedUp να επαληθεύσει την ακεραιότητα των πακέτων που κατεβάζει. Μπορείτε να απενεργοποιήσετε αυτή τη λειτουργία με την παράμετρο --nogpgcheck, αν πρέπει να το κάνετε για οποιονδήποτε λόγο.
Τα πακέτα από τρίτα αποθετήρια θα αναβαθμιστούν;
Ναι, αν έχουν στηθεί ως κανονικά αποθετήρια πακέτων. Τα τρίτα αποθετήρια που χρησιμοποιούνται ευρέως, συνήθως λειτουργούν καλά, αλλά αν προσπαθήσετε να αναβαθμίσετε πριν ή αμέσως μετά την επίσημη έκδοση του Fedora, ίσως δεν έχουν προλάβει να αναβαθμίσουν τις σωστές «διαδρομές» και ο FedUp δεν θα μπορεί να βρει τα πακέτα. Αυτό συνήθως δεν αποτρέπει την διαδικασία αναβάθμισης και μπορείτε να αναβαθμίσετε τα πακέτα των τρίτων αποθετηρίων αργότερα.
Μπορώ να χρησιμοποιήσω τον FedUp για αναβάθμιση σε μια προ-έκδοση (π.χ beta);
Ναι. Αφού μια προ-έκδοση Fedora έχει επισημοποιηθεί, είναι δυνατόν να αναβαθμίσετε χρησιμοποιώντας τον FedUp. Πρέπει να λειτουργεί ακόμη και σε Aplha και Beta εκδόσεις. Φυσικά θα πρέπει να λάβετε υπόψιν σας τις πιθανότητες «σπασίματος» του συστήματος, όπως αυτό μπορεί να συμβεί σε κάθε Alpha ή Beta έκδοση.
Δείτε αυτό το μήνυμα ηλ.ταχυδρομείου στην devel mailing list για περισσότερες λεπτομέρειες.
Πως μπορώ να αναβαθμίσω το σύστημα μου με τον FedUp;
Όπως αναφέρθηκε και παραπάνω, η αναβάθμιση με τον FedUp χωρίζεται σε τρία μέρη - προετοιμασία, εκτέλεση και καθαρισμός.
Πριν ξεκινήσετε να κάνετε οτιδήποτε, σιγουρευτείτε πως έχετε κοιτάξει στο Common F20 bugs#Upgrade_issues και έχετε διαβάσει για τα πιο γνωστά σφάλματα που έχουν αναφερθεί.
Προετοιμασία για την αναβάθμιση
- Κάντε μια ενημέρωση του συστήματος και μια επανεκκίνηση για να σιγουρευτείτε πως έχουν λάβει χώρα, οποιεσδήποτε αλλαγές στον πυρήνα.
- Εγκαταστήστε το πακέτο
fedup
- Συνήθως, είναι καλό να προσπαθήσετε με την τελευταία σταθερή έκδοση του FedUp που είναι διαθέσιμη στα σταθερά αποθετήρια της έκδοσης που τρέχετε. Αν αντιμετωπίσετε προβλήματα με την αναβάθμιση, τότε μπορείτε να δοκιμάσετε την έκδοση που βρίσκεται στα testing-updates αποθετήρια τρέχοντας την επόμενη εντολή σε ένα τερματικό:
yum --enablerepo=updates-testing install fedup
- Συνήθως, είναι καλό να προσπαθήσετε με την τελευταία σταθερή έκδοση του FedUp που είναι διαθέσιμη στα σταθερά αποθετήρια της έκδοσης που τρέχετε. Αν αντιμετωπίσετε προβλήματα με την αναβάθμιση, τότε μπορείτε να δοκιμάσετε την έκδοση που βρίσκεται στα testing-updates αποθετήρια τρέχοντας την επόμενη εντολή σε ένα τερματικό:
Υπάρχουν τρεις τρόποι για να ενεργοποιήσετε την πηγή που χρειάζεται για την αναβάθμιση - χρησιμοποιώντας ένα αποθετήριο δικτύου, ένα τοπικό αρχείο ISO ή μια τοπική συσκευή (σκληρό δίσκο, οπτικό δίσκο...κλπ).
Δίκτυο
Χρησιμοποιώντας μια δικτυακή πηγή είναι ο ευκολότερος τρόπος να κάνετε αναβάθμιση και θα τραβήξει όλες τις ενημερώσεις κατά την διάρκεια της αναβάθμισης - εξαφανίζοντας το ζήτημα που μπορεί να προκληθεί αν το τωρινό σας σύστημα να έχει νεότερη έκδοση πυρήνα από την έκδοση Fedora στην οποία αναβαθμίζετε.
- Ξεκινήστε την προετοιμασία της αναβάθμισης εκτελώντας τις παρακάτω εντολές
sudo yum update fedup fedora-release
sudo fedup --network 20
- Όταν η προετοιμασία ολοκληρωθεί, κάντε έναν έλεγχο στο αρχείο
/var/log/fedup.log
για οποιαδήποτε αναφορά λάθους υπάρχει από την έξοδο της εντολήςfedup
Αρχείο ISO
Για να χρησιμοποιήσετε ένα αρχείο ISO, πρέπει αυτό να υπάρχει τοπικά στο σύστημα το οποίο θα αναβαθμιστεί. Οι οδηγίες είναι γραμμένες, υποθέτοντας ότι το αρχείο αυτό βρίσκεται στην διαδρομή /home/user/fedora-20.iso, αλλά θα χρειαστεί να αντικαταστήσετε την διαδρομή και το όνομα του αρχείου, με τα πραγματικά. Ενημερώσεις θα γίνουν, μόνον αν έχετε ενεργό δίκτυο στο μηχάνημα το οποίο θα αναβαθμιστεί.
- Κατεβάστε το αρχείο Fedora 41 ISO, το οποίο θα είναι κατάλληλο για την αρχιτεκτονική που τρέχετε
- Για τις ανάγκες του παραδείγματος θα υποθέσουμε το το αρχείο ISO βρίσκεται στο
/home/user/fedora-20.iso
, αλλά μπορεί να βρίσκεται οπουδήποτε στο σύστημα αρχείων, αναλόγως που το έχετε αποθηκεύσει. Σιγουρευτείτε πως έχετε κατεβάσει το σωστό Fedora DVD ISO, διαφορετικά θα λάβετε ένα μήνυμα λάθους του στυλ "The given ISO probably isn't an install DVD image", όταν τρέξετε την εντολήfedup-cli
.
- Για τις ανάγκες του παραδείγματος θα υποθέσουμε το το αρχείο ISO βρίσκεται στο
- Ξεκινήστε την προετοιμασία της αναβάθμισης εκτελώντας την παρακάτω εντολή
sudo fedup-cli --iso /home/user/fedora-20.iso
- Όταν η προετοιμασία ολοκληρωθεί, ελέγξτε το αρχείο
/var/log/fedup.log
, για τυχών λάθη ή μηνύματα προειδοποίησης(warnings) από την έξοδο της εντολήςfedup-cli
Άλλη Συσκευή
Οπτικοί δίσκοι, καθώς και άλλοι χώροι που μπορούν να προσαρτηθούν, μπορούν να χρησιμοποιηθούν ως πηγή πακέτων για την προετοιμασία της αναβάθμισης.
- Προσαρτήστε την πηγή των πακέτων
- Για τις ανάγκες του παραδείγματος, θα υποθέσουμε πως αυτή η πηγή είναι προσαρτημένη στην διαδρομή
/mnt/fedora
, αλλά μπορείτε να την προσαρτήσετε οπουδήποτε, αρκεί να την αλλάξετε στην παρακάτω εντολή με την πραγματική διαδρομή προσάρτησης.
- Για τις ανάγκες του παραδείγματος, θα υποθέσουμε πως αυτή η πηγή είναι προσαρτημένη στην διαδρομή
- Ξεκινήστε την προετοιμασία της αναβάθμισης εκτελώντας την παρακάτω εντολή
sudo fedup-cli --device /mnt/fedora --debuglog=fedupdebug.log
- Όταν η προετοιμασία ολοκληρωθεί, ελέγξτε το αρχείο
fedupdebug.log
για τυχών λάθη ή προειδοποιήσεις από την έξοδο της εντολήςfedup-cli
Εκτελώντας την Αναβάθμιση
- Κάντε επανεκκίνηση το σύστημα αν η εντολή
fedup
, έχει ολοκληρωθεί χωρίς λάθη. - Όταν το σύστημα επανεκκινήσει, θα πρέπει να υπάρχει μια νέα εισαγωγή στον GRUB, που θα ονομάζεται
System Upgrade
.- Αν προσθέσετε την παράμετρο
rd.upgrade.debugshell
, θα κάνετε εισαγωγή σε ένα κέλυφος(shell) στο VT2, που θα σας επιτρέψει να αλληλεπιδράσετε με το σύστημα σε περίπτωση που κάτι πάει λάθος.
- Αν προσθέσετε την παράμετρο
- Επιλέξετε το
System Upgrade
από το μενού του GRUB- Σημείωση: Αν η επιλογή
System Upgrade
δεν υπάρχει στον GRUB, τότε πιθανότατα τρέχετε κάποια άλλη έκδοση του GRUB, ίσως από άλλη διανομή αν έχετε ένα σύστημα multiboot. Για να το διορθώσετε αυτό γρήγορα: κάντε επανεγκατάσταση τον grub:- grub2-mkconfig -o /boot/grub2/grub.cfg
- grub2-install /dev/sda (αντικαταστήστε το /dev/sda με οποιαδήποτε άλλη συσκευή επιλέξετε για να κάνετε εκκίνηση)
- Σημείωση: Αν η επιλογή
- Το σύστημα πρέπει να εκκινήσει στην διαδικασία αναβάθμισης και μια οθόνη προόδου πρέπει να εμφανιστεί
- Πατήστε το πλήκτρο 'esc' αν θέλετε να βλέπετε μια λεπτομερή αναφορά(log). Αν γυρίσετε πίσω στο γραφικό περιβάλλον, η γραμμή προόδου ίσως δείχνει 0%, αλλά αυτό δεν σημαίνει πως η αναβάθμιση έχει σταματήσει.
- Όταν η αναβάθμιση ολοκληρωθεί, το σύστημα θα επανεκκινήσει και μια επιλογή για εκκίνηση στο Fedora 41 θα υπάρχει στο μενού του grub.
Εκκαθάριση μετά την Αναβάθμιση
Αξίζει να δημιουργήσετε ξανά την βάση δεδομένων RPM, για να αποφύγετε λάθη σχετικά με RPMDB checksum, όταν συγχρονίζετε την διανομή:
sudo rpm --rebuilddb
Υπάρχει μια συλλογή από Μετά-την-Αναβάθμιση πράγματα που μπορείτε να κάνετε. Κάποια από αυτά γίνονται, κάνοντας έναν συγχρονισμό διανομής:
sudo yum distro-sync --setopt=deltarpm=0
Αν χρησιμοποιείτε Google Chrome, από το αποθετήριο της Google, πρέπει να τον κάνετε μια επανεγκατάσταση, λόγω ενός σφάλματος που προκύπτει, από την πλευρά της Google. Σιγουρευτείτε ότι θα ταιριάξετε την παρακάτω εντολή με το πακέτο που θέλετε να εγκαταστήσετε.
sudo yum remove google-chrome-\* && sudo yum install google-chrome-[beta,stable,unstable]
Docs TODO
- Write fedup troubleshooting and debug guide
- add note about blob drivers if needed