Grub menüsü ve seçenekleri yeniden başlatmadan gösterilsin mi?


12

grubMenüyü komut satırından görüntülemek istiyorum . Ayrıca grub önyükleme menüsü seçeneğini seçmek ve Enterçekirdek öncesi sürücülerin yüklendiğini ve çekirdeği yüklerken önyükleme parametrelerinin geçtiğini görmek için düğmesine basın .

Bunu komut satırından yapmanın nedenleri:

  • grubMenüyü görmek için yeniden başlatma zaman alır.
  • grubMenünün bir resmini çekmek ve resmi web sitelerinde yayınlamak gariptir . Ubuntu çalışır durumdayken ekran görüntüsü almak daha kolaydır.
  • To editile başsız menü seçeneği eve ekran okumak zor olduğu için bir resim çoğunlukla zordur alır. Bu işlevle bunun yerine kopyalayıp yapıştırabilirsiniz.
  • apt list --installed | grep linux-imageVeya yerine tüm çekirdek sürümlerini göstermek için bu işlevi kullanmak daha kolay olabilir ls /boot/vml*.
  • Grub menü numarasını hızlı bir şekilde görmek için grub-rebootve grub-set-defaultkomutlar için değerlidir .

Grub menüsünü komut satırından nasıl boyayabilir, dahili grub menüsü giriş numaralarına nasıl bakabilir ve belirli bir seçenek için önyükleme parametrelerini nasıl görüntüleyebilirim?

Yanıtlar:


12

Güncelleme: 7 Mayıs 2018

: Senaryoyu Gelişmekte 18.04 LTS yükseltme test etmek için Bash komut klonu Ubuntu için yeni bölüme Sana malign için menüyü neden bazı gülünç uzun menü seçeneklerini olsun keşfetti:

4>8  Ubuntu, with Linux 4.14.30-041430-generic (recovery mode) (on /dev/nvme0n1p8)

Bu, bugün 68 karakterden daha uzun satırlar kesilerek düzeltildi.

Güncelleme: 5 Nisan 2018

Bu güncelleme grub-menu.shönceki cevaba çok daha üstün bir versiyon getiriyor (aşağıda hala mevcuttur). Yeni grub menüsü özellikleri:

  • Grub 2 menü giriş numaralarını görüntüler. yani 0, 1, 1>0, 1>1... 2,3
  • Varsayılan kısa sürüm (upstart)ve (recover mode)alt menü seçenekleri ayarlanabilir.
  • Parametre 1, varsayılanı geçersiz kılmak için shortveya olarak geçirilebilir long.
  • sütun başlıkları shortveya longayara göre dinamik olarak biçimlendirilir .

Renkli Ekran görüntüsü (kısa versiyon)

grub-menu.sh

Metin Ekran görüntüsü (uzun versiyon)

Grub Version: 2.02~beta2-36ubuntu3.15


        ┌─────────┤ Use arrow, page, home & end keys. Tab toggle option ├──────────┐
        │ Menu No. --------------- Menu Name ---------------                       │ 
        │                                                                          │ 
        │     0    Ubuntu                                                     ↑    │ 
        │     1    Advanced options for Ubuntu                                ▮    │ 
        │     1>0  Ubuntu, with Linux 4.14.31-041431-generic                  ▒    │ 
        │     1>1  Ubuntu, with Linux 4.14.31-041431-generic (upstart)        ▒    │ 
        │     1>2  Ubuntu, with Linux 4.14.31-041431-generic (recovery mode)  ▒    │ 
        │     1>3  Ubuntu, with Linux 4.14.30-041430-generic                  ▒    │ 
        │     1>4  Ubuntu, with Linux 4.14.30-041430-generic (upstart)        ▒    │ 
        │     1>5  Ubuntu, with Linux 4.14.30-041430-generic (recovery mode)  ▒    │ 
        │     1>6  Ubuntu, with Linux 4.14.27-041427-generic                  ▒    │ 
        │     1>7  Ubuntu, with Linux 4.14.27-041427-generic (upstart)        ▒    │ 
        │     1>8  Ubuntu, with Linux 4.14.27-041427-generic (recovery mode)  ▒    │ 
        │     1>9  Ubuntu, with Linux 4.14.24-041424-generic                  ▒    │ 
        │     1>10 Ubuntu, with Linux 4.14.24-041424-generic (upstart)        ▒    │ 
        │     1>11 Ubuntu, with Linux 4.14.24-041424-generic (recovery mode)  ▒    │ 
        │     1>12 Ubuntu, with Linux 4.14.23-041423-generic                  ▒    │ 
        │     1>13 Ubuntu, with Linux 4.14.23-041423-generic (upstart)        ↓    │ 
        │                                                                          │ 
        │                                                                          │ 
        │                   <Display Grub Boot>        <Exit>                      │ 
        │                                                                          │ 
        └──────────────────────────────────────────────────────────────────────────┘ 

grub-menu.sh bash betiği

Önceki sürümleri grub-display.shve grub-display-lite.shkodda birçok tweaking seçenekleri gerekli. grub-menu.shsadece bir seçenek var:

# Default for hide duplicate and triplicate options with (upstart) and (recovery mode)?
HideUpstartRecovery=false

Değeri trueveya olarak ayarlayın false.

Komut dosyası aşağıdakiler kullanılarak çağrılırken varsayılan biçim geçersiz kılınabilir:

grub-menu.sh short

veya:

grub-menu.sh long

Kod:

#!/bin/bash

# NAME: grub-menu.sh
# PATH: $HOME/bin
# DESC: Written for AU Q&A: /ubuntu//q/1019213/307523
# DATE: Apr 5, 2018. Modified: May 7, 2018.

# $TERM variable may be missing when called via desktop shortcut
CurrentTERM=$(env | grep TERM)
if [[ $CurrentTERM == "" ]] ; then
    notify-send --urgency=critical "$0 cannot be run from GUI without TERM environment variable."
    exit 1
fi

AllMenusArr=()      # All menu options.
# Default for hide duplicate and triplicate options with (upstart) and (recovery mode)?
HideUpstartRecovery=false
if [[ $1 == short ]] ; then
    HideUpstartRecovery=true    # override default with first passed parameter "short"
elif [[ $1 == long ]] ; then
    HideUpstartRecovery=false   # override default with first passed parameter "long"
fi
SkippedMenuEntry=false  # Don't change this value, automatically maintained
InSubMenu=false     # Within a line beginning with `submenu`?
InMenuEntry=false   # Within a line beginning with `menuentry` and ending in `{`?
NextMenuEntryNo=0   # Next grub internal menu entry number to assign
# Major / Minor internal grub submenu numbers, ie `1>0`, `1>1`, `1>2`, etc.
ThisSubMenuMajorNo=0
NextSubMenuMinorNo=0
CurrTag=""          # Current grub internal menu number, zero based
CurrText=""         # Current grub menu option text, ie "Ubuntu", "Windows...", etc.
SubMenuList=""      # Only supports 10 submenus! Numbered 0 to 9. Future use.

while read -r line; do
    # Example: "           }"
    BlackLine="${line//[[:blank:]]/}" # Remove all whitespace
    if [[ $BlackLine == "}" ]] ; then
        # Add menu option in buffer
        if [[ $SkippedMenuEntry == true ]] ; then
            NextSubMenuMinorNo=$(( $NextSubMenuMinorNo + 1 ))
            SkippedMenuEntry=false
            continue
        fi
        if [[ $InMenuEntry == true ]] ; then
            InMenuEntry=false
            if [[ $InSubMenu == true ]] ; then
                NextSubMenuMinorNo=$(( $NextSubMenuMinorNo + 1 ))
            else
                NextMenuEntryNo=$(( $NextMenuEntryNo + 1 ))
            fi
        elif [[ $InSubMenu == true ]] ; then
            InSubMenu=false
            NextMenuEntryNo=$(( $NextMenuEntryNo + 1 ))
        else
            continue # Future error message?
        fi
        # Set maximum CurrText size to 68 characters.
        CurrText="${CurrText:0:67}"
        AllMenusArr+=($CurrTag "$CurrText")
    fi

    # Example: "menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu" ...
    #          "submenu 'Advanced options for Ubuntu' $menuentry_id_option" ...
    if [[ $line == submenu* ]] ; then
        # line starts with `submenu`
        InSubMenu=true
        ThisSubMenuMajorNo=$NextMenuEntryNo
        NextSubMenuMinorNo=0
        SubMenuList=$SubMenuList$ThisSubMenuMajorNo
        CurrTag=$NextMenuEntryNo
        CurrText="${line#*\'}"
        CurrText="${CurrText%%\'*}"
        AllMenusArr+=($CurrTag "$CurrText") # ie "1 Advanced options for Ubuntu"

    elif [[ $line == menuentry* ]] && [[ $line == *"{"* ]] ; then
        # line starts with `menuentry` and ends with `{`
        if [[ $HideUpstartRecovery == true ]] ; then
            if [[ $line == *"(upstart)"* ]] || [[ $line == *"(recovery mode)"* ]] ; then
                SkippedMenuEntry=true
                continue
            fi
        fi
        InMenuEntry=true
        if [[ $InSubMenu == true ]] ; then
            : # In a submenu, increment minor instead of major which is "sticky" now.
            CurrTag=$ThisSubMenuMajorNo">"$NextSubMenuMinorNo
        else
            CurrTag=$NextMenuEntryNo
        fi
        CurrText="${line#*\'}"
        CurrText="${CurrText%%\'*}"

    else
        continue    # Other stuff - Ignore it.
    fi

done < /boot/grub/grub.cfg

LongVersion=$(grub-install --version)
ShortVersion=$(echo "${LongVersion:20}")
DefaultItem=0

if [[ $HideUpstartRecovery == true ]] ; then
    MenuText="Menu No.     ----------- Menu Name -----------"
else
    MenuText="Menu No. --------------- Menu Name ---------------"
fi

while true ; do

    Choice=$(whiptail \
        --title "Use arrow, page, home & end keys. Tab toggle option" \
        --backtitle "Grub Version: $ShortVersion" \
        --ok-button "Display Grub Boot" \
        --cancel-button "Exit" \
        --default-item "$DefaultItem" \
        --menu "$MenuText" 24 76 16 \
        "${AllMenusArr[@]}" \
        2>&1 >/dev/tty)

    clear
    if [[ $Choice == "" ]]; then break ; fi
    DefaultItem=$Choice

    for (( i=0; i < ${#AllMenusArr[@]}; i=i+2 )) ; do
        if [[ "${AllMenusArr[i]}" == $Choice ]] ; then
            i=$i+1
            MenuEntry="menuentry '"${AllMenusArr[i]}"'"
            break
        fi
    done

    TheGameIsAfoot=false
    while read -r line ; do
        if [[ $line = *"$MenuEntry"* ]]; then TheGameIsAfoot=true ; fi
        if [[ $TheGameIsAfoot == true ]]; then
            echo $line
            if [[ $line = *"}"* ]]; then break ; fi
        fi
    done < /boot/grub/grub.cfg

    read -p "Press <Enter> to continue"

done

exit 0

Önceki sürümler (önerilmez)

Menü giriş numaralarının grub 1 formatını takip ettiği orijinal cevap aşağıdadır.

grub-display.sh grub menü seçeneklerini ve parametrelerini görüntüler

Üçüncü taraf uygulamalara güvenmeden, grubherhangi bir seçenek için menüyü ve önyükleme parametrelerini görüntülemek için bir bash betiği kullanabilirsiniz . Önyükleme parametreleri yalnızca cat /proc/cmdlinedeğerlerden daha fazlasıdır . Ayrıca, Linux önyüklenmeden önce yüklenen sürücüleri de içerirler.

grub-display.sh bash betiği

Kopyalayıp yapıştırabileceğiniz tam program listesi:

#!/bin/bash

# NAME: grub-display.sh
# PATH: $HOME/bin
# DESC: Written for AU Q&A: /ubuntu//q/1019213/307523
# DATE: Mar 24, 2018. Modified: Mar 26, 2018.

# $TERM variable may be missing when called via desktop shortcut
CurrentTERM=$(env | grep TERM)
if [[ $CurrentTERM == "" ]] ; then
    notify-send --urgency=critical "$0 cannot be run from GUI without TERM environment variable."
    exit 1
fi

# Must have the dialog package. On Servers, not installed by default
command -v dialog >/dev/null 2>&1 || { echo >&2 "dialog package required but it is not installed.  Aborting."; exit 99; }

# Version without upstart and recovery options displayed
#awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
#        | grep -v upstart | grep -v recovery > ~/.grub-display-menu

# Version with upstart and recovery options displayed
awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
        > ~/.grub-display-menu

MenuArr=()

while read -r line; do 
    MenuNmbr=${line%% *}
    MenuName=${line#* }
    MenuArr+=($MenuNmbr "$MenuName")
done < ~/.grub-display-menu
rm ~/.grub-display-menu

LongVersion=$(grub-install --version)
ShortVersion=$(echo "${LongVersion:20}")
DefaultItem=0

while true ; do

    Choice=$(dialog \
        --title "Use arrow, page, home & end keys. Tab toggle option" \
        --backtitle "Grub Version: $ShortVersion" \
        --ok-label "Display Grub Boot" \
        --cancel-label "Exit" \
        --default-item "$DefaultItem" \
        --menu "Menu Number       ----------- Menu Name ----------" 24 76 16 \
        "${MenuArr[@]}" \
        >/dev/tty)

    clear
    if [[ $Choice == "" ]]; then break ; fi
    DefaultItem=$Choice

    for (( i=0; i < ${#MenuArr[@]}; i=i+2 )) ; do
        if [[ "${MenuArr[i]}" == $Choice ]] ; then
            i=$i+1
            MenuEntry="menuentry '"${MenuArr[i]}"'"
            break
        fi
    done

    TheGameIsAfoot=false
    while read -r line ; do
        if [[ $line = *"$MenuEntry"* ]]; then TheGameIsAfoot=true ; fi
        if [[ $TheGameIsAfoot == true ]]; then
            echo $line
            if [[ $line = *"}"* ]]; then break ; fi
        fi
    done < /boot/grub/grub.cfg

    read -p "Press <Enter> to continue"

done

exit 0

Ubuntu Sunucusu kullanıcılarına not

Bu bash betiği Ubuntu Masaüstü için tasarlanmıştır. dialogVarsayılan olarak paketin yüklü olmadığı Ubuntu Sunucusu ve diğer Linux Dağıtımları için grub-display-lite.shaşağıda adlandırılan farklı bir komut dosyası eklenmiştir. Bu sürüm whiptailyerine kullanır dialog.

Menü boyutunu% 66 küçültme

Görüntülenen grub menüsü seçenek listesini kısaltmak için (upstart)ve (recovery)seçeneklerini kaldırabilirsiniz . Bunu yapmak için şu satırlar:

# Version without upstart and recovery options displayed
awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
        | grep -v upstart | grep -v recovery > ~/.grub-display-menu

Ardından bu satırlara yorumlar uygulayın:

# Version with upstart and recovery options displayed
#awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
#        > ~/.grub-display-menu

Ekran görüntüleri

Komut satırından çağrıldığında şöyle görünür. Ne yazık ki menüyü kopyalayıp yapıştıramadım ve kullanmak zorunda kaldım Print Screen:

grub-display.sh.png

Kopyala ve yapıştır için fare desteğini kapatma

 Grub Version: 2.02~beta2-36ubuntu3.15
 ──────────────────────────────────────────────────────────────────────────────────────────
       ┌──────────Use arrow, page, home & end keys. Tab toggle option─────────────┐
        Menu Number  ----------- Menu Name ----------                              
        ┌──────────────────────────────────────────────────────────────────────┐   
            0   Ubuntu                                                           
            1   Ubuntu, with Linux 4.14.30-041430-generic                        
            2   Ubuntu, with Linux 4.14.30-041430-generic (upstart)              
            3   Ubuntu, with Linux 4.14.30-041430-generic (recovery mode)        
            4   Ubuntu, with Linux 4.14.27-041427-generic                        
            5   Ubuntu, with Linux 4.14.27-041427-generic (upstart)              
            6   Ubuntu, with Linux 4.14.27-041427-generic (recovery mode)        
            7   Ubuntu, with Linux 4.14.24-041424-generic                        
            8   Ubuntu, with Linux 4.14.24-041424-generic (upstart)              
            9   Ubuntu, with Linux 4.14.24-041424-generic (recovery mode)        
            10  Ubuntu, with Linux 4.14.23-041423-generic                        
            11  Ubuntu, with Linux 4.14.23-041423-generic (upstart)              
            12  Ubuntu, with Linux 4.14.23-041423-generic (recovery mode)        
            13  Ubuntu, with Linux 4.14.21-041421-generic                        
            14  Ubuntu, with Linux 4.14.21-041421-generic (upstart)              
            15  Ubuntu, with Linux 4.14.21-041421-generic (recovery mode)        
        └────↓(+)──────────────────────────────────────────────────────16%─────┘   
                                                                                   
       ├──────────────────────────────────────────────────────────────────────────┤  
                    <Display Grub Boot>       <      Exit       >                  
       └──────────────────────────────────────────────────────────────────────────┘  

Varsayılan fare desteği etkinleştirildiğinde, ekranı panoya kopyalayamazsınız, ancak Print Screengrafik ekran görüntüsü için kullanması gerekir . Kopyala ve yapıştır özelliğini desteklemek için şu satırları arayarak fare desteğini devre dışı bırakmanız gerekir:

    --default-item "$DefaultItem" \
    --no-mouse \
    --menu "Menu Number       ----------- Menu Name ----------" 24 76 16 \

Argüman --no-mouseaşağıya eklenmiştir --default-item. Bu, fare desteğini kaybettiğiniz anlamına gelir, ancak metni vurgulayıp Ctrl+ tuşuna basarak daha iyi çözünürlük ve panoya kopyalama özelliği kazanırsınız C.

Grub önyükleme parametrelerini görüntüle

Bir seçeneği vurgulamak için gezinme tuşlarını kullanın ve Enterbunun için önyükleme parametrelerini görmek için tuşuna basın :

menuentry 'Ubuntu, with Linux 4.14.27-041427-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.14.27-041427-generic-advanced-f3f8e7bc-b337-4194-88b8-3a513f6be55b' {
recordfail
savedefault
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root f3f8e7bc-b337-4194-88b8-3a513f6be55b
else
search --no-floppy --fs-uuid --set=root f3f8e7bc-b337-4194-88b8-3a513f6be55b
fi
echo 'Loading Linux 4.14.27-041427-generic ...'
linux /boot/vmlinuz-4.14.27-041427-generic root=UUID=f3f8e7bc-b337-4194-88b8-3a513f6be55b ro quiet splash loglevel=0 vga=current udev.log-priority=3 fastboot kaslr acpiphp.disable=1 crashkernel=384M-2G:128M,2G-:256M $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.14.27-041427-generic
}
Press <Enter> to continue

Grub menüsü girişi # 94

menuentry 'Windows Boot Manager (on /dev/nvme0n1p2)' --class windows --class os $menuentry_id_option 'osprober-efi-D656-F2A8' {
savedefault
insmod part_gpt
insmod fat
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root D656-F2A8
else
search --no-floppy --fs-uuid --set=root D656-F2A8
fi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
Press <Enter> to continue

Grub menüsü girişi # 96

menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
Press <Enter> to continue

grub-display-lite.sh Ubuntu Sunucusu için

Ubuntu Server ve Lubuntu'nun dialogUbuntu Desktop'ta olduğu gibi varsayılan olarak kurulu paketleri yoktur . whiptailÇoğu Linux Dağıtımında varsayılan olarak bulunan pakete dayanarak bu kullanıcılar için farklı bir sürüm yazılmıştır .

Dezavantajı whiptaildaha az işlevdir, ancak bu durumda kullanılmazlar. Başka bir dezavantaj daha az renk gibi görünüyor, ancak bu bazı insanlar için okumayı kolaylaştırabilir. Avantajları vardır whiptailüzerinde dialogböyle muhtemelen daha hızlı panoya kopyalama, fare kaydırma tekerleği desteği ve gibi işleme.

grub-display-lite.sh bash betiği

#!/bin/bash

# NAME: grub-display-lite.sh
# PATH: $HOME/bin
# DESC: Written for AU Q&A: /ubuntu//q/1019213/307523
# DATE: Mar 26, 2018.
# NOTE: "lite" version written for Ubuntu Server and Lubuntu which do
#       not have `dialog` installed by default. `whiptail` is used
#       instead. Nice consequences are better resolution, mouse scroll
#       wheel and copy to clipboard support.

# $TERM variable may be missing when called via desktop shortcut
CurrentTERM=$(env | grep TERM)
if [[ $CurrentTERM == "" ]] ; then
    notify-send --urgency=critical "$0 cannot be run from GUI without TERM environment variable."
    exit 1
fi

# Version without upstart and recovery options displayed
awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
        | grep -v upstart | grep -v recovery > ~/.grub-display-menu

# Version with upstart and recovery options displayed
#awk -F\' '/menuentry / { print i++, $2}' /boot/grub/grub.cfg \
#        > ~/.grub-display-menu

MenuArr=()

while read -r line; do 
    MenuNmbr=${line%% *}
    MenuName=${line#* }
    MenuArr+=($MenuNmbr "$MenuName")
done < ~/.grub-display-menu
rm ~/.grub-display-menu

LongVersion=$(grub-install --version)
ShortVersion=$(echo "${LongVersion:20}")
DefaultItem=0

while true ; do

    Choice=$(whiptail \
        --title "Use arrow, page, home & end keys. Tab toggle option" \
        --backtitle "Grub Version: $ShortVersion" \
        --ok-button "Display Grub Boot" \
        --cancel-button "Exit" \
        --default-item "$DefaultItem" \
        --menu "Menu Number       ----------- Menu Name ----------" 24 76 16 \
        "${MenuArr[@]}" \
       >/dev/tty)

    clear
    if [[ $Choice == "" ]]; then break ; fi
    DefaultItem=$Choice

    for (( i=0; i < ${#MenuArr[@]}; i=i+2 )) ; do
        if [[ "${MenuArr[i]}" == $Choice ]] ; then
            i=$i+1
            MenuEntry="menuentry '"${MenuArr[i]}"'"
            break
        fi
    done

    TheGameIsAfoot=false
    while read -r line ; do
        if [[ $line = *"$MenuEntry"* ]]; then TheGameIsAfoot=true ; fi
        if [[ $TheGameIsAfoot == true ]]; then
            echo $line
            if [[ $line = *"}"* ]]; then break ; fi
        fi
    done < /boot/grub/grub.cfg

    read -p "Press <Enter> to continue"

done

exit 0

grub-display-lite.shOlarak bash komut temelde aynı olup grub-display.sholmadığını hiçbir hata mesajı yoktur dışında dialogyüklü değildir. Ayrıca bazı whiptailargümanların farklı adları vardır.

grub-display-lite.sh Ekran görüntüleri

Renkli ekranın okunması paketi grub-displaykullanandan daha kolay görünüyor dialog:

grub-display-lite.sh

Panoya kopyalamak için değişiklik yapılması gerekmeyen metin tabanlı görüntü:

Grub Version: 2.02~beta2-36ubuntu3.15


        ┌─────────┤ Use arrow, page, home & end keys. Tab toggle option ├──────────┐
         Menu Number       ----------- Menu Name ----------                        
                                                                                   
                      55 Ubuntu, with Linux 4.13.9-041309-generic                 
                      58 Ubuntu, with Linux 4.10.0-42-generic                     
                      61 Ubuntu, with Linux 4.10.0-40-generic                     
                      64 Ubuntu, with Linux 4.10.0-38-generic                     
                      67 Ubuntu, with Linux 4.10.0-37-generic                     
                      70 Ubuntu, with Linux 4.10.0-28-generic                     
                      73 Ubuntu, with Linux 4.9.77-040977-generic                 
                      76 Ubuntu, with Linux 4.9.76-040976-generic                 
                      79 Ubuntu, with Linux 4.4.0-104-generic                     
                      82 Ubuntu, with Linux 4.4.0-103-generic                     
                      85 Ubuntu, with Linux 4.4.0-101-generic                     
                      88 Ubuntu, with Linux 4.4.0-98-generic                      
                      91 Ubuntu, with Linux 3.16.53-031653-generic                
                      94 Windows Boot Manager (on /dev/nvme0n1p2)                 
                      95 Windows Boot Manager (on /dev/sda1)                      
                      96 System setup                                             
                                                                                   
                                                                                   
                           <Display Grub Boot>        <Exit>                       
                                                                                   
        └──────────────────────────────────────────────────────────────────────────┘ 

Yukarıda belirtildiği gibi, burada gösterilen grub menüsünün boyutunu (upstart)ve (recovery)menü seçeneklerini kaldırırken% 66 azaltabilirsiniz . Burada durum böyledir, ancak sonuç olarak detay çizgileri daralır ve başlıklar mükemmel bir şekilde sıralanmaz. Bu satırı değiştirerek sütun başlıklarını değiştirebilirsiniz:

    --menu "Menu Number       ----------- Menu Name ----------" 24 76 16 \

böyle bir şeye:

    --menu "      Menu Number ----------- Menu Name ----------" 24 76 16 \

Mevcut bilgileri görmek için kullanın cat /proc/cmdline. Grub menüsünü bir sonraki güncellemenizde grubun kullanacağı seçenekleri görmek için grep GRUB_CMDLINE_LINUX /etc/default/grub. Bu ikinci ayar grubu uygun veya her update-grubçalıştırıldığında kullanılacaktır. Tüm seçenekleri basit less /boot/grub/grub.cfgveya benzer görmek için.
Panter

@Panther Daha kullanışlılık göstermek için # 94 ve # 96 grub menü girişlerini (sistemimden) ekledim. Dikkate alınması gereken diğer bir şey, bir menü kullanmanın hatırlamaktan catve grepçoğumuz için daha kolay olmasıdır .
WinEunuuchs2Unix

+1. Metin modu menülerinin dialogkullanımının yararlı olabileceğini kabul ediyorum .
sudodus

Peki bu müthiş anwser için bir dipnot ubuntu bazı tatlar iletişim içermez lubuntu 16.04 varsayılan olarak değil.
ianorlin

@ianorlin daha iyi bir versiyonunu yayınladı.
WinEunuuchs2Unix
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.