Dimensione: 7737
Commento: controllata, da rileggere
|
Dimensione: 21126
Commento: update
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 3: | Linea 3: |
[[BR]] [[Indice()]] |
<<BR>> <<Indice(depth=2 align=right)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=82907&start=60"; rilasci="12.04 11.10")>> |
Linea 7: | Linea 8: |
In questa guida vengono descritti diversi metodi per modificare il menù di '''Grub''' aggiungendo ed eliminando voci dall'elenco. = Aggiungere voci al menù = Il file `grub.cfg` viene aggiornato quando vengono eseguiti i comandi '''update-grub''' o '''update-grub2'''. Per modificare questo file è necessario utilizzare, modificando, gli appositi script presenti nella directory `/etc/grub.d/`, senza modificare direttamente il file `grub.cfg` stesso. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Il primo commento del file'' `grub.cfg` ''è '''''DO NOT EDIT THIS FILE'''''. Il file è in sola lettura e ritorna in questo stato ogni qual volta viene eseguito il comando'' '''update-grub'''. || == Voci automatiche == Quando viene eseguito il comando '''update-grub2''', viene letto il file `/etc/default/grub` e i file presenti in `/etc/grub.d`. In questo modo vengono impostati i parametri di visualizzazione del menù di '''Grub''' e viene eseguita una ricerca per la presenza di kernel Linux, altri sistemi operativi ed elementi presenti negli script creati dall'utente in `/etc/grub.d`. |
In questa guida vengono descritti diversi metodi per modificare il menù di '''GRUB'''. Qualsiasi modifica deve essere fatta sugli script di configurazione e non sul file in sola lettura `/boot/grub/grub.cfg` come avveniva in precedenza con '''GRUB-legacy''' e il file `/boot/grub/menu.lst`. Per ulteriori dettagli sui file di configurazione di '''GRUB''' si rimanda alla apposita [[AmministrazioneSistema/Grub/FileCartelle|guida]]. = Modificare il nome della release = == Modificare il grub distributor == * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/default/grub` e modificare la seguente opzione: {{{ GRUB_DISTRIBUTOR=esempio }}} scrivendo al posto di «esempio» il nome desiderato. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Modificare il nome nelle voci == Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e cercare le seguenti righe: {{{ while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" }}} aggiungere immediatamente dopo: {{{ codename="`lsb_release -cs`" version_no_generic="`echo ${version} | cut -d "-" -f 1-2`" }}} è ora possibile modificare il nome visualizzato per la propria distribuzione modificando le seguenti righe: {{{ linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" }}} aggiungendo o eliminando le variabili come da tabella: ||<tablestyle="width:60%" : 30% style="background-color:#cccccc;">'''Opzione''' ||<style="background-color:#cccccc;":>'''Significato''' || ||${OS}|| Ubuntu, Kubuntu, Xubuntu, Lubuntu || ||${version}||la versione del kernel, es: 3.0.0-15-generic|| ||${codename}||il nome in codice della release, es: precise|| ||${version_no_generic}||la versione del kernel senza parte terminale|| Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Modificare "with Linux" == * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e cercare le seguenti righe: {{{ if ${recovery} ; then title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" else title="$(gettext_quoted "%s, with Linux %s")" fi }}} cancellare o modificare a piacere "`, with Linux`" ad esempio traducendo in italiano. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} = Aggiungere voci = Il nome dello script posizionato in `/etc/grub.d/` determina l'ordine delle voci nel menù. Il numero iniziale ne indica la priorità, modificandolo è possibile modificare l'ordine delle voci. |
Linea 21: | Linea 90: |
||<tablestyle="width:100%" : 15% style="background-color:#FB8B00;">'''File''' ||<style="background-color:#FB8B00;":>'''Significato''' || | ||<tablestyle="width:100%" : 15% style="background-color:#cccccc;">'''File''' ||<style="background-color:#cccccc;":>'''Significato''' || |
Linea 30: | Linea 99: |
Il nome del file determina l'ordine nel menù. Le voci che iniziano con 30 verranno posizionate prima di quelle che iniziano con 40 e così via. Qualsiasi file creato da un utente deve essere reso eseguibile. Da un terminale digitare: {{{ sudo chmod u+x /etc/grub.d/NOME_FILE }}} = Voci definite dall'utente = Gli utenti con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] possono creare script all'interno della directory `/etc/grub.d/`, script che verranno poi incorporati nel file `grub.cfg` quando viene eseguito il comando '''update-grub'''. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''I file appena creati dovrebbero avere il nome nel formato `XX_nome`, dove la dicitura XX corrisponde a un numero. È utile ricordare che l'ordine con il quale sono eseguiti i file è alfabetico crescente, i file il cui nome inizia con una cifra hanno priorità su quelli in cui il nome inizia con una lettera.''|| Qualsiasi file creato da un utente deve essere reso eseguibile. Da un terminale digitare: {{{ sudo chmod u+x /etc/grub.d/NOME_FILE }}} == Un semplice esempio == Questo file crea una voce per eseguire l'installazione di un CD di ripristino sulla partizione `sdb10` e aggiungere al menù un kernel personalizzato dalla partizione `sda1`. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Il conteggio dei device parte da 0, ovvero sd'''a''' è indicato come '''hd0''', sd'''b''' è '''hd1''' e così via. Il nome delle partizioni parte invece da 1, la '''prima''' partizione è indicata come sda'''1''', la '''quinta''' partizione è sda'''5''', il conteggio delle partizioni non parte da zero.''|| {{{ |
== Voci automatiche == Per aggiungere una voce automatica è sufficiente rendere eseguibile il file di configurazione corrispettivo alla voce desiderata situato in `/etc/grub.d/`: * Aprire una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] e digitare: {{{ sudo chmod u+x /etc/grub.d/XX_script }}} prestando attenzione a sostituire «XX_script» con il nome dello script desiderato. * Applicare la modifica digitando in una finestra di il seguente comando: {{{ sudo update-grub }}} == Voci definite dall'utente == * Creare con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] un file in `/etc/grub.d/` in modo che rispetti la nomenclatura standard `XX_script` * Incollare il seguente contenuto per le voci '''GNU/Linux''': {{{ |
Linea 54: | Linea 118: |
echo "Adding Custom Kernel & SystemRescue" >&2 cat << EOF menuentry "Ubuntu, linux 2.6.31-11-custom" { set root=(hd0,9) linux /boot/vmlinuz-2.6.31-11-custom root=UUID=c6829e27-2350-4e84-bdbb-91b83f018f98 ro initrd /boot/initrd.img-2.6.28-11-generic |
cat << _EOF menuentry "Nome distribuzione" { set root=(hdX,Y) linux /boot/vmlinuz-X.Y root=UUID=xxxxxxxxxxxxxxxxxxxxx initrd /boot/initrd.img-X.Y |
Linea 61: | Linea 124: |
menuentry "Boot SystemRescue CD from hard drive" { set root=(hd1,10) linux /sysrcd/rescuecd subdir=sysrcd setkmap=us initrd /sysrcd/initram.igz } EOF }}} Ai fini della modifica del menù, la riga: {{{ "echo "Adding SystemRescueCD" >&2" }}} non è necessaria, viene mostrata durante l'esecuzione del comando '''update-grub2'''. La comparsa della riga nel terminale indica l'avvenuta lettura ed esecuzione del nuovo script. Se lo script è corretto, le voci vengono inserite nel menu di `grub.cfg`, in caso contrario non viene effettuata alcuna modifica. = Rimuovere voci = Le voci dovrebbero essere eliminate modificando o rimuovendo i file nella directory `/etc/grub.d`. Il file `/boot/grub/grub.cfg` è a sola lettura e non dovrebbe essere modificato direttamente. == Kernel vecchi e altri sistemi operativi == La strada più semplice per eliminare voci di kernel vecchi dal menù di '''Grub''' in maniera automatica, consiste nel disinstallare i pacchetti dei relativi kernel non più utilizzati. Il file `grub.cfg` verrà aggiornato automaticamente. Anche altri sistemi operativi rimossi dal computer, non saranno più visualizzati nel menù una volta eseguito il comando '''update-grub'''. |
_EOF }}} prestando attenzione ad inserire i parametri desiderati come da tabella: ||<tablestyle="width:100%" : 30% style="background-color:#cccccc;">'''Opzione''' ||<style="background-color:#cccccc;":>'''Significato''' || ||`Nome distribuzione`|| Il nome desiderato per la voce || ||`hdX,Y`||La partizione desiderata|| ||`/boot/vmlinuz-X.Y`||Il file vmlinuz specifico del kernel desiderato visionabile in `/boot/`|| ||`xxxxxxxxxxxxxxxxxxxxx`||Il codice UUID della partizione desiderata ottenibile digitando in un [[AmministrazioneSistema/RigaDiComando|terminale]] `sudo blkid /dev/sdXY`|| ||`/boot/initrd.img-X.Y`||Il file initrd.img specifico del kernel desiderato visionabile in `/boot/`|| * Incollare il seguente contenuto per le voci inerenti ad altri sistemi operativi: {{{ #!/bin/sh cat << _EOF menuentry "Nome sistema operativo" { set root=(hdX,Y) chainloader +1 } _EOF }}} prestando attenzione a sostituire «Nome sistema operativo» con il nome desiderato per la voce e «hdX,Y» con la partizione desiderata. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} = Limitare e rimuovere voci = == Disabilitare script == È possibile disabilitare uno [[AmministrazioneSistema/Grub/FileCartelle|script di configurazione]] per fare in modo che tutte le voci legate ad esso non compaiano nel menù di '''GRUB''' privandolo dei permessi di esecuzione: * Digitare in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo chmod -x /etc/grub.d/XX_script }}} prestando attenzione a sostituire «XX_script» col nome dello script desiderato. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Kernel vecchi == La strada più semplice per eliminare voci di kernel vecchi dal menù di '''Grub''' in maniera automatica, consiste nel disinstallare i pacchetti dei relativi kernel non più utilizzati. Il file `grub.cfg` verrà aggiornato automaticamente. È tuttavia possibile impostare un limite ai kernel visualizzati senza rimuoverli dalla propria installazione: * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e rintracciare le seguenti righe: {{{ while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" initrd= for i in "initrd.img-${version}" "initrd-${version}.img" \ "initrd-${version}" "initramfs-${version}.img" \ "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ "initrd-${alt_version}" "initramfs-${alt_version}.img" \ "initramfs-genkernel-${version}" \ "initramfs-genkernel-${alt_version}"; do if test -e "${dirname}/${i}" ; then initrd="$i" break fi done config= for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do if test -e "${i}" ; then config="${i}" break fi done initramfs= if test -n "${config}" ; then initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` fi if test -n "${initrd}" ; then echo "Found initrd image: ${dirname}/${initrd}" >&2 elif test -z "${initramfs}" ; then # "UUID=" magic is parsed by initrd or initramfs. Since there's # no initrd or builtin initramfs, it can't work here. linux_root_device_thisversion=${GRUB_DEVICE} fi linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '` }}} * Aggiungere le seguenti righe: {{{ COUNTER=0 LINUX_KERNELS_DISPLAYED=X }}} prima del testo sopraccitato, prestando attenzione a sostituire la «X» con il numero di kernel desiderati, e {{{ COUNTER=`expr $COUNTER + 1` if [ $COUNTER -eq $LINUX_KERNELS_DISPLAYED ]; then list="" fi }}} dopo il testo, ottenendo un risultato simile: {{{ COUNTER=0 LINUX_KERNELS_DISPLAYED=X while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" initrd= for i in "initrd.img-${version}" "initrd-${version}.img" \ "initrd-${version}" "initramfs-${version}.img" \ "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ "initrd-${alt_version}" "initramfs-${alt_version}.img" \ "initramfs-genkernel-${version}" \ "initramfs-genkernel-${alt_version}"; do if test -e "${dirname}/${i}" ; then initrd="$i" break fi done config= for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do if test -e "${i}" ; then config="${i}" break fi done initramfs= if test -n "${config}" ; then initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` fi if test -n "${initrd}" ; then echo "Found initrd image: ${dirname}/${initrd}" >&2 elif test -z "${initramfs}" ; then # "UUID=" magic is parsed by initrd or initramfs. Since there's # no initrd or builtin initramfs, it can't work here. linux_root_device_thisversion=${GRUB_DEVICE} fi linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '` COUNTER=`expr $COUNTER + 1` if [ $COUNTER -eq $LINUX_KERNELS_DISPLAYED ]; then list="" fi }}} * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Kernel specifici == Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/boot/grub/grub.cfg` e annotare la versione del kernel desiderata, ad esempio `3.0.X-Y-generic`. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e cercare le seguenti righe: {{{ linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi }}} Inserire prima {{{ if [ ${version} != "X.Y.Z-generic" ]; then }}} facendo anttenzione a sostituire «X.Y.Z-generic» con la versione annotata in precedenza e inserire alla fine {{{ fi }}} ottenendo qualcosa di simile a questo: {{{ if [ ${version} != "X.Y.Z-generic" ]; then linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi fi }}} Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Altri sistemi operativi rimossi == Una volta disinstallato un sistema operativo, per eliminare la sua voce nel menù di '''GRUB''', è sufficiente aggiornare il boot loader digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} |
Linea 88: | Linea 366: |
Per rimuovere '''memtest86+''' è sufficiente togliere i permessi di esecuzione al file `/etc/grub.d/20_memtest86+`. Dalla riga di comando digitare: {{{ | Per rimuovere '''memtest86+''' è sufficiente togliere i permessi di esecuzione al file `/etc/grub.d/20_memtest86+`. * Aprire una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] e digitare: {{{ |
Linea 91: | Linea 371: |
Successivamente aggiornare il menù di '''Grub''' eseguendo il comando '''update-grub''': {{{ | * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ |
Linea 97: | Linea 378: |
Per non mostrare la modalità di ripristino nel menù di '''Grub''', è necessario modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/default/grub` aggiungendo alla fine la seguente riga: {{{ | * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/default/grub` e aggiungere alla fine la seguente riga: {{{ |
Linea 100: | Linea 381: |
successivamente aggiornare il menù di '''Grub''' eseguendo il comando '''update-grub''': {{{ sudo update-grub }}} = Modifica manuale = ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''Le voci del menù dovrebbero essere rimosse o aggiunte modificando i file presenti nella directory '''`/etc/grub.d`'''. Il file '''`grub.cfg`''' è in sola lettura e non dovrebbe essere modificato direttamente.'''|| Affinché un file in `/etc/grub.d` non aggiunga voci nel menù, è sufficiente rimuovere il permesso di esecuzione dal file oppure rimuovere il file. Per modificare manualmente il menù di '''Grub''' aggiungere i permessi di scrittura al file `/boot/grub/grub.cfg`. Digitare da riga di comando: {{{ sudo chmod +w /boot/grub/grub.cfg }}} Successivamente, aprire il file con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] ed effettuare le modifiche. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Ogni qual volta viene lanciato il programma '''''update-grub''''' il file ''`/boot/grub/grub.cfg`'' torna in sola lettura. Sarà necessario aggiungere nuovamente i permessi di scrittura per una nuova modifica.''|| |
* Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Sottomenù Linux == * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `10_linux` e cercare le seguenti righe: {{{ if [ "$list" ] && ! $in_submenu; then echo "submenu \"Previous Linux versions\" {" in_submenu=: fi done if $in_submenu; then echo "}" fi }}} modificare commentando come segue: {{{ # if [ "$list" ] && ! $in_submenu; then # echo "submenu \"Previous Linux versions\" {" # in_submenu=: # fi done #if $in_submenu; then # echo "}" #fi }}} * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Kernel 32 o 64 bit di MacOSX == 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe: {{{ osx_entry xnu_kernel 32 osx_entry xnu_kernel64 64 }}} 0. Cancellare o commentare la prima riga per eliminare la voce inerente al kernel 32bit o la seconda per il kernel 64bit. Esempio con riga commentata: {{{ ##osx_entry xnu_kernel 32 osx_entry xnu_kernel64 64 }}} 0. Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Windows recovery == 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/boot/grub/grub.cfg`. 0. Individuare e annotare la riga inerente il boot della partizione di recovery di '''Windows''', ad esempio: {{{ Windows Vista (loader) (on /dev/sda1) }}} 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe: {{{ for OS in ${OSPROBED} ; do DEVICE="`echo ${OS} | cut -d ':' -f 1`" LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`" LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`" BOOT="`echo ${OS} | cut -d ':' -f 4`" if [ -z "${LONGNAME}" ] ; then LONGNAME="${LABEL}" fi }}} aggiungere alla fine delle stesse le seguenti righe: {{{ if [ "$LONGNAME" = "Windows Vista (loader)" ] && [ "${DEVICE}" = "/dev/sdXY" ] ; then continue fi }}} prestando attenzione a inserire al posto di «Windows Vista (loader)» il nome esatto come annotato in precedenza e al posto di «sdXY» la partizione individuata nello stesso modo. 0. Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Altre partizioni GNU/Linux == * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe: {{{ if [ -z "${LLABEL}" ] ; then LLABEL="${LONGNAME}" fi }}} inserire immediatamente dopo {{{ if [ "${LROOT}" = "/dev/sdXY" ]; then continue fi }}} prestando attenzione a sostituire «sdXY» con la partizione desiderata. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} == Partizioni Windows == * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe: {{{ if [ -z "${LONGNAME}" ] ; then LONGNAME="${LABEL}" fi }}} inserire immediatamente dopo {{{ if [ "${DEVICE}" = "/dev/sdXY" ]; then continue fi }}} prestando attenzione a sostituire «sdXY» con la partizione desiderata. * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} = Nascondere GRUB in PC con più sistemi operativi = ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Per i PC con solo Ubuntu usare l'opzione standard nel file `/etc/default/grub` come da [[AmministrazioneSistema/Grub/FileCartelle|guida]].''' || * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare la seguente riga: {{{ if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then }}} sostituirla con quanto segue: {{{ if [ "x${found_other_os}" = "x" ] || [ "x${GRUB_FORCE_HIDDEN_MENU}" = "xtrue" ] ; then }}} * Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/default/grub` e aggiungere le seguenti righe: {{{ GRUB_FORCE_HIDDEN_MENU="true" export GRUB_FORCE_HIDDEN_MENU }}} * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ sudo update-grub }}} |
Linea 119: | Linea 507: |
CategoryNuoviDocumenti | CategoryAmministrazione |
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
In questa guida vengono descritti diversi metodi per modificare il menù di GRUB. Qualsiasi modifica deve essere fatta sugli script di configurazione e non sul file in sola lettura /boot/grub/grub.cfg come avveniva in precedenza con GRUB-legacy e il file /boot/grub/menu.lst. Per ulteriori dettagli sui file di configurazione di GRUB si rimanda alla apposita guida.
Modificare il nome della release
Modificare il grub distributor
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/default/grub e modificare la seguente opzione:
GRUB_DISTRIBUTOR=esempio
scrivendo al posto di «esempio» il nome desiderato.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Modificare il nome nelle voci
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/10_linux e cercare le seguenti righe:
while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
aggiungere immediatamente dopo:
codename="`lsb_release -cs`" version_no_generic="`echo ${version} | cut -d "-" -f 1-2`"
è ora possibile modificare il nome visualizzato per la propria distribuzione modificando le seguenti righe:
linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}"
aggiungendo o eliminando le variabili come da tabella:
Opzione |
Significato |
${OS} |
Ubuntu, Kubuntu, Xubuntu, Lubuntu |
${version} |
la versione del kernel, es: 3.0.0-15-generic |
${codename} |
il nome in codice della release, es: precise |
${version_no_generic} |
la versione del kernel senza parte terminale |
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Modificare "with Linux"
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/10_linux e cercare le seguenti righe:
if ${recovery} ; then title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" else title="$(gettext_quoted "%s, with Linux %s")" fi
cancellare o modificare a piacere ", with Linux" ad esempio traducendo in italiano.
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Aggiungere voci
Il nome dello script posizionato in /etc/grub.d/ determina l'ordine delle voci nel menù. Il numero iniziale ne indica la priorità, modificandolo è possibile modificare l'ordine delle voci.
In questa tabella vengono descritti i principali file presenti in /etc/grub.d/.
File |
Significato |
00_header |
Carica le impostazioni da /etc/default/grub, compresa la presentazione visiva, il conto alla rovescia e le opzioni del terminale |
05_debian_theme |
Imposta lo sfondo, il colore del testo e i temi |
10_hurd |
Localizza eventuali kernel Hurd |
10_linux |
Localizza i kernel basati sull'ID del distributore determinato dal risultato del comando lsb_release -is |
20_memtest86+ |
Se il file /boot/memtest86+.bin esiste, viene inclusa una voce per memtest86+ |
30_os-prober |
Va alla ricerca di altri sistemi operativi e li include nel menù |
40_custom |
Rappresenta un modello per aggiungere voci personalizzate al menù |
Voci automatiche
Per aggiungere una voce automatica è sufficiente rendere eseguibile il file di configurazione corrispettivo alla voce desiderata situato in /etc/grub.d/:
Aprire una finestra di terminale e digitare:
sudo chmod u+x /etc/grub.d/XX_script
prestando attenzione a sostituire «XX_script» con il nome dello script desiderato.Applicare la modifica digitando in una finestra di il seguente comando:
sudo update-grub
Voci definite dall'utente
Creare con un editor di testo e con i privilegi di amministrazione un file in /etc/grub.d/ in modo che rispetti la nomenclatura standard XX_script
Incollare il seguente contenuto per le voci GNU/Linux:
cat << _EOF menuentry "Nome distribuzione" { set root=(hdX,Y) linux /boot/vmlinuz-X.Y root=UUID=xxxxxxxxxxxxxxxxxxxxx initrd /boot/initrd.img-X.Y } _EOF
prestando attenzione ad inserire i parametri desiderati come da tabella:Opzione
Significato
Nome distribuzione
Il nome desiderato per la voce
hdX,Y
La partizione desiderata
/boot/vmlinuz-X.Y
Il file vmlinuz specifico del kernel desiderato visionabile in /boot/
xxxxxxxxxxxxxxxxxxxxx
Il codice UUID della partizione desiderata ottenibile digitando in un terminale sudo blkid /dev/sdXY
/boot/initrd.img-X.Y
Il file initrd.img specifico del kernel desiderato visionabile in /boot/
Incollare il seguente contenuto per le voci inerenti ad altri sistemi operativi:
cat << _EOF menuentry "Nome sistema operativo" { set root=(hdX,Y) chainloader +1 } _EOF
prestando attenzione a sostituire «Nome sistema operativo» con il nome desiderato per la voce e «hdX,Y» con la partizione desiderata.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Limitare e rimuovere voci
Disabilitare script
È possibile disabilitare uno script di configurazione per fare in modo che tutte le voci legate ad esso non compaiano nel menù di GRUB privandolo dei permessi di esecuzione:
Digitare in una finestra di terminale il seguente comando:
sudo chmod -x /etc/grub.d/XX_script
prestando attenzione a sostituire «XX_script» col nome dello script desiderato.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Kernel vecchi
La strada più semplice per eliminare voci di kernel vecchi dal menù di Grub in maniera automatica, consiste nel disinstallare i pacchetti dei relativi kernel non più utilizzati. Il file grub.cfg verrà aggiornato automaticamente. È tuttavia possibile impostare un limite ai kernel visualizzati senza rimuoverli dalla propria installazione:
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/10_linux e rintracciare le seguenti righe:
while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" initrd= for i in "initrd.img-${version}" "initrd-${version}.img" \ "initrd-${version}" "initramfs-${version}.img" \ "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ "initrd-${alt_version}" "initramfs-${alt_version}.img" \ "initramfs-genkernel-${version}" \ "initramfs-genkernel-${alt_version}"; do if test -e "${dirname}/${i}" ; then initrd="$i" break fi done config= for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do if test -e "${i}" ; then config="${i}" break fi done initramfs= if test -n "${config}" ; then initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` fi if test -n "${initrd}" ; then echo "Found initrd image: ${dirname}/${initrd}" >&2 elif test -z "${initramfs}" ; then # "UUID=" magic is parsed by initrd or initramfs. Since there's # no initrd or builtin initramfs, it can't work here. linux_root_device_thisversion=${GRUB_DEVICE} fi linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
Aggiungere le seguenti righe:
COUNTER=0 LINUX_KERNELS_DISPLAYED=X
prima del testo sopraccitato, prestando attenzione a sostituire la «X» con il numero di kernel desiderati, e
COUNTER=`expr $COUNTER + 1` if [ $COUNTER -eq $LINUX_KERNELS_DISPLAYED ]; then list="" fi
dopo il testo, ottenendo un risultato simile:
COUNTER=0 LINUX_KERNELS_DISPLAYED=X while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" initrd= for i in "initrd.img-${version}" "initrd-${version}.img" \ "initrd-${version}" "initramfs-${version}.img" \ "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ "initrd-${alt_version}" "initramfs-${alt_version}.img" \ "initramfs-genkernel-${version}" \ "initramfs-genkernel-${alt_version}"; do if test -e "${dirname}/${i}" ; then initrd="$i" break fi done config= for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do if test -e "${i}" ; then config="${i}" break fi done initramfs= if test -n "${config}" ; then initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` fi if test -n "${initrd}" ; then echo "Found initrd image: ${dirname}/${initrd}" >&2 elif test -z "${initramfs}" ; then # "UUID=" magic is parsed by initrd or initramfs. Since there's # no initrd or builtin initramfs, it can't work here. linux_root_device_thisversion=${GRUB_DEVICE} fi linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '` COUNTER=`expr $COUNTER + 1` if [ $COUNTER -eq $LINUX_KERNELS_DISPLAYED ]; then list="" fi
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Kernel specifici
Aprire con un editor di testo il file /boot/grub/grub.cfg e annotare la versione del kernel desiderata, ad esempio 3.0.X-Y-generic.
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/10_linux e cercare le seguenti righe:
linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi
Inserire prima
if [ ${version} != "X.Y.Z-generic" ]; then
facendo anttenzione a sostituire «X.Y.Z-generic» con la versione annotata in precedenza e inserire alla fine
fi
ottenendo qualcosa di simile a questo:
if [ ${version} != "X.Y.Z-generic" ]; then linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \ quiet if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then if [ -x /lib/recovery-mode/recovery-menu ]; then linux_entry "${OS}" "${version}" true \ "recovery nomodeset ${GRUB_CMDLINE_LINUX}" else linux_entry "${OS}" "${version}" true \ "single nomodeset ${GRUB_CMDLINE_LINUX}" fi fi fi
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Altri sistemi operativi rimossi
Una volta disinstallato un sistema operativo, per eliminare la sua voce nel menù di GRUB, è sufficiente aggiornare il boot loader digitando in una finestra di terminale il seguente comando:
sudo update-grub
memtest86+
Per rimuovere memtest86+ è sufficiente togliere i permessi di esecuzione al file /etc/grub.d/20_memtest86+.
Aprire una finestra di terminale e digitare:
sudo chmod -x /etc/grub.d/20_memtest86+
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Recovery mode
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/default/grub e aggiungere alla fine la seguente riga:
GRUB_DISABLE_LINUX_RECOVERY=true
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Sottomenù Linux
Aprire con un editor di testo e con i privilegi di amministrazione il file 10_linux e cercare le seguenti righe:
if [ "$list" ] && ! $in_submenu; then echo "submenu \"Previous Linux versions\" {" in_submenu=: fi done if $in_submenu; then echo "}" fi
modificare commentando come segue:
# if [ "$list" ] && ! $in_submenu; then # echo "submenu \"Previous Linux versions\" {" # in_submenu=: # fi done #if $in_submenu; then # echo "}" #fi
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Kernel 32 o 64 bit di MacOSX
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/30_os-prober e cercare le seguenti righe:
osx_entry xnu_kernel 32 osx_entry xnu_kernel64 64
Cancellare o commentare la prima riga per eliminare la voce inerente al kernel 32bit o la seconda per il kernel 64bit. Esempio con riga commentata:
##osx_entry xnu_kernel 32 osx_entry xnu_kernel64 64
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Windows recovery
Aprire con un editor di testo il file /boot/grub/grub.cfg.
Individuare e annotare la riga inerente il boot della partizione di recovery di Windows, ad esempio:
Windows Vista (loader) (on /dev/sda1)
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/30_os-prober e cercare le seguenti righe:
for OS in ${OSPROBED} ; do DEVICE="`echo ${OS} | cut -d ':' -f 1`" LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`" LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`" BOOT="`echo ${OS} | cut -d ':' -f 4`" if [ -z "${LONGNAME}" ] ; then LONGNAME="${LABEL}" fi
aggiungere alla fine delle stesse le seguenti righe:
if [ "$LONGNAME" = "Windows Vista (loader)" ] && [ "${DEVICE}" = "/dev/sdXY" ] ; then continue fi
prestando attenzione a inserire al posto di «Windows Vista (loader)» il nome esatto come annotato in precedenza e al posto di «sdXY» la partizione individuata nello stesso modo.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Altre partizioni GNU/Linux
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/30_os-prober e cercare le seguenti righe:
if [ -z "${LLABEL}" ] ; then LLABEL="${LONGNAME}" fi
inserire immediatamente dopo
if [ "${LROOT}" = "/dev/sdXY" ]; then continue fi
prestando attenzione a sostituire «sdXY» con la partizione desiderata.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Partizioni Windows
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/30_os-prober e cercare le seguenti righe:
if [ -z "${LONGNAME}" ] ; then LONGNAME="${LABEL}" fi
inserire immediatamente dopo
if [ "${DEVICE}" = "/dev/sdXY" ]; then continue fi
prestando attenzione a sostituire «sdXY» con la partizione desiderata.Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub
Nascondere GRUB in PC con più sistemi operativi
Per i PC con solo Ubuntu usare l'opzione standard nel file /etc/default/grub come da guida. |
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/30_os-prober e cercare la seguente riga:
if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then
sostituirla con quanto segue:
if [ "x${found_other_os}" = "x" ] || [ "x${GRUB_FORCE_HIDDEN_MENU}" = "xtrue" ] ; then
Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/default/grub e aggiungere le seguenti righe:
GRUB_FORCE_HIDDEN_MENU="true" export GRUB_FORCE_HIDDEN_MENU
Applicare la modifica digitando in una finestra di terminale il seguente comando:
sudo update-grub