Δημοσιεύτηκε: 16 Δεκ 2009, 00:21
από pros
Το ερώτημα του τίτλου απασχολεί πολύ κόσμο απ' ότι φαίνεται...

Με τον Grub2 άλλαξε ο τρόπος με τον οποίο
μπορούμε να προσαρμόσουμε
το menu επιλογής λειτουργικού ή πυρήνα κατά την εκκίνηση.

Κατ' αρχήν, το πλήκτρο που πατάμε για να εμφανιστεί το μενού είναι το Shift.
Το αρχείο που αντικατέστησε το γνωστό μας menu.lst είναι το grub.cfg,
που στην αρχή του, μας προειδοποιεί, φαρδιά-πλατιά
έγραψε:#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#


Το μυστικό είναι, ότι το αρχείο αυτό,
δημιουργείται πλέον αυτόματα από το σύστημα, όταν υπάρχει κάποιος λόγος.
Για παράδειγμα κατά την εγκατάσταση ενός νέου πυρήνα.

Τι μπορούμε να κάνουμε λοιπόν, για να συμμαζέψουμε το αρχικό μενού;

Οι οδηγίες με βάση τις οποίες το σύστημα δημιουργεί το grub.cfg
είναι μια σειρά από σενάρια εντολών που βρίσκονται στο /etc/grub.d

Ανάμεσα σ' αυτά βλέπουμε το 40_custom και το 20_memtest86+.

Αυτά τα δύο, είναι τ' αρχεία που θα τροποποιήσουμε,
για να προσαρμόσουμε το μενού του grub που βλέπουμε στην εκκίνηση.


  1. Alt+F2 και πληκτρολογούμε...
    Κώδικας: Επιλογή όλων
    gksu nautilus

  2. Βρίσκουμε το αρχείο /boot/grub/grub.cfg
    και με δεξί κλικ επιλέγουμε «Άνοιγμα με gedit»
    Ctrl+F και αναζήτηση για την γραμμή ### BEGIN /etc/grub.d/10_linux ###

  3. Αντιγράφουμε ότι υπάρχει από αυτή την γραμμή και μετά, μέχρι την ### END /etc/grub.d/10_linux ###
    στο αρχείο /etc/grub.d/40_custom. (αφού το έχουμε ανοίξει με το gedit)

  4. Στο αρχείο 40_custom μπορούμε να κάνουμε τις αλλαγές που θέλουμε στο μενού του grub.
    έγραψε:menuentry "Ubuntu, Linux 2.6.31-17-generic" {
    recordfail=1
    if [ -n ${have_grubenv} ]; then save_env recordfail; fi
    set quiet=1
    insmod ext2
    set root=(hd0,1)
    search --no-floppy --fs-uuid --set e1bb9bca-33f5-47e6-a4dc-f5e896ecdcd8
    linux /boot/vmlinuz-2.6.31-17-generic root=UUID=e1bb9bca-33f5-47e6-a4dc-f5e896ecdcd8 ro quiet splash
    initrd /boot/initrd.img-2.6.31-17-generic
    }
    menuentry "Ubuntu, Linux 2.6.31-17-generic (recovery mode)" {
    recordfail=1
    if [ -n ${have_grubenv} ]; then save_env recordfail; fi
    insmod ext2
    set root=(hd0,1)
    search --no-floppy --fs-uuid --set e1bb9bca-33f5-47e6-a4dc-f5e896ecdcd8
    linux /boot/vmlinuz-2.6.31-17-generic root=UUID=e1bb9bca-33f5-47e6-a4dc-f5e896ecdcd8 ro single
    initrd /boot/initrd.img-2.6.31-17-generic
    }

    Για παράδειγμα, αλλαγή της εγγραφής που φαίνεται στο μενού "UBUNTU"
    ή πλήρη διαγραφή της εγγραφής για να μην εμφανίζεται στο μενού.

    Η εγγραφή για κάθε λειτουργικό που εμφανίζεται στο μενού έχει την παρακάτω μορφή.
    Αρχίζει με menuentry και τελειώνει με }

    Αυτές οι εγγραφές, πρέπει να μπούνε με την σειρά που θέλετε να εμφανίζονται.

    menuentry "LinuxMint GNU/Linux, with Linux 3.0.0-1-amd64 (on /dev/sdb1)" {
    insmod ext2
    set root='(hd1,1)'
    search --no-floppy --fs-uuid --set 28009929-c900-4771-8010-ac55b22bb8f5
    linux /boot/vmlinuz-3.0.0-1-amd64 root=UUID=28009929-c900-4771-8010-ac55b22bb8f5 ro quiet splash nomodeset video=uvesafb:mode_option=1280x720-24@60,mtrr=3,scroll=ywrap
    initrd /boot/initrd.img-3.0.0-1-amd64
    }


  5. Για να μην εμφανίζεται η επιλογή memtest στο μενού, με δεξί κλικ στο αρχείο 20_memtest86+
    > Ιδιότητες > Δικαιώματα > απενεργοποιούμε την επιλογή «Να επιτρέπεται η εκτέλεση του αρχείου ως πρόγραμμα».

  6. Όπως στο προηγούμενο βήμα, απενεργοποιούμε την επιλογή
    «Να επιτρέπεται η εκτέλεση του αρχείου ως πρόγραμμα», για το αρχείο 10_linux


  7. Κώδικας: Επιλογή όλων
    sudo update-grub


  8. Ενεργοποιούμε εκ νέου την επιλογή «Να επιτρέπεται η εκτέλεση του αρχείου ως πρόγραμμα» για το αρχείο 10_linux


Όπως συνήθως, μετά την εγκατάσταση νέου πυρήνα θα επαναλαμβάνουμε την διαδικασία...

Στην περίπτωση dual boot με windows για να ελέγξουμε την θέση της εγγραφής για τα windows στο μενού,
απενεργοποιούμε και στη συνέχεια ενεργοποιούμε ξανά, την «εκτέλεση του αρχείου ως πρόγραμμα»
και για το αρχείο 30_os-prober (μαζί με το αρχείο 10_linux) στα βήματα 6 και 8.
(Οι αλλαγές που αφορούν την εγγραφή για τα windows στο μενού του Grub, γίνονται και αυτές στο 40_custom

Οι γραμμές στο αρχείο /boot/grub/grub.cfg που αφορούν τα windows, είναι από
### BEGIN /etc/grub.d/30_os-prober ### έως ### END /etc/grub.d/30_os-prober ###)

Πριν το άνοιγμα των αρχείων για επεξεργασία, είναι πάντα καλό, να κρατάμε αντίγραφα ασφαλείας!


Creative Commons License
Η εργασία υπάγεται στην άδεια Creative Commons Αναφορά-Μη εμπορική χρήση-Παρόμοια διανομή 3.0 Ελλάδα