Απενεργοποίηση Ενημερωσης Grub

...εγκαταστάσεις, αναβαθμίσεις, διαχείριση partitions, boot-loader, κλπ

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Στην ενότητα αυτή γράφουμε θέματα/ προβλήματα μόνο για το UBUNTU ή τα παράγωγά του.

Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό freefour » 07 Ιούλ 2016, 17:27

Καλησπερα. Χρειαζομαι την βοηθεια σας.
Εχω εγκατεστημενα 4 λειτουργικα Linux σε 2 δισκους με 4 παρτισιονς και 1 Swap.
Ubuntu, Fedora, Manjaro, Manjaro:


Τελευταιο εβαλα το Manjaro XFCE που ειναι στο παρτισιον /dev/sda2 οπως φαινεται πανω στη φωτο, και στην εγκατασταση αφησα τον Bootloader να εγκαταστηθει στον δισκο /dev/sda.
Ομως ανησυχω να μην γινει κανενα update απο Ubuntu σε kernel η grub και χαλασει τιποτα.
Παλια θυμαμε τα ειχα καπως ετσι και μετα απο καποιο update στο Ubuntu πηρα kernel panic και στα δυο Manjaro χωρις να καταλαβω τι εγινε.

Τι πρεπει να προσεξω, μπορω να απενεργοποιησω απ το Ubuntu το Update για τον grub;
Τελευταία επεξεργασία από Learner και 07 Ιούλ 2016, 18:26, έχει επεξεργασθεί 1 φορά/ες συνολικά
Αιτία: Προσθήκη εικόνων σε [ThumbnailPop]
Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πρώτα βήματα
‖‖ Ubuntu 19.04 Gnome 3.32.1 ‖ Windows 10 ‖‖
Intel Core i7 CPU 920 2.67GHz RAM 5969 MiB Gigabyte EX58-DS4
NVIDIA Corporation GK104 [GeForce GTX 760]
eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 03) ⋮ eth1: Realtek RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)
Άβαταρ μέλους
freefour
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 559
Εγγραφή: 09 Απρ 2012, 10:32
Τοποθεσία: Κατερινη
Εκτύπωση

Re: Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό Learner » 07 Ιούλ 2016, 18:40

freefour έγραψε:και στην εγκατασταση αφησα τον Bootloader να εγκαταστηθει στον δισκο /dev/sda.
freefour έγραψε:Ομως ανησυχω να μην γινει κανενα update απο Ubuntu σε kernel η grub και χαλασει τιποτα.

Αυτό που θα συμβαίνει από εδώ και στο εξής, με τη προϋπόθεση ότι κάνεις εκκίνηση από /dev/sda, είναι να αναβαθμίζονται οι εισαγωγές στον grub του Manjaro (XFCE) ο οποίος είναι πλέον και ο "κυρίως" grub (να τον πούμε έτσι, μιας και έχεις πολλούς).

Για Kernel Panic δε νομίζω ότι έχει σχέση.
Αυτό όμως που μπορεί να συμβεί είναι, όταν γίνει κάποια αναβάθμιση στον πυρήνα του Ubuntu, αυτή δε θα φανεί στον grub (του Manjaro) με αποτέλεσμα να εξακολουθείς να κάνεις εκκίνηση από παλαιότερο πυρήνα.
Θα πρέπει, κάθε φορά που γίνεται αναβάθμιση πυρήνα σε κάποια από τις διανομές που "φιλοξενούνται" στη λίστα του grub (του Manjaro), να ανανεώνεις (φρεσκάρεις) τον grub σε αυτές τις διανομές και μετά να κάνεις το ίδιο και στον grub του Manjaro (που είναι ο κυρίως grub του δίσκου) ώστε να παίρνει τις αλλαγές.

Αυτό συμβαίνει με διανομές οι οποίες κρατάνε περισσότερες από μια εκδόσεις πυρήνα. Π.χ. δεν συμβαίνει (δε χρειάζεται τίποτε από τα παραπάνω) αν η "φιλοξενούμενη" διανομή είναι το Arch Linux.

Αυτό που κάνω εγώ ώστε να αποφύγω τη παραπάνω διαδικασία (μιας και επίσης διατηρώ 3-4 λειτουργικά), είναι να κάνω εγκατάσταση τον grub της κάθε διανομής στο εκάστοτε διαμέρισμα στο οποίο είναι εγκατεστημένη. Έπειτα, δημιουργώ ένα chainload και όταν πατήσω π.χ. Fedora, στον κυρίως grub, αυτός θα με "πετάξει" στον grub του Fedora (ο οποίος είναι αυτόματα ενημερωμένος) και κάνω εκκίνηση από εκεί. Στην ουσία παρεμβάλλονται δυο grub δηλαδή.

Το παραπάνω δεν είναι προτεινόμενος τρόπος, δηλαδή να κάνεις εγκατάσταση τον grub σε διαμέρισμα και όχι στο MBR του δίσκου. Για τέτοιες όμως περιπτώσεις, με πολλές διανομές και πολλούς grub, είναι μια καλή λύση.
Μια φορά θα μπεις στη διαδικασία να φτιάξεις τις εισαγωγές και καθάρισες.

Αν ενδιαφέρεσαι να μπεις στη διαδικασία αυτή, πες το.
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό freefour » 08 Ιούλ 2016, 12:15

Ναι ενδιαφερομαι, αρκη να μπορω να καταλαβενω καποια πραγματα. Ειμαι σιγουρος οτι η απαντηση σου ηταν πολυ κατατοπιστικη αλλα απ την αρχη δεν το εχω με τον grub. Αφου για να φανταστεις τις ποιο πολλες φορες οταν βαζω πολλα λειτουργικα τα κανω ολα στην τυχη και οποτε πετυχουν.
Learner έγραψε:
Θα πρέπει, κάθε φορά που γίνεται αναβάθμιση πυρήνα σε κάποια από τις διανομές που "φιλοξενούνται" στη λίστα του grub (του Manjaro), να ανανεώνεις (φρεσκάρεις) τον grub σε αυτές τις διανομές και μετά να κάνεις το ίδιο και στον grub του Manjaro (που είναι ο κυρίως grub του δίσκου) ώστε να παίρνει τις αλλαγές.

Εννωεις οτι θα πρεπει να προσεχω πολυ (μιας και σπανια βλεπω τι μου ενημερωνει το τερματικο) σε καθε update του πυρηνα που θα γινετε απο εδω και περα σε Ubuntu/fedora, και μετα την ενημερωση να κανω update τον grub τους και μετα να μπαινω στο Manjaro XFCE και να κανω το ιδιο και εκει;
Για παραδειγμα:
Κώδικας: Επιλογή όλων
update-grub2
για Uubuntu
Κώδικας: Επιλογή όλων
grub2-mkconfig -o /boot/grub2/grub.cfg
για Fedora
Κώδικας: Επιλογή όλων
grub-mkconfig -o /boot/grub/grub.cfg
και Manjaro

Learner έγραψε:
Αυτό που κάνω εγώ ώστε να αποφύγω τη παραπάνω διαδικασία (μιας και επίσης διατηρώ 3-4 λειτουργικά), είναι να κάνω εγκατάσταση τον grub της κάθε διανομής στο εκάστοτε διαμέρισμα στο οποίο είναι εγκατεστημένη
Αυτο επρεπε να το κανω (απ την αρχη) πανω στην εγκατασταση; Μετα απ αυτο ομως το καθε λειτουργικο που θα εμπαινε με την σειρα του θα το εβλεπε το μενου grub; Eκτος αν το κολπο ειναι το παρακατω αλλα δεν το καταλαβαινω αυτο.

Learner έγραψε:Έπειτα, δημιουργώ ένα chainload και όταν πατήσω π.χ. Fedora, στον κυρίως grub, αυτός θα με "πετάξει" στον grub του Fedora (ο οποίος είναι αυτόματα ενημερωμένος) και κάνω εκκίνηση από εκεί. Στην ουσία παρεμβάλλονται δυο grub δηλαδή.
Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πρώτα βήματα
‖‖ Ubuntu 19.04 Gnome 3.32.1 ‖ Windows 10 ‖‖
Intel Core i7 CPU 920 2.67GHz RAM 5969 MiB Gigabyte EX58-DS4
NVIDIA Corporation GK104 [GeForce GTX 760]
eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 03) ⋮ eth1: Realtek RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)
Άβαταρ μέλους
freefour
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 559
Εγγραφή: 09 Απρ 2012, 10:32
Τοποθεσία: Κατερινη
Εκτύπωση

Re: Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό Learner » 08 Ιούλ 2016, 17:12

freefour έγραψε:Εννωεις οτι θα πρεπει να προσεχω πολυ (μιας και σπανια βλεπω τι μου ενημερωνει το τερματικο) σε καθε update του πυρηνα που θα γινετε απο εδω και περα σε Ubuntu/fedora, και μετα την ενημερωση να κανω update τον grub τους και μετα να μπαινω στο Manjaro XFCE και να κανω το ιδιο και εκει;
Για παραδειγμα:
Κώδικας: Επιλογή όλων
update-grub2

για Uubuntu
Κώδικας: Επιλογή όλων
grub2-mkconfig -o /boot/grub2/grub.cfg

για Fedora
Κώδικας: Επιλογή όλων
grub-mkconfig -o /boot/grub/grub.cfg

και Manjaro

Ναι, σωστά κατάλαβες.

freefour έγραψε:Αυτο επρεπε να το κανω (απ την αρχη) πανω στην εγκατασταση;

Δεν είναι απαραίτητο. Μπορείς να το εφαρμόσεις και τώρα.
freefour έγραψε:Μετα απ αυτο ομως το καθε λειτουργικο που θα εμπαινε με την σειρα του θα το εβλεπε το μενου grub;

Θα το κάνεις εσύ να το βλέπει.
freefour έγραψε:Eκτος αν το κολπο ειναι το παρακατω αλλα δεν το καταλαβαινω αυτο.

Learner έγραψε:Έπειτα, δημιουργώ ένα chainload και όταν πατήσω π.χ. Fedora, στον κυρίως grub, αυτός θα με "πετάξει" στον grub του Fedora (ο οποίος είναι αυτόματα ενημερωμένος) και κάνω εκκίνηση από εκεί. Στην ουσία παρεμβάλλονται δυο grub δηλαδή.

Ναι, αυτό είναι το κόλπο.
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό Learner » 08 Ιούλ 2016, 17:54

Off topic:
Φτιάξε καφεδάκι, "σπάσε" τα δάκτυλά και ξεκινάμε :)

Καταρχήν, προτιμώ τον grub του Ubuntu από όποιας άλλης διανομής. Είναι προσωπική προτίμηση αυτή. Οπότε, στη θέση σου θα έκανα τα εξής.

Μπαίνω στο Ubuntu και κάνω εγκατάσταση τον grub του Ubuntu στο MBR του κυρίως δίσκου μου, με τη παρακάτω εντολή.
Κώδικας: Επιλογή όλων
sudo grub-install --recheck /dev/sda


Αφού τελειώσει η εγκατάσταση χωρίς λάθη, ενημερώνω τον grub για να δει και τα υπόλοιπα λειτουργικά.
Κώδικας: Επιλογή όλων
sudo update-grub


Έπειτα, μπαίνω σε κάθε μια από τις διανομές (Fedora , Manjaro στη περίπτωσή μας) και κάνω εγκατάσταση τον grub στο διαμέρισμα στο οποίο είναι εγκατεστημένη η διανομή.
Για να βρω το διαμέρισμα εύκολα (το device node δηλαδή), δίνω την εντολή
Κώδικας: Επιλογή όλων
mount

βλέπω που είναι προσαρτημένο το root , πχ
Κώδικας: Επιλογή όλων
/dev/sdb1 on / type ext4 (rw,errors=remount-ro)

φαίνεται από τη πλάγια κάθετο (/) η οποία συμβολίζει το ριζικό κατάλογο,
και έπειτα κάνω εκεί εγκατάσταση τον grub με τη παρακάτω εντολή
Κώδικας: Επιλογή όλων
sudo grub-install --force --recheck /dev/sdb1

Βγάζει κάποια προειδοποίηση, την οποία αγνοώ. Αυτό που με ενδιαφέρει είναι η εγκατάσταση να ολοκληρωθεί επιτυχώς.
Έπειτα απενεργοποιώ το script os_prober, πλέον δε με ενδιαφέρει να υπάρχουν στη λίστα όλες οι άλλες διανομές, σε κάθε grub. Μόνο στον κυρίως grub θέλω.
Κώδικας: Επιλογή όλων
sudo chmod 644 /etc/grub.d/*os-prober

Τσεκάρω τα δικαιώματα, να δω αν έγινε σωστά η αλλαγή (πρέπει να επιστρέψει 644).
Κώδικας: Επιλογή όλων
stat -c %a,%n /etc/grub.d/*os-prober


Τρέχω τώρα το script δημιουργίας του grub.cfg
πχ αν είμαι σε Fedora, αν τα παραπάνω δηλαδή τα έχω κάνει στην εγκατάσταση του Fedora,
Κώδικας: Επιλογή όλων
sudo grub2-mkconfig -o /boot/grub2/grub.cfg


Την ίδια διαδικασία κάνω και στις υπόλοιπες διανομές, εκτός της κύριας διανομής(στη περίπτωσή μας το Ubuntu) της οποίας ο grub είναι εγκατεστημένος στο MBR του δίσκου. Εκεί θα ακολουθήσουμε άλλη διαδικασία (περιγράφεται παρακάτω).

Πάμε τώρα στη κύρια διανομή.
Εκεί το πρώτο που κάνω είναι να τρέξω την εντολή δημιουργίας του grub.cfg, αλλά όχι με κατεύθυνση το /boot/grub/ , αλλά το προσωπικό μου κατάλογο.
Ο λόγος που το κάνω αυτό είναι διότι θα μου χρειαστούν κάποιες εισαγωγές από εκεί μέσα (θα τις κάνω copy-paste χειροκίνητα), για το custom αρχείο που θα φτιάξω.
Κώδικας: Επιλογή όλων
sudo grub-mkconfig -o ~/grub.cfg

Έπειτα αφαιρώ κι εδώ τα δικαιώματα εκτέλεσης του os-prober, όπως και προηγουμένως.
Κώδικας: Επιλογή όλων
sudo chmod 644 /etc/grub.d/*os-prober

Τώρα τρέχω
Κώδικας: Επιλογή όλων
sudo update-grub

και πλέον έχω ένα "καθαρό" grub.cfg, δηλαδή χωρίς κανένα λειτουργικό στη λίστα.

Τώρα πάω να δημιουργήσω το custom αρχείο. Ως αρχείο υπάρχει έτοιμο, αλλά είναι άδειο.
Κώδικας: Επιλογή όλων
sudo gedit /etc/grub.d/40_custom

Οι εισαγωγές που θα αντιγράψω εκεί θα είναι του παρακάτω στυλ.
Κώδικας: Επιλογή όλων

menuentry 'Fedora 24' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-ea7267d7-4fb4-4188-XXX5-fb6bxxx8b9a4' {
insmod part_msdos
insmod ext2
set root='hd3,msdos5'
search --no-floppy --fs-uuid --set=root ea7267d7-4fb4-4188-ΧΧΧ5-fb6bxxx8b9a4
chainloader +1
}

Όλες οι εισαγωγές θα είναι στο ίδιο στυλ. Αυτά που φυσικά αλλάζουν είναι τα IDs και το --set root.
Αυτά, θα τα πάρω από το αρχείο grub.cfg που δημιούργησα στο home μου.
Κώδικας: Επιλογή όλων
gedit ~/grub.cfg

Προσεκτικά κάνω copy-paste αυτά που με ενδιαφέρουν. Αντικαθιστώ δηλαδή το ID (όπου υπάρχει) και το set root.
Παράδειγμα:
Από τη παραπάνω εισαγωγή θα αντικαταστήσω
Κώδικας: Επιλογή όλων

'osprober-gnulinux-simple-ea7267d7-4fb4-4188-XXX5-fb6bxxx8b9a4'
--set=root ea7267d7-4fb4-4188-ΧΧΧ5-fb6bxxx8b9a4

και
Κώδικας: Επιλογή όλων
set root='hd3,msdos5'

με αυτά που θα βρω στο αρχείο grub.cfg που έχω δημιουργήσει στο home μου. Αυτά της διανομής που με ενδιαφέρει.

Συμπληρώνω το μενού όσες φορές χρειαστεί (στη δική σου περίπτωση, μάλλον τρεις: Fedora, Manjaro, Manjaro XFCE).
Τα ονόματα που θα φαίνονται στη λίστα του κυρίως grub τα γράφω όπως εγώ θέλω, αρκεί να βρίσκονται μέσα σε εισαγωγικά.
Μπορώ να αλλάξω το
Κώδικας: Επιλογή όλων
menuentry 'Fedora 24'

σε
Κώδικας: Επιλογή όλων
menuentry 'Fedora 24 GNOME'

ή ότι άλλο με βολεύει.

Αφού ολοκληρώσω τις εισαγωγές, αποθηκεύω το αρχείο και τρέχω
Κώδικας: Επιλογή όλων
sudo update-grub

Πριν κάνω επανεκκίνηση, τσεκάρω το νέο δημιουργημένο αρχείο /boot/grub/grub.cfg , ώστε να δω αν οι εισαγωγές που έφτιαξα συμπεριελήφθησαν όπως πρέπει.
Κώδικας: Επιλογή όλων
gedit /boot/grub/grub.cfg

κάνοντας scroll down και στην ενότητα 40_custom , πρέπει να δω τις εισαγωγές που έφτιαξα.

Τότε, μπορώ να κάνω μια επανεκκίνηση και να δοκιμάσω τη νέα λίστα κατά πως δουλεύει σωστά.
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Απενεργοποίηση Ενημερωσης Grub

Δημοσίευσηαπό freefour » 08 Ιούλ 2016, 19:01

Πω ρε φιλε Learner συγνωμη δεν μπορω να κανω ολα αυτα, δεν τα καταλαβενω αφου σε καποια φαση χαθηκα και θελει πολυ χρονο.
Ευχαριστω για τον κοπο σου και τον χρονο σου παντος αλλα δουλευω κιολας αυτον τον καιρο και αν γινει κατι δεν θα μπορουμε να μιλαμε για να το λυσουμε γρηγορα.
Θα ρισκαρω και θα περιμενω ετσι οπως τα εχω τωρα, θα προσεχω αυτο που με ειπες για τυχον ενημερωση του Ubuntu πυρινα να κανω upadate grub σε ολα τα λειτουργικα και ο θεος βοηθος.
Δες και τι ωραιο εκανα το Grub Menu. :D :P
Εικόνα
Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πρώτα βήματα
‖‖ Ubuntu 19.04 Gnome 3.32.1 ‖ Windows 10 ‖‖
Intel Core i7 CPU 920 2.67GHz RAM 5969 MiB Gigabyte EX58-DS4
NVIDIA Corporation GK104 [GeForce GTX 760]
eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 03) ⋮ eth1: Realtek RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)
Άβαταρ μέλους
freefour
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 559
Εγγραφή: 09 Απρ 2012, 10:32
Τοποθεσία: Κατερινη
Εκτύπωση


Επιστροφή στο Λειτουργικό Σύστημα