Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "corradoventu/prova1"
Differenze tra le versioni 1 e 100 (in 99 versioni)
Versione 1 del 08/04/2017 09.34.33
Dimensione: 3286
Autore: corradoventu
Commento:
Versione 100 del 28/11/2025 19.38.47
Dimensione: 15808
Autore: jeremie2
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from vipri-alessandro/Gnome-panel ## page was renamed from Grub2/FileCartelle
Linea 4: Linea 4:
<<Include(NuoviStrumentiWiki/PaginaDiProva)>>
<<Indice(depth=1)>>
Linea 5: Linea 7:
<<Indice(depth=1)>>
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=513296"; rilasci="16.04 14.04 12.04";)>>
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=82907"; rilasci="20.04 22.04 24.04 25.04")>>
Linea 10: Linea 11:
Questa guida spiega come creare l' '''icona di avvio''' di un programma tramite lo strumento '''gnome-panel''', negli ambienti grafici [[AmbienteGrafico/Gnome|GNOME]] e [[AmbienteGrafico/Unity|Unity]].

= Preparativi =

[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto ''gnome-panel'' senza i pacchetti raccomandati. Per fare ciò, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il comando: {{{
sudo apt-get install gnome-panel --no-install-recommends
}}}

= Creazione del lanciatore =

E' possibile ora procedere alla creazione dell'icona di avvio, digitando: {{{
gnome-desktop-item-edit ~/Scrivania/ --create-new
}}}

||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Se il lanciatore deve essere creato in un altro percorso diverso da `/Scrivania`, basta cambiare il percorso nel comando precedente. ||

<<Immagine(./gnome-panel14.04.png,400,)>>

Verrà avviata la finestra '''Creazione lanciatore''', in cui inserire i seguenti parametri:
 * '''Tipo''': il tipo di applicazione da lanciare, a scelta tra:
  * '''Applicazione''': avvio standard di una applicazione.
  * '''Applicazione nel terminale''': avvio di un'applicazione nel [[AmministrazioneSistema/Terminale|terminale]].
  * '''Posizione''': si dovrà indicare più sotto la posizione esatta della/e applicazione/i nel file system. Tale icona di avvio è utile se si vuole poter scegliere diverse applicazioni, presenti in una cartella del file system; se si indica ad esempio la posizione `/usr/bin/`, l'icona di avvio aprirà esattamente la cartella `/bin`, contenente i comandi e le applicazioni principali di Ubuntu. A questo punto, si sceglierà con un doppio click l'applicazione desiderata.
 * '''Nome''': il nome da associare all'icona.
 * '''Comando''': il nome del programma da avviare o il percorso della cartella da aprire. Per navigare il file system alla ricerca di tale comando, utilizzare il pulsante '''Esplora...'''.
 ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>>||<style="padding:0.5em; border:none;"> ''Se nella casella '''Tipo''' si è scelto '''Posizione''', questa voce sarà sostituita da '''Posizione'''.'' ||
 * '''Commento''': un commento facoltativo, che verrà mostrato al passaggio del mouse sopra l'icona.

È inoltre possibile scegliere un'immagine da associare all'icona di avvio, facendo clic sul pulsante con il simbolo del trampolino. Le icone presentate si trovano nella cartella `/usr/share/icons/`; se necessario, possono essere modificate a piacere con un programma di grafica. Si presti attenzione ai cambiamenti delle icone, in quanto queste posseggono risoluzioni standard.

Una volta terminate le modifiche, premere '''OK'''.
I file necessari al funzionamento del [[https://it.wikipedia.org/wiki/Boot_loader|bootloader]] [[AmministrazioneSistema/Grub|Grub]] risiedono nella directory `/boot/grub` in cui `grub.cfg` rappresenta il file principale ed è generato in modo automatico da diversi script attraverso il comando '''update-grub'''.<<BR>>
I file responsabili del contenuto di `grub.cfg` sono:
 * `/etc/default/grub`;
 * gli script presenti nella directory `/etc/grub.d/`;
 * file con estensione `.mod` presenti in `/boot/grub`.

<<Anchor(grub_grub.cfg)>>
= File /boot/grub/grub.cfg =

{{{#!wiki important
Il file `grub.cfg` __NON__ va assolutamente modificato. Viene generato e aggiornato in modo automatico.
}}}

 * Per '''generare''' e '''aggiornare''' automaticamente il file `grub.cfg`, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo update-grub
}}}

 * Il file `grub.cfg` è diviso in diverse sezioni, ognuna delimitata dalle righedi intestazione ''BEGIN'' ed ''END'':{{{
### BEGIN /etc/grub.d/nomefile ###
...
### END /etc/grub.d/nomefile ###
}}}Il percorso `/etc/grub.d/nomefile` specifica a quale file presente nella directory `/etc/grub.d` si riferisce la sezione.

In modo predefinito `grub.cfg` __'''non''' è direttamente modificabile__. Eventuali modifiche avvengono su altri file, il comando '''update-grub''' andrà ad aggiornare in modo automatico il file `grub.cfg`.

Quello che segue è un semplice esempio di `grub.cfg` che comprende:
 * due kernel di '''Ubuntu'''
 * '''memtest86+'''
 * Windows
 * una voce personalizzata '''41_srcd''' importata da uno script in `/etc/grub.d`

{{{
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/update-grub using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
set default=0
set timeout=5
set root=(hd0,5)
search --fs-uuid --set b02e1934-12dd-418a
if font /usr/share/grub/ascii.pff ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  terminal gfxterm
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_hurd ###
### END /etc/grub.d/10_hurd ###

### BEGIN /etc/grub.d/10_linux ###
set root=(hd0,5)
search --fs-uuid --set b02e1934-12dd-418a-be3a-9ff7d3e7e7ea
menuentry "Ubuntu, linux 2.6.28-13-generic" {
    linux /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro quiet splash vga800
    initrd /boot/initrd.img-2.6.28-13-generic
}
menuentry "Ubuntu, linux 2.6.28-13-generic (single-user mode)" {
    linux /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro single
    initrd /boot/initrd.img-2.6.28-13-generic
}
menuentry "Ubuntu, linux 2.6.28-11-generic" {
    linux /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro quiet splash vga800
    initrd /boot/initrd.img-2.6.28-11-generic
}
menuentry "Ubuntu, linux 2.6.28-11-generic (single-user mode)" {
    linux /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro single
    initrd /boot/initrd.img-2.6.28-11-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
    linux /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
    linux /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Home Edition (on /dev/sda1)" {
    set root=(hd0,1)
    chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file is an example on how to add custom entries

### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_srcd ###
menuentry "SystemRescue CD on hard drive" {
        set root=(hd0,10)
        linux /sysrcd/rescuecd subdir=sysrcd setkmap=us
        initrd /sysrcd/initram.igz
}
### END /etc/grub.d/41_srcd ###
}}}


<<Anchor(default_grub)>>
= File /etc/default/grub =

Questo file contiene impostazioni che incidono sull'aspetto del menù del programma. Può essere modificato con i [[AmministrazioneSistema/PriveDiAmministrazione/Sudo|privilegi di amministrazione]] per modificare le impostazioni che verranno rese permanenti `grub.cfg` solo dopo aver dato il comando:{{{
sudo update-grub
}}}

Segue un esempio di file `/etc/default/grub`:
{{{
# If you change this file or any /etc/default/grub.d/*.cfg file,
# run 'update-grub' afterwards to update /boot/grub/grub.cfg.
# For full documentation of the options in these files, see:
# info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`( . /etc/os-release && echo ${NAME} )`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# If your computer has multiple operating systems installed, then you
# probably want to run os-prober. However, if your computer is a host
# for guest OSes installed via LVM or raw disk devices, running
# os-prober can cause damage to those guest OSes as it mounts
# filesystems to look for things.
#GRUB_DISABLE_OS_PROBER=false

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE/GOP/UGA
# you can see them in real GRUB with the command `videoinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
}}}

== Opzioni ==

Segue una tabella esplicativa delle principali opzioni del file.

||<tablestyle="width:80%;" :30%>'''Opzione''' ||<:70%>'''Significato''' ||
||GRUB_DEFAULT=0||Imposta la voce del menù selezionata in modo predefinito. L'assegnamento è numerico in base alla posizione della voce nel menù stesso. La '''prima voce''' ha sempre numero uguale a '''0'''.<<BR>>È anche possibile utilizzare l'opzione in questo modo: <<BR>>'''GRUB_DEFAULT=saved'''<<BR>>In questo caso l'ultimo sistema avviato sarà quello selezionato al boot. Questa opzione va usata assieme a '''GRUB_SAVEDEFAULT=true'''<<BR>> In alternativa indicare il nome del sistema da avviare così come visto nel file `/boot/grub/grub.cfg`, ad esempio: <<BR>> '''GRUB_DEFAULT=Microsoft Windows XP Home Edition (on /dev/sda1)'''<<BR>>Per la gestione dei sottomenù vedere il [[#sottomenù|relativo paragrafo]].||
||GRUB_TIMEOUT=10||Imposta il numero di secondi del conto alla rovescia dopo il quale sarà caricata la voce predefinita del menù.<<BR>>Impostando il valore a '''-1''' verrà disabilitato il conto alla rovescia e il menù sarà visualizzato finché l'utente non effettuerà una scelta.||
||GRUB_HIDDEN_TIMEOUT=3||Se commentata (presenza del simbolo '''#''' all'inizio riga), viene mostrato il menù, altrimenti il menù viene nascosto e viene lanciata la voce predefinita allo scadere dei secondi impostati (in questo esempio '''3'''). Se viene impostato un numero di secondi pari a '''0''', l'utente può forzare la visualizzazione del menù all'avvio del computer tenendo premuto il tasto '''Esc''' nei sistemi con UEFI o '''Maiusc''' su BIOS.<<BR>>Se abilitata, la schermata iniziale '''05_debian_theme''' verrà visualizzata anche se il menu è nascosto.||
||GRUB_HIDDEN_MENU_QUIET=true||Se impostata a '''true''', non viene mostrato alcun conto alla rovescia, lo schermo sarà vuoto. Se imposta a '''false''', viene mostrato un conto alla rovescia per la durata del valore GRUB_HIDDEN_TIMEOUT||
||GRUB_DISTRIBUTOR={{{`lsb_release -i -s 2> /dev/null || echo Debian`}}}||Determina il nome descrittivo della voce del menù, in caso di mancata identificazione predefinisce a '''Debian'''.<<BR>>Sostituire l'opzione '''-i''' coll'opzione '''-d''' per impostare l'avvio automatico dall'ultimo sistema avviato.||
||GRUB_CMDLINE_LINUX=""||Se esiste, questa impostazione inserisce delle opzioni alla fine della riga '''linux''' ||
||GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"||Il valore di questa impostazione viene inserito alla fine della riga '''linux''' solo con il boot normale. .<<BR>>Per esempio, per avere solo lo schermo nero con i messaggi di boot, rimuovere il valore '''quiet splash'''; per avere un'immagine di sfondo con limitati messaggi al di sotto del logo di Ubuntu, inserire solo '''splash''', premere il tasto '''Esc''' per passare dallo sfondo ai messaggi e viceversa. ||
||GRUB_BACKGROUND=/percorso/file/immagine||In questa impostazione inserire il percorso all'immagine da mostrare nel caso nella precedente impostazione sia stata configurata lo '''splash'''.<<BR>>I formati d'immagine supportati dal '''menu-grub''' sono `.jpg`, `.jpeg,` `.png` e `.tga`.||
||#GRUB_TERMINAL=console||Togliere il commento per disabilitare il terminale grafico (solo '''grub-pc''')||
||#GRUB_DISABLE_LINUX_UUID=true||Togliere il commento per disabilitare la gestione degli UUID nei parametri del kernel||
||GRUB_DISABLE_RECOVERY=true||Non mostra le voci '''recovery mode''' nel menù||
||GRUB_DISABLE_OS_PROBER=true||Abilita e disabilita un test sulle altre partizioni alla ricerca di altri sistemi operativi, inclusi Windows e OSX.||

= Esempio di update-grub =

Qui viene mostrato un esempio di output del comando `sudo update-grub`:{{{
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/kdump-tools.cfg'
Generating grub configuration file ...
Found background image: puffin-n3.png
Found linux image: /boot/vmlinuz-6.17.0-5-generic
Found initrd image: /boot/initrd.img-6.17.0-5-generic
Found memtest86+ 64bit EFI image: /boot/mt86+x64
Found memtest86+ 32bit EFI image: /boot/mt86+ia32
Found memtest86+ 64bit image: /boot/mt86+x64
Found memtest86+ 32bit image: /boot/mt86+ia32
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Ubuntu 24.04.3 LTS (24.04) on /dev/nvme0n1p2
Found Ubuntu 25.10 (25.10) on /dev/nvme0n1p5
Found Ubuntu 25.04 (25.04) on /dev/nvme0n1p8
Found Debian GNU/Linux forky/sid on /dev/sda4
Found Fedora Linux 43 (Workstation Edition) on /dev/sdb2
Adding boot menu entry for UEFI Firmware Settings ...
done
}}}Si può notare come il comando vada a intercettare la presenza di altri sistemi operativi che saranno elencati nel menù di avvio.

= Sistema predefinito all'avvio =

In figura viene riportata la schermata di avvio di '''Grub''', nella quale sono presenti:
 * '''Ubuntu''' (sistema '''predefinito''' all'avvio)
 * '''Windows'''
 * '''Ubuntu 25.10'''

Sono stati riportati dei numeri in giallo perchè al fine di impostare il sistema predefinito all'avvio sul file `/etc/default/grub`, è necessario sapere su quale riga si trova, contando '''da zero''' e partendo dall'alto.

<<Immagine(./grub_menu.png,600,center)>>

Si suppone di voler impostare come sistema predefinito '''Ubuntu 25.10''', cioè il sistema che nel menù appare sulla riga 5.

 0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/default/grub`.
 0. Alla voce '''GRUB_DEFAULT''', solitamente impostata su zero:{{{
GRUB_DEFAULT=0
}}}impostare il numero riga di Ubuntu 25.10 individuato in precedenza, cioè '''5''':{{{
GRUB_DEFAULT=5
}}}
 0. Salvare e chiudere il file.
 0. Per rendere le impostazioni definitive digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo update-grub
}}}

<<Anchor(sottomenù)>>
== Sottomenù ==

Nel '''grub menù''' si notano alcune righe indicate come '''Advanced option''' che permetterà di avviare il sistema con un kernel Linux alternativo ed eventualmente acceder in modalità ''recovery mode''. Nell'esempio riportato prima in figura, elezionando seconda riga '''Advanced options for Ubuntu''' appare:

<<Immagine(./advanced_option.png,500,center)>>

In figura sono stati riportati i numeri riga perchè torneranno nuovamente comodi per impostare un kernel alternativo per il sistema predefinito all'avvio.<<BR>>
In questo esempio si suppone che al posto del kernel '''6.14.0-36''' ci sia la necessità di avviare la versione precedente '''6.14.0-35''' e la riga corrispondente è la '''riga 2'''. Ricapitolando:
 * nel '''grub menù''' interessa la '''riga 1''' per selezionare le opzioni avanzate;
 * nel menù delle opzioni avanzate interessa la '''riga 2''' per selezionare il kernel.
Nel file `/etc/default/grub` alla voce `GRUB_DEFAULT` le righe saranno inserite seguendo la sintassi `"1>2"`.

 0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/default/grub`.
 0. Impostare la voce '''GRUB_DEFAULT''' nel seguente modo:{{{
GRUB_DEFAULT="1>2"
}}}
 0. Salvare e chiudere il file.
 0. Per rendere le impostazioni definitive digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo update-grub
}}}

<<Anchor(grub.d)>>
= Directory /etc/grub.d/ =

I file presenti in questa directory sono letti durante l'esecuzione del comando '''update-grub'''. Gli script presenti in questi file esportano le informazioni che raccolgono nel file `/boot/grub/grub.cfg`.

I file vengono eseguiti in ordine sequenziale: prima i file il cui nome inizia con una cifra, poi quelli il cui nome inizia con una lettera. L'ordine con cui sono eseguiti i file determina la posizione degli elementi all'interno del menù di '''Grub'''.

Voci personalizzate possono essere aggiunte al file `40_custom` o inserite in un nuovo file.

{{{#!wiki note
[[AmministrazioneSistema/PermessiFile#Assegnare_i_permessi_di_esecuzione|Assegnare i permessi d'esecuzione]] al file creato per garantirne l'aggiunta nel file `grub.cfg` durante l'esecuzione del comando '''update-grub'''.
}}}

Segue una tabella esplicativa dei principali file di `/etc/grub.d/`.

||<tablestyle="width:80%;" :30%>'''file''' ||<:70%>'''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ù.||
Linea 44: Linea 288:
 * [[http://www.ubuntugeek.com/how-to-create-desktop-launchers-in-ubuntu-11-10oneiric.html|Documento originale]]  * [[https://help.ubuntu.com/community/Grub2/Submenus|Sottomenù di Grub nel wiki internazionale.]]
Linea 47: Linea 291:
CategoryGrafica CategoryAmministrazione CategoryDaRevisionare

Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento.


Guida verificata con Ubuntu: 22.04 24.04 25.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

I file necessari al funzionamento del bootloader Grub risiedono nella directory /boot/grub in cui grub.cfg rappresenta il file principale ed è generato in modo automatico da diversi script attraverso il comando update-grub.
I file responsabili del contenuto di grub.cfg sono:

  • /etc/default/grub;

  • gli script presenti nella directory /etc/grub.d/;

  • file con estensione .mod presenti in /boot/grub.

File /boot/grub/grub.cfg

Il file grub.cfg NON va assolutamente modificato. Viene generato e aggiornato in modo automatico.

  • Per generare e aggiornare automaticamente il file grub.cfg, digitare nel terminale:

    sudo update-grub
  • Il file grub.cfg è diviso in diverse sezioni, ognuna delimitata dalle righedi intestazione BEGIN ed END:

    ### BEGIN /etc/grub.d/nomefile ###
    ...
    ### END /etc/grub.d/nomefile ###

    Il percorso /etc/grub.d/nomefile specifica a quale file presente nella directory /etc/grub.d si riferisce la sezione.

In modo predefinito grub.cfg non è direttamente modificabile. Eventuali modifiche avvengono su altri file, il comando update-grub andrà ad aggiornare in modo automatico il file grub.cfg.

Quello che segue è un semplice esempio di grub.cfg che comprende:

  • due kernel di Ubuntu

  • memtest86+

  • Windows
  • una voce personalizzata 41_srcd importata da uno script in /etc/grub.d

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/update-grub using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
set default=0
set timeout=5
set root=(hd0,5)
search --fs-uuid --set b02e1934-12dd-418a
if font /usr/share/grub/ascii.pff ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  terminal gfxterm
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_hurd ###
### END /etc/grub.d/10_hurd ###

### BEGIN /etc/grub.d/10_linux ###
set root=(hd0,5)
search --fs-uuid --set b02e1934-12dd-418a-be3a-9ff7d3e7e7ea
menuentry "Ubuntu, linux 2.6.28-13-generic" {
    linux   /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro  quiet splash vga800
    initrd  /boot/initrd.img-2.6.28-13-generic
}
menuentry "Ubuntu, linux 2.6.28-13-generic (single-user mode)" {
    linux   /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro single 
    initrd  /boot/initrd.img-2.6.28-13-generic
}
menuentry "Ubuntu, linux 2.6.28-11-generic" {
    linux   /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro  quiet splash vga800
    initrd  /boot/initrd.img-2.6.28-11-generic
}
menuentry "Ubuntu, linux 2.6.28-11-generic (single-user mode)" {
    linux   /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro single 
    initrd  /boot/initrd.img-2.6.28-11-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
    linux   /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
    linux   /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Home Edition (on /dev/sda1)" {
    set root=(hd0,1)
    chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file is an example on how to add custom entries

### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_srcd ###
menuentry "SystemRescue CD on hard drive" {
        set root=(hd0,10)
        linux   /sysrcd/rescuecd subdir=sysrcd setkmap=us
        initrd  /sysrcd/initram.igz
} 
### END /etc/grub.d/41_srcd ###

File /etc/default/grub

Questo file contiene impostazioni che incidono sull'aspetto del menù del programma. Può essere modificato con i privilegi di amministrazione per modificare le impostazioni che verranno rese permanenti grub.cfg solo dopo aver dato il comando:

sudo update-grub

Segue un esempio di file /etc/default/grub:

# If you change this file or any /etc/default/grub.d/*.cfg file,
# run 'update-grub' afterwards to update /boot/grub/grub.cfg.
# For full documentation of the options in these files, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`( . /etc/os-release && echo ${NAME} )`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# If your computer has multiple operating systems installed, then you
# probably want to run os-prober. However, if your computer is a host
# for guest OSes installed via LVM or raw disk devices, running
# os-prober can cause damage to those guest OSes as it mounts
# filesystems to look for things.
#GRUB_DISABLE_OS_PROBER=false

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE/GOP/UGA
# you can see them in real GRUB with the command `videoinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Opzioni

Segue una tabella esplicativa delle principali opzioni del file.

Opzione

Significato

GRUB_DEFAULT=0

Imposta la voce del menù selezionata in modo predefinito. L'assegnamento è numerico in base alla posizione della voce nel menù stesso. La prima voce ha sempre numero uguale a 0.
È anche possibile utilizzare l'opzione in questo modo:
GRUB_DEFAULT=saved
In questo caso l'ultimo sistema avviato sarà quello selezionato al boot. Questa opzione va usata assieme a GRUB_SAVEDEFAULT=true
In alternativa indicare il nome del sistema da avviare così come visto nel file /boot/grub/grub.cfg, ad esempio:
GRUB_DEFAULT=Microsoft Windows XP Home Edition (on /dev/sda1)
Per la gestione dei sottomenù vedere il relativo paragrafo.

GRUB_TIMEOUT=10

Imposta il numero di secondi del conto alla rovescia dopo il quale sarà caricata la voce predefinita del menù.
Impostando il valore a -1 verrà disabilitato il conto alla rovescia e il menù sarà visualizzato finché l'utente non effettuerà una scelta.

GRUB_HIDDEN_TIMEOUT=3

Se commentata (presenza del simbolo # all'inizio riga), viene mostrato il menù, altrimenti il menù viene nascosto e viene lanciata la voce predefinita allo scadere dei secondi impostati (in questo esempio 3). Se viene impostato un numero di secondi pari a 0, l'utente può forzare la visualizzazione del menù all'avvio del computer tenendo premuto il tasto Esc nei sistemi con UEFI o Maiusc su BIOS.
Se abilitata, la schermata iniziale 05_debian_theme verrà visualizzata anche se il menu è nascosto.

GRUB_HIDDEN_MENU_QUIET=true

Se impostata a true, non viene mostrato alcun conto alla rovescia, lo schermo sarà vuoto. Se imposta a false, viene mostrato un conto alla rovescia per la durata del valore GRUB_HIDDEN_TIMEOUT

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

Determina il nome descrittivo della voce del menù, in caso di mancata identificazione predefinisce a Debian.
Sostituire l'opzione -i coll'opzione -d per impostare l'avvio automatico dall'ultimo sistema avviato.

GRUB_CMDLINE_LINUX=""

Se esiste, questa impostazione inserisce delle opzioni alla fine della riga linux

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Il valore di questa impostazione viene inserito alla fine della riga linux solo con il boot normale. .
Per esempio, per avere solo lo schermo nero con i messaggi di boot, rimuovere il valore quiet splash; per avere un'immagine di sfondo con limitati messaggi al di sotto del logo di Ubuntu, inserire solo splash, premere il tasto Esc per passare dallo sfondo ai messaggi e viceversa.

GRUB_BACKGROUND=/percorso/file/immagine

In questa impostazione inserire il percorso all'immagine da mostrare nel caso nella precedente impostazione sia stata configurata lo splash.
I formati d'immagine supportati dal menu-grub sono .jpg, .jpeg, .png e .tga.

#GRUB_TERMINAL=console

Togliere il commento per disabilitare il terminale grafico (solo grub-pc)

#GRUB_DISABLE_LINUX_UUID=true

Togliere il commento per disabilitare la gestione degli UUID nei parametri del kernel

GRUB_DISABLE_RECOVERY=true

Non mostra le voci recovery mode nel menù

GRUB_DISABLE_OS_PROBER=true

Abilita e disabilita un test sulle altre partizioni alla ricerca di altri sistemi operativi, inclusi Windows e OSX.

Esempio di update-grub

Qui viene mostrato un esempio di output del comando sudo update-grub:

Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/kdump-tools.cfg'
Generating grub configuration file ...
Found background image: puffin-n3.png
Found linux image: /boot/vmlinuz-6.17.0-5-generic
Found initrd image: /boot/initrd.img-6.17.0-5-generic
Found memtest86+ 64bit EFI image: /boot/mt86+x64
Found memtest86+ 32bit EFI image: /boot/mt86+ia32
Found memtest86+ 64bit image: /boot/mt86+x64
Found memtest86+ 32bit image: /boot/mt86+ia32
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Ubuntu 24.04.3 LTS (24.04) on /dev/nvme0n1p2
Found Ubuntu 25.10 (25.10) on /dev/nvme0n1p5
Found Ubuntu 25.04 (25.04) on /dev/nvme0n1p8
Found Debian GNU/Linux forky/sid on /dev/sda4
Found Fedora Linux 43 (Workstation Edition) on /dev/sdb2
Adding boot menu entry for UEFI Firmware Settings ...
done

Si può notare come il comando vada a intercettare la presenza di altri sistemi operativi che saranno elencati nel menù di avvio.

Sistema predefinito all'avvio

In figura viene riportata la schermata di avvio di Grub, nella quale sono presenti:

  • Ubuntu (sistema predefinito all'avvio)

  • Windows

  • Ubuntu 25.10

Sono stati riportati dei numeri in giallo perchè al fine di impostare il sistema predefinito all'avvio sul file /etc/default/grub, è necessario sapere su quale riga si trova, contando da zero e partendo dall'alto.

Si suppone di voler impostare come sistema predefinito Ubuntu 25.10, cioè il sistema che nel menù appare sulla riga 5.

  1. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/default/grub.

  2. Alla voce GRUB_DEFAULT, solitamente impostata su zero:

    GRUB_DEFAULT=0

    impostare il numero riga di Ubuntu 25.10 individuato in precedenza, cioè 5:

    GRUB_DEFAULT=5
  3. Salvare e chiudere il file.
  4. Per rendere le impostazioni definitive digitare nel terminale:

    sudo update-grub

Sottomenù

Nel grub menù si notano alcune righe indicate come Advanced option che permetterà di avviare il sistema con un kernel Linux alternativo ed eventualmente acceder in modalità recovery mode. Nell'esempio riportato prima in figura, elezionando seconda riga Advanced options for Ubuntu appare:

In figura sono stati riportati i numeri riga perchè torneranno nuovamente comodi per impostare un kernel alternativo per il sistema predefinito all'avvio.
In questo esempio si suppone che al posto del kernel 6.14.0-36 ci sia la necessità di avviare la versione precedente 6.14.0-35 e la riga corrispondente è la riga 2. Ricapitolando:

  • nel grub menù interessa la riga 1 per selezionare le opzioni avanzate;

  • nel menù delle opzioni avanzate interessa la riga 2 per selezionare il kernel.

Nel file /etc/default/grub alla voce GRUB_DEFAULT le righe saranno inserite seguendo la sintassi "1>2".

  1. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/default/grub.

  2. Impostare la voce GRUB_DEFAULT nel seguente modo:

    GRUB_DEFAULT="1>2"
  3. Salvare e chiudere il file.
  4. Per rendere le impostazioni definitive digitare nel terminale:

    sudo update-grub

Directory /etc/grub.d/

I file presenti in questa directory sono letti durante l'esecuzione del comando update-grub. Gli script presenti in questi file esportano le informazioni che raccolgono nel file /boot/grub/grub.cfg.

I file vengono eseguiti in ordine sequenziale: prima i file il cui nome inizia con una cifra, poi quelli il cui nome inizia con una lettera. L'ordine con cui sono eseguiti i file determina la posizione degli elementi all'interno del menù di Grub.

Voci personalizzate possono essere aggiunte al file 40_custom o inserite in un nuovo file.

Assegnare i permessi d'esecuzione al file creato per garantirne l'aggiunta nel file grub.cfg durante l'esecuzione del comando update-grub.

Segue una tabella esplicativa dei principali file di /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ù.

Ulteriori risorse


CategoryAmministrazione CategoryDaRevisionare