Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "AmministrazioneSistema/Grub/AggiungereTogliereVoci"
Differenze tra le versioni 12 e 25 (in 13 versioni)
Versione 12 del 17/06/2012 09.39.45
Dimensione: 21126
Commento: update
Versione 25 del 12/06/2024 17.08.48
Dimensione: 20305
Autore: ivantu
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 3: Linea 3:
# + 17.10
Linea 5: Linea 6:
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=82907&start=60"; rilasci="12.04 11.10")>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=82907&start=60"; rilasci="24.04 22.04 20.04 17.10 12.04 11.10")>>
Linea 11: Linea 12:
{{{#!wiki important
Come indicato nei seguenti paragrafi, è necessario eseguire l'[[AmministrazioneSistema/Grub#Comandi|aggiornamento]] di GRUB al termine di ogni modifica per applicare i cambiamenti.
}}}
Linea 15: Linea 20:
 * 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
 }}}
Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/default/grub` e modificare la seguente opzione:{{{
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
}}}

con le seguenti:{{{
GRUB_DISTRIBUTOR=`lsb_release -d -s 2> /dev/null || echo Debian`
}}}

Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 26: Linea 32:
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: {{{  0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e cercare le seguenti righe:{{{
  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}"
}}}

 0. Aggiungere immediatamente dopo:{{{
codename="`lsb_release -cs`"
version_no_generic="`echo ${version} | cut -d "-" -f 1-2`"
}}}

 0. Sarà quindi 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%>'''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||

Infine consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

== Modificare "with Linux" ==

 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|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
}}}

 0. Cancellare o modificare a piacere "`, with Linux`" ad esempio traducendo in italiano.

 0. Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

= 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/`.

||<tablestyle="width:100%" : 15%>'''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ù||

Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

== Voci automatiche ==

Per aggiungere una voce automatica è sufficiente rendere eseguibile il file di configurazione corrispettivo alla voce desiderata situato in `/etc/grub.d/`:

Aprire un [[AmministrazioneSistema/Terminale| terminale]] e digitare: {{{
sudo chmod u+x /etc/grub.d/XX_script
}}}
prestando attenzione a sostituire «XX_script» con il nome dello script desiderato.

Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

== Voci definite dall'utente ==

 0. Creare con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] un file in `/etc/grub.d/` in modo che rispetti la nomenclatura standard `XX_script`

 0. Incollare il seguente contenuto per le voci '''GNU/Linux''':{{{
#!/bin/sh
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:

 ||<tablestyle="width:100%" : 30%>'''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 [[AmministrazioneSistema/Terminale| terminale]] `sudo blkid /dev/sdXY`||
 ||`/boot/initrd.img-X.Y`||Il file initrd.img specifico del kernel desiderato visionabile in `/boot/`||

 0. 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.

 0. Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

= 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 un [[AmministrazioneSistema/Terminale| terminale]] il seguente comando: {{{
sudo chmod -x /etc/grub.d/XX_script
 }}}
prestando attenzione a sostituire «XX_script» col nome dello script desiderato.

Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

== Kernel vecchi ==

Il modo più semplice per eliminare voci di vecchi kernel 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:

 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e rintracciare le seguenti righe:{{{
Linea 36: Linea 172:
 }}}

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 \

  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 \
Linea 54: Linea 217:
 }}}
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.

In questa tabella vengono descritti i principali file presenti in `/etc/grub.d/`.

||<tablestyle="width:100%" : 15% style="background-color:#cccccc;">'''File''' ||<style="background-color:#cccccc;":>'''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 [[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''': {{{
#!/bin/sh
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:

 ||<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: {{{
    fi
  fi

  list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
}}}

 0. 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
Linea 182: Linea 247:
    "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
       "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
Linea 228: Linea 293:
 }}}

 * 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 {{{
Linea 238: Linea 298:
}}} 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
}}}
}}}

 0. Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 315: Linea 306:
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: {{{ Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/10_linux` e cercare le seguenti righe:{{{
Linea 354: Linea 345:
Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{ Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].

== 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 un [[AmministrazioneSistema/Terminale| terminale]] il seguente comando:{{{
Linea 358: Linea 353:
== 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 368: Linea 357:
 * Aprire una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] e digitare: {{{ Aprire un [[AmministrazioneSistema/Terminale| terminale]] e digitare: {{{
Linea 372: Linea 361:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 378: Linea 365:
 * 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: {{{ Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/default/grub` e aggiungere alla fine la seguente riga:{{{
Linea 382: Linea 369:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 388: Linea 373:
 * 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: {{{ {{{#!wiki note
Eliminando i sottomenù non verranno eliminati i riferimenti ai kernel contenuti bensì verrà ripristinato l'elenco semplice delle voci.
}}}

* Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `10_linux` e cercare le seguenti righe:{{{
Linea 410: Linea 399:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
 }}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 416: Linea 403:
 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: {{{  0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe:{{{
Linea 421: Linea 408:
 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: {{{  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:{{{
Linea 426: Linea 413:
 0. Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 436: Linea 421:
 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: {{{  0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe:{{{
Linea 446: Linea 431:
}}} aggiungere alla fine delle stesse le seguenti righe: {{{ }}} aggiungere alla fine delle stesse le seguenti righe:{{{
Linea 451: Linea 436:
 0. Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
 }}}

Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 457: Linea 441:
 * 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: {{{ Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe:{{{
Linea 467: Linea 451:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 473: Linea 455:
 * 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: {{{ Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare le seguenti righe:{{{
Linea 483: Linea 465:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 489: Linea 469:
||<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: {{{
{{{#!wiki important
Per i PC con solo Ubuntu usare l'opzione standard nel file `/etc/default/grub` come da [[AmministrazioneSistema/Grub/FileCartelle|guida]].
}}}

 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/grub.d/30_os-prober` e cercare la seguente riga:{{{
Linea 497: Linea 479:
 * 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: {{{  0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/default/grub` e aggiungere le seguenti righe:{{{
Linea 502: Linea 484:
 * Applicare la modifica digitando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]] il seguente comando: {{{
sudo update-grub
}}}
Consultare il seguente [[AmministrazioneSistema/Grub#Comandi|paragrafo]].
Linea 507: Linea 487:
CategoryAmministrazione CategoryAmministrazione CategoryDaRevisionare


Guida verificata con Ubuntu: 20.04 22.04 24.04

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.

Come indicato nei seguenti paragrafi, è necessario eseguire l'aggiornamento di GRUB al termine di ogni modifica per applicare i cambiamenti.

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=`lsb_release -i -s 2> /dev/null || echo Debian`

con le seguenti:

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

Consultare il seguente paragrafo.

Modificare il nome nelle voci

  1. Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/grub.d/10_linux e cercare le seguenti righe:

      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}"
  2. Aggiungere immediatamente dopo:

    codename="`lsb_release -cs`"
    version_no_generic="`echo ${version} | cut -d "-" -f 1-2`"
  3. Sarà quindi 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

Infine consultare il seguente paragrafo.

Modificare "with Linux"

  1. 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
  2. Cancellare o modificare a piacere ", with Linux" ad esempio traducendo in italiano.

  3. Consultare il seguente paragrafo.

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ù

Consultare il seguente paragrafo.

Voci automatiche

Per aggiungere una voce automatica è sufficiente rendere eseguibile il file di configurazione corrispettivo alla voce desiderata situato in /etc/grub.d/:

Aprire un terminale e digitare:

sudo chmod u+x /etc/grub.d/XX_script

prestando attenzione a sostituire «XX_script» con il nome dello script desiderato.

Consultare il seguente paragrafo.

Voci definite dall'utente

  1. 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

  2. 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/

  3. 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.
  4. Consultare il seguente paragrafo.

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 un terminale il seguente comando:

sudo chmod -x /etc/grub.d/XX_script

prestando attenzione a sostituire «XX_script» col nome dello script desiderato.

Consultare il seguente paragrafo.

Kernel vecchi

Il modo più semplice per eliminare voci di vecchi kernel 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:

  1. 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' ' '`
  2. 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
  3. Consultare il seguente paragrafo.

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

Consultare il seguente paragrafo.

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 un 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 un terminale e digitare:

sudo chmod -x /etc/grub.d/20_memtest86+

Consultare il seguente paragrafo.

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

Consultare il seguente paragrafo.

Sottomenù Linux

Eliminando i sottomenù non verranno eliminati i riferimenti ai kernel contenuti bensì verrà ripristinato l'elenco semplice delle voci.

  • 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 

Consultare il seguente paragrafo.

Kernel 32 o 64 bit di MacOSX

  1. 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
  2. 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

Consultare il seguente paragrafo.

Windows recovery

  1. Aprire con un editor di testo il file /boot/grub/grub.cfg.

  2. Individuare e annotare la riga inerente il boot della partizione di recovery di Windows, ad esempio:

    Windows Vista (loader) (on /dev/sda1)
  3. 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.

Consultare il seguente paragrafo.

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.

Consultare il seguente paragrafo.

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.

Consultare il seguente paragrafo.

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.

  1. 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 
  2. 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

Consultare il seguente paragrafo.


CategoryAmministrazione CategoryDaRevisionare