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 2 e 11 (in 9 versioni)
Versione 2 del 23/10/2009 11.27.23
Dimensione: 8528
Autore: LeoIannacone
Commento: Qui il lavoro si stagna....
Versione 11 del 10/05/2012 13.28.28
Dimensione: 7794
Commento: cambio colore tabella
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from Grub2/AggiungereTogliereVoci
Linea 3: Linea 4:
[[BR]]
[[WikiBanner(ArticoloInTraduzione)]]
[[BR]]
[[Indice()]]
<<BR>>
<<Indice>>
Linea 8: Linea 7:
= Aggiungere voci al menu = = Introduzione =
In questa guida vengono descritti diversi metodi per modificare il menù di '''Grub''' aggiungendo ed eliminando voci dall'elenco.
Linea 10: Linea 10:
Il file `grub.cfg` viene aggiornato quando vengono eseguiti i comandi '''update-grub''' o '''update-grub2'''. Per modificare `grub.cfg` si debbono utilizzare gli appositi script presenti nella cartella `/etc/grub.d/`, senza modificare direttamente il file stesso. = Aggiungere voci al menù =
Linea 12: Linea 12:
##''grub.cfg'' is updated when `update-grub` or `update-grub2` is run. Changes to ''grub.cfg'' should be made to the appropriate script files and not to the ''grub.cfg'' file itself. 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.
Linea 14: Linea 14:
||<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 risulta di fatti sempre in sola lettura e ritorna in questo stato ogni qual volta viene eseguito il comando'' '''update-grub'''. ||

##NOTE: The first comment in ''grub.cfg'' is ''"DO NOT EDIT THIS FILE"''. The file is '''read-only''' and is returned to this status anytime `update-grub` is run.
||<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'''. ||
Linea 19: Linea 17:
##== Automatic Entries ==
Linea 21: Linea 18:
<-- SONO RIPETUTE INFORMAZIONI GIÀ INSERITE PRIMA 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`.
Linea 23: Linea 20:
  * When `"update-grub"` is executed, Grub 2 will read ''/etc/default/grub'' and the files in contained in the ''/etc/grub.d'' folder. This combination will set the visual parameters of the grub menu (''/etc/default/grub'') and search for linux kernels, other operating systems, and items designated in user-created scripts in ''/etc/grub.d''.
  The script files in ''/etc/grub.d'' perform the following tasks:
   * ''10_linux'' searches for installed linux kernels.
   * ''30_os-prober'' searches for other operating systems.
   * ''40_custom'' and any other user-created files in the ''/etc/grub.d folder'' add menu items designated in the script files created by users.
  * The name of the file determines the order in the menu. 30_os-prober entries will be placed before 40_custom entries, which will be placed before any higher-numbered entries.
  * Any user-created file must be made executable. This can be done as ''root'' by running
{{{
sudo chmod u+x /etc/grub.d/filename
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ù||

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
Linea 33: Linea 36:
 FINE -->
Linea 35: Linea 37:
== Aggiungere voci ==
##== User-defined Entries ==
Gli utenti con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] possono creare script all'interno della cartella `/etc/grub.d/` che saranno poi inclusi nel file `grub.cfg` quando il comando '''update-grub''' verrà lanciato.
= Voci definite dall'utente =
Linea 39: Linea 39:
||<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 ad un numero. Si ricorda 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.''|| 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'''.
Linea 41: Linea 41:
Il file deve essere eseguibile al fine di poterlo lanciare insieme agli altri script. Per rendere eseguibile il file, da riga di comando digitare:
{{{
sudo chmod u+x /etc/grub.d/nome-file
||<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
Linea 45: Linea 46:
Sostituire la dicitura «nome-file» con il nome del file appena creato.
Linea 47: Linea 47:
##Users with "root" privileges can create scripts in the ''/etc/grub.d/'' folder which will be incorporated into the ''grub.cfg'' file when `update-grub` ##is run.
## * The filename should normally take the format ''XX_name'', with ''XX'' being a number followed by an underscore and name.
## * The order the entry appears on the grub menu is based on numerical ordering of the files in ''/etc/grub.d''. Executable files in the ''/etc/grub.d'' ##folder beginning with an alphabetic character are placed in order ''following'' numerical entries.
## * The file must be made executable by typing in a terminal
##{{{
##sudo chmod +x /etc/grub.d/'''filename'''
##}}}
== Un semplice esempio ==
Linea 55: Linea 49:
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`.
Linea 56: Linea 51:
Segue un semplice esempio di aggiunta voce al menu di '''Grub'''. Questo file crea una voce per eseguire l'installazione di un CD di ripristino di sistema sulla partizione «sdb10» e aggiunge al menu 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 dispositivi 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''' ''||

## * A sample custom entry. This file creates menu items for running a SystemRescueCD installation on sdb10 and a custom kernel on sda1.
##
##'''NOTE:''' The new partition naming convention. Devices start counting from ''0'' as done previously. sd'''a''' is designated as "hd0", sd'''b''' is ##"hd1", etc. However the first ''partition'' is now designated as ''sda'''1'''''. Counting ''partitions'' does ''not'' start with "0". The '''fifth''' ##partition on ''sda'' is ''sda'''5''''').
||<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.''||
Linea 83: Linea 71:
Ai fini della modifica del menu, non è necessaria la riga:
{{{
Ai fini della modifica del menù, la riga: {{{
Linea 86: Linea 73:
}}}
E
ssa sarà mostrata durante l'esecuzione del comando '''update-grub2'''. La comparsa della riga nel terminale indica l'avvenuta lettura ed esecuzione del nuovo script.
}}} 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.
Linea 89: Linea 75:
Se lo script è corretto saranno inserite le nuove voci nel menu di `grub.cfg`. Nessuna modifica in caso contrario.

## * The line ''"echo "Adding SystemRescueCD" >&2"'' is not required. Including it in the file allows this line to be seen in the terminal when `"update-##grub2"` is executed. It provides visual feedback that the entry has been found and entered. The entry, if in the correct format, will be inserted in ##''grub.cfg'' whether or not this line is included in the file.
Se lo script è corretto, le voci vengono inserite nel menu di `grub.cfg`, in caso contrario non viene effettuata alcuna modifica.
Linea 95: Linea 78:
Le voci del menu dovrebbero essere rimosse modificando o rimuovendo i file presenti nella cartella `/etc/grub.d`. Il file `grub.cfg` è in sola lettura e non dovrebbe essere modificato direttamente.
Linea 97: Linea 79:
##Entries should be removed by editing or removing files in the ''/etc/grub.d folder''. The ''/boot/grub/grub.cfg'' file is read-only and should not normally be edited directly. 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.
Linea 99: Linea 81:
 * Automatically.
  * Kernels removed by Synaptic will automatically update ''grub.cfg'' and no user action is required.
  * Other operating systems which have been removed from the computer will also be removed from the menu once `"update-grub2"` is run as ''root''.
== Kernel vecchi e altri sistemi operativi ==
Linea 103: Linea 83:
 * Manually.
  * To prevent a file in ''/etc/grub.d'' from adding items to the menu, remove the ''executable'' bit or remove the applicable file.
  * '''''memtest86+''''': If you don't want to have ''memtest86+'' displayed in your menu, run `sudo chmod -x /etc/grub.d/20_memtest86+`. The file will remain but will not be acted upon by ''update-grub''.
  * '''''Recovery mode:''''' If you don't want ''Recovery mode'' entries for your linux kernels, edit ''/etc/default/grub'' and add this line:
   {{{
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'''.

== memtest86+ ==

Per rimuovere '''memtest86+''' è sufficiente togliere i permessi di esecuzione al file `/etc/grub.d/20_memtest86+`. Dalla riga di comando digitare: {{{
sudo chmod -x /etc/grub.d/20_memtest86+
}}}
Successivamente aggiornare il menù di '''Grub''' eseguendo il comando '''update-grub''': {{{
sudo update-grub
}}}

== Recovery mode ==

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: {{{
Linea 110: Linea 101:
  * If a custom script in the ''/etc/grub.d/'' folder contains multiple menu entries, individual items may be removed and others retained.
  * Tip: If the user wants his custom entries to appear at the top of the menu, the file can be named a value less than ''"10_linux"'', such as ''"07_custom"''. Check that the ''"DEFAULT"'' value in ''/etc/default/grub'' points to the correct ''menuentry'' after making this change.
  * Changes will not take effect on the Grub 2 menu until `"update-grub"` is run to update ''grub.cfg''
successivamente aggiornare il menù di '''Grub''' eseguendo il comando '''update-grub''': {{{
sudo update-grub
}}}
Linea 116: Linea 106:
 * Manual Editing of ''grub.cfg''
  * If you ''must'' edit this file:
  {{{
sudo chmod +w /boot/grub/grub.cfg # Remove 'read-only', necessary even for "root"
sudo nano /boot/grub/grub.cfg # Edit as "root"

||<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
Linea 122: Linea 114:
  * Note: This file is returned to 'read-only' status and user inputs are overwritten anytime the `"update-grub"` command is run.
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.''||
----
CategoryAmministrazione


Introduzione

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.

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 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ù

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

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.

Il conteggio dei device parte da 0, ovvero sda è indicato come hd0, sdb è hd1 e così via. Il nome delle partizioni parte invece da 1, la prima partizione è indicata come sda1, la quinta partizione è sda5, il conteggio delle partizioni non parte da zero.

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
}

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.

memtest86+

Per rimuovere memtest86+ è sufficiente togliere i permessi di esecuzione al file /etc/grub.d/20_memtest86+. Dalla riga di comando digitare:

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

Successivamente aggiornare il menù di Grub eseguendo il comando update-grub:

sudo update-grub

Recovery mode

Per non mostrare la modalità di ripristino nel menù di Grub, è necessario modificare con un editor di testo e con i privilegi di amministrazione il file /etc/default/grub aggiungendo alla fine la seguente riga:

GRUB_DISABLE_LINUX_RECOVERY=true

successivamente aggiornare il menù di Grub eseguendo il comando update-grub:

sudo update-grub

Modifica manuale

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 editor di testo e con i privilegi di amministrazione ed effettuare le modifiche.

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.


CategoryAmministrazione