From Fedora Project Wiki
(initial translation)
 
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{autolang}}
{{autolang}}
= Feature Name =
= GRUB2 =
GRUB2


== Sommario ==
== Sommario ==
Passaggio da grub proprietario a '''grub2''' per gestire il boot di un sistema x86
'''QUESTA E' UNA FASE DAVVERO INIZIALE'''


Questo è un passaggio molto iniziale, anche se stiamo cercando di riportare i progressi qui piuttosto che solo localmente
Passaggio da grub proprietario a '''grub2''' per gestire il boot di un sistema x86.


== Sviluppatore ==
== Sviluppatore ==
* Nome: [[User:PJones| Peter Jones]]
* Nome: [[User:PJones| Peter Jones]]
== Stato attuale ==
* Rilascio mirato: 16
* Ultimo aggiornamento: 8/10/2011
* Percentuale di completamento: 85%
http://koji.fedoraproject.org/koji/buildinfo?buildID=242356
Almeno il 10% di queste caratteristiche creano e aggiornano i pacchetti per riflettere le modifiche in http://ftp.gnu.org/gnu/grub/.


== Descrizione dettagliata ==
== Descrizione dettagliata ==
We currently use what is essentially a fork of GRUB 0.9x in Fedora for a variety of historical reasons. It would be nice to get back to the upstream developed version, even though it is in many ways an entirely new project.
Al momento Fedora usa sostanzialmente un fork di GRUB 0.9x, per varie ragioni storiche. Sarebbe bello potersi allineare con la versione di sviluppo, anche se si tratta di un progetto interamente nuovo.


GRUB2 has reached version 1.99 (equivalent to r.c. 3). The upstream wiki can be found at http://grub.enbug.org/ (This was down for me so http://www.gnu.org/software/grub/.)
'''GRUB2''' è alla versione 1.99 (equivalente alla r.c. 3). La wiki del progetto può essere trovata su http://grub.enbug.org/ (o http://www.gnu.org/software/grub/.)


== Benefit to Fedora ==
== Vantaggi per Fedora ==
There could be new functionality, but that's currently less of the driver.
Potrebbero esserci nuove funzionalità, ma attualmente ci sono meno driver.


***---***
***---***
Grub (legacy) is no longer supported. Patches are not accepted. Grub2 is also nearing a stable release (14-May-2011 GRUB 1.99) which is something that Grub (legacy) never reached.


== Scope ==
Grub (proprietario) non è più supportato e le patch non vengono accettate. GRUB2 ha già raggiunto una versione stabile (14 maggio 2011 GRUB 1.99), che Grub non ha mai conquistato.
The changes are somewhat localized, but there's a lot to be done. The current status based on the testing I've done so far.
 
== Scopo ==
Le modifiche sono in qualche modo localizzate, ma c'è ancora molto da fare. Lo stato attuale si basa sui test che abbiamo effettuato.


=== What Currently Works ===
=== Cosa funziona adesso ===
* MBR Bios booting as chainloaded from grub1 works
* L'avvio del bios MBR come chainload da grub1 funziona
* Booting from the MBR works
* L'avvio da MBR funziona
* Graphics mode works
* La modalità grafica funziona
** You have to have freetype2-devel installed and build with --enable-mkfont
** E' necessario avere freetype2-devel installato e compilato con --enable-mkfont
** Also had to grab the unifont from http://unifoundry.com/unifont.html
** E' necessario anche portare gli unifont da http://unifoundry.com/unifont.html
** Simple hacked up module to load a background image is okay. Could certainly be made '''better'''
** Modulo hack semplice per caricare una immagine di sfondo funzionante. Potrebbe certamente essere reso '''migliore'''
* Creating /usr/local/etc/defaults/grub (would be /etc, but prefix=/usr/local) allowed me to set the following
* Creazione di /usr/local/etc/defaults/grub (dovrebbe essere /etc, but prefix=/usr/local) consentita per impostare il seguito
** default timeout, default distro name, default to graphics mode
** timeout predefinito, nome distro predefinito, modalità grafica predefinita
** some of this is lame and should get auto-detected (eg, parse /etc/system-release)
** alcuni dei quali sono imperfetti e dovrebbero essere auto rilevati (es, analisi di /etc/system-release)


=== Things that still have to be tested/worked on ===
=== Cose che dovrebbero essere testate/funzionanti ===
* EFI mode
* Modalità EFI
* passwords -- Debian and Ubuntu are working on this upstream as of 8 July
* password -- Debian ed Ubuntu funzionano con questo upstream dall'8 luglio
* hidden menu support that we use for flicker-less boot
* supporto ai menu nascosti usati per avvio senza sfarfallii
* serial terminal support (with the timeouts)
* supporto al terminale seriale (con timeout)
* bootonce
* bootonce
* Always adding single user entry is not so good -- set GRUB_DISABLE_LINUX_RECOVERY in /etc/default/grub
* Aggiungere sempre la voce di singolo utente non è tanto buono -- impostare GRUB_DISABLE_LINUX_RECOVERY in /etc/default/grub
* Chainloading various versions of Windows
* Il chainloading di varie versioni di windows
* Auto-detection of Windows and adding it to the config file
* L'auto rilevamento di Windows e l'aggiunta al file di configurazione
* Can we ship the unifont ?
* possiamo saltare l'unifont ?
* support for multiple initrds
* supporto per initrd multipli
** Also, as I had it "built", the font wasn't quite right
** Inoltre, per come è stato "built", il font non è abbastanza buono
* Ensuring all the other features we have and care about are present (if someone wants to make a list of these, it would be helpful)
* Assicurare tutte le altre caratteristiche presenti e prendersi cura delle attuali (se qualcuno volesse farne una lista sarebbe utile)
* Documentation, documentation, documentation...
* Documentazione, documentazione, documentazione...


=== External things that would need work ===
=== Varie cose che bisogna far funzionare ===
* anaconda needs to be able to create the new file.  Or at least run grub-mkconf
* anaconda deve essere in grado di creare i nuovi file.  Oppure almeno eseguire grub-mkconf
* grubby to updateOr phase out for grub-updconf?
* grubby da aggiornareOppure da sfasare da grub-updconf?




== How To Test ==
== Come Testare ==


It is very easy to test from Grub Legacy type environment, but we will also need to test from Anaconda/Firstinstall.
E' davvero semplice testare dal tipo di ambiente Grub Legacy, ma è ance necessario testare da Anaconda/Firstinstall.


=== From an Installed System with Grub Legacy ===
=== Da nu sistema installato con Grub Legacy ===


This was adapted from http://en.gentoo-wiki.com/wiki/Grub2
Questo è un adattamento da http://en.gentoo-wiki.com/wiki/Grub2


The following will automatically generate a GRUB2 configuration file including kernels images within your /boot folder, using the auto configuration scripts in /etc/grub.d, the ''-o'' specifices an output file, here the default, /boot/grub2/grub.cfg:
Di seguito il metodo di generazione automatico di un file di configurazione GRUB2 incluse le immagini kernel all'interno della cartella /boot , usando gli script di auto configurazione presenti in /etc/grub.d, il ''-o'' specifica un file di uscita, in questo caso è /boot/grub2/grub.cfg:


<code><nowiki>grub2-mkconfig -o /boot/grub2/grub.cfg</nowiki></code>
<code><nowiki>grub2-mkconfig -o /boot/grub2/grub.cfg</nowiki></code>


==== Testing With Chain Loading ====
==== Test con una catena di caricamento ====


GRUB2 includes a boot image that's loadable from GRUB Legacy, so you can try it out without wiping out your existing, working MBR. To set up GRUB2 without actually writing to the MBR, run
GRUB2 include una immagine di boot caricabile da GRUB Legacy, quindi è possibile provarlo senza sostituire l'MBR. Per impostare GRUB2 senza scrivere nulla sull'MBR, eseguire


<code><nowiki>grub2-install --grub-setup=/bin/true /dev/sda</nowiki></code>
<code><nowiki>grub2-install --grub-setup=/bin/true /dev/sda</nowiki></code>


==== Writing to the MBR ====
==== Scrittura su MBR ====


If that works, you can go on testing to writing to your MBR. Same steps as above, but don't tell grub to run the dummy setup program /bin/true
Se il test dovesse funzionare, è possibile eseguire la fase di test scrivendo sull'MBR. Si tratta degli stessi passaggi precedenti, con la differenza di non eseguire il programma di finta impostazione /bin/true


<code><nowiki>grub2-install /dev/sda</nowiki></code>
<code><nowiki>grub2-install /dev/sda</nowiki></code>


Congratulations! You've reached the point of no return! If you can't boot now you will need to run a rescue CD
Congratulazioni! Hai raggiunto il punto di non ritorno! Se adesso non riesci ad eseguire l'avvio avrai bisogno di un CD di ripristino


=== From a DVD with Anaconda ===
=== Da un DVD con Anaconda ===
TBD as things get fleshed out more
Dopo aver impostato una chroot funzionante del filesystem, si può usare un DVD per installare o riparare grub. Da una console di root:
#realizzare una cartella in cui operare:
<code><nowiki>mkdir /mnt/sysimage</nowiki></code>
#montare i filesystem (come esempio i nodi dispositivi, assicurati di inserire i tuoi!):
<code><nowiki>mount /dev/sda2 /mnt/sysimage</nowiki></code>


<code><nowiki>mount /dev/sda1 /mnt/sysimage/boot</nowiki></code>
#lega il mount dei filesystem di sistema:
<code><nowiki>mount --bind /dev /mnt/sysimage/dev</nowiki></code>
<code><nowiki>mount --bind /proc /mnt/sysimage/proc</nowiki></code>
<code><nowiki>mount --bind /sys /mnt/sysimage/sys</nowiki></code>
#inserisci la chroot
<code><nowiki>chroot /mnt/sysimage/</nowiki></code>
Ora sei in grado di installare grub2 sul tuo dispositivo senza interferenza dal sistema temporaneo.
<!-- This does not need to be a full-fledged document.  Describe the dimensions of tests that this  
<!-- This does not need to be a full-fledged document.  Describe the dimensions of tests that this  
feature is expected to pass when it is done.  If it needs to be tested with different hardware or software configurations, indicate them.  The more specific you can be, the better the community testing can be.  
feature is expected to pass when it is done.  If it needs to be tested with different hardware or software configurations, indicate them.  The more specific you can be, the better the community testing can be.  
Line 99: Line 128:
-->
-->


Test matrix here: https://fedoraproject.org/wiki/User:Pjones/Grub2TestMatrix
La matrice di test è disponibile qui: https://fedoraproject.org/wiki/User:Pjones/Grub2TestMatrix


== User Experience ==
== Esperienza Utente ==
Ultimately, the main thing a user could change is the different config file (grub.cfg vs grub.conf) and the different syntax in the config file.  During the normal boot process, the idea should be that it's not that noticeable
Fondamentalmente, la prima cosa che un utente vuole modificare è uno dei file di configurazione (grub.cfg vs grub.conf) e la sintassi nel file di configurazioneDurante un normale processo di avvio, l'idea non dovrebbe essere tanto evidente


== Dependencies ==
== Dipendenze ==
We'll have to be sure to update anaconda for the new config file format and also deal with things like grubby (which updates boot loader configs)
Dobbiamo assicurarci di aggiornare anaconda per il nuovo formato del file di configurazione e deve anche avere a che fare con cose tipo grubby (che aggiorna le configurazioni del boot loader)


== Contingency Plan ==
== Piano di contingenza ==
Keep using GRUB legacy
Continuare ad usare GRUB legacy


== Documentation ==
== Documentazione ==
* The only docs right now are at the upstream site, but they're slim at best.
* L'unica documentazione presente ad oggi è il sito in upstream, ma è ancora piuttosto piccola.


== Release Notes ==
== Release Notes ==
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
Fedora switched from grub legacy to grub2 in Fedora 16. Grub 2 allows better configuration options, better support for non x86 architectures, scripting and localization support.
Fedora è passata da grub legacy a grub2 da Fedora 16. Grub 2 consente opzioni di configurazione migliori, un supporto migliore per architetture non x86, il supporto allo scripting ed alla localizzazione.
Grub 2 has new configuration format and and files. Please consult the grub manual for more information.
Grub 2 possiede un nuovo formato e file di configurazione. Consulta il manuale di Grub per maggiori informazioni.


== Comments and Discussion ==
== Commenti e Discussione ==
* See [[Talk:Features/Grub2]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
* Vedi [[Talk:Features/Grub2]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->


* [http://en.gentoo-wiki.com/wiki/Grub2 http://en.gentoo-wiki.com/wiki/Grub2]
* [http://en.gentoo-wiki.com/wiki/Grub2 http://en.gentoo-wiki.com/wiki/Grub2]
Line 139: Line 168:


<!-- Note that the current Feature guidelines require useful Scope and Test Plans at certain milestones; QA is responsible for checking these, and will change this category as needed. -->
<!-- Note that the current Feature guidelines require useful Scope and Test Plans at certain milestones; QA is responsible for checking these, and will change this category as needed. -->
[[Category: Italiano]]

Latest revision as of 15:51, 27 January 2016

GRUB2

Sommario

QUESTA E' UNA FASE DAVVERO INIZIALE

Questo è un passaggio molto iniziale, anche se stiamo cercando di riportare i progressi qui piuttosto che solo localmente

Passaggio da grub proprietario a grub2 per gestire il boot di un sistema x86.

Sviluppatore

Stato attuale

  • Rilascio mirato: 16
  • Ultimo aggiornamento: 8/10/2011
  • Percentuale di completamento: 85%

http://koji.fedoraproject.org/koji/buildinfo?buildID=242356 Almeno il 10% di queste caratteristiche creano e aggiornano i pacchetti per riflettere le modifiche in http://ftp.gnu.org/gnu/grub/.

Descrizione dettagliata

Al momento Fedora usa sostanzialmente un fork di GRUB 0.9x, per varie ragioni storiche. Sarebbe bello potersi allineare con la versione di sviluppo, anche se si tratta di un progetto interamente nuovo.

GRUB2 è alla versione 1.99 (equivalente alla r.c. 3). La wiki del progetto può essere trovata su http://grub.enbug.org/ (o http://www.gnu.org/software/grub/.)

Vantaggi per Fedora

Potrebbero esserci nuove funzionalità, ma attualmente ci sono meno driver.

      • ---***

Grub (proprietario) non è più supportato e le patch non vengono accettate. GRUB2 ha già raggiunto una versione stabile (14 maggio 2011 GRUB 1.99), che Grub non ha mai conquistato.

Scopo

Le modifiche sono in qualche modo localizzate, ma c'è ancora molto da fare. Lo stato attuale si basa sui test che abbiamo effettuato.

Cosa funziona adesso

  • L'avvio del bios MBR come chainload da grub1 funziona
  • L'avvio da MBR funziona
  • La modalità grafica funziona
    • E' necessario avere freetype2-devel installato e compilato con --enable-mkfont
    • E' necessario anche portare gli unifont da http://unifoundry.com/unifont.html
    • Modulo hack semplice per caricare una immagine di sfondo funzionante. Potrebbe certamente essere reso migliore
  • Creazione di /usr/local/etc/defaults/grub (dovrebbe essere /etc, but prefix=/usr/local) consentita per impostare il seguito
    • timeout predefinito, nome distro predefinito, modalità grafica predefinita
    • alcuni dei quali sono imperfetti e dovrebbero essere auto rilevati (es, analisi di /etc/system-release)

Cose che dovrebbero essere testate/funzionanti

  • Modalità EFI
  • password -- Debian ed Ubuntu funzionano con questo upstream dall'8 luglio
  • supporto ai menu nascosti usati per avvio senza sfarfallii
  • supporto al terminale seriale (con timeout)
  • bootonce
  • Aggiungere sempre la voce di singolo utente non è tanto buono -- impostare GRUB_DISABLE_LINUX_RECOVERY in /etc/default/grub
  • Il chainloading di varie versioni di windows
  • L'auto rilevamento di Windows e l'aggiunta al file di configurazione
  • possiamo saltare l'unifont ?
  • supporto per initrd multipli
    • Inoltre, per come è stato "built", il font non è abbastanza buono
  • Assicurare tutte le altre caratteristiche presenti e prendersi cura delle attuali (se qualcuno volesse farne una lista sarebbe utile)
  • Documentazione, documentazione, documentazione...

Varie cose che bisogna far funzionare

  • anaconda deve essere in grado di creare i nuovi file. Oppure almeno eseguire grub-mkconf
  • grubby da aggiornare. Oppure da sfasare da grub-updconf?


Come Testare

E' davvero semplice testare dal tipo di ambiente Grub Legacy, ma è ance necessario testare da Anaconda/Firstinstall.

Da nu sistema installato con Grub Legacy

Questo è un adattamento da http://en.gentoo-wiki.com/wiki/Grub2

Di seguito il metodo di generazione automatico di un file di configurazione GRUB2 incluse le immagini kernel all'interno della cartella /boot , usando gli script di auto configurazione presenti in /etc/grub.d, il -o specifica un file di uscita, in questo caso è /boot/grub2/grub.cfg:

grub2-mkconfig -o /boot/grub2/grub.cfg

Test con una catena di caricamento

GRUB2 include una immagine di boot caricabile da GRUB Legacy, quindi è possibile provarlo senza sostituire l'MBR. Per impostare GRUB2 senza scrivere nulla sull'MBR, eseguire

grub2-install --grub-setup=/bin/true /dev/sda

Scrittura su MBR

Se il test dovesse funzionare, è possibile eseguire la fase di test scrivendo sull'MBR. Si tratta degli stessi passaggi precedenti, con la differenza di non eseguire il programma di finta impostazione /bin/true

grub2-install /dev/sda

Congratulazioni! Hai raggiunto il punto di non ritorno! Se adesso non riesci ad eseguire l'avvio avrai bisogno di un CD di ripristino

Da un DVD con Anaconda

Dopo aver impostato una chroot funzionante del filesystem, si può usare un DVD per installare o riparare grub. Da una console di root:

  1. realizzare una cartella in cui operare:

mkdir /mnt/sysimage

  1. montare i filesystem (come esempio i nodi dispositivi, assicurati di inserire i tuoi!):

mount /dev/sda2 /mnt/sysimage

mount /dev/sda1 /mnt/sysimage/boot

  1. lega il mount dei filesystem di sistema:

mount --bind /dev /mnt/sysimage/dev

mount --bind /proc /mnt/sysimage/proc

mount --bind /sys /mnt/sysimage/sys

  1. inserisci la chroot

chroot /mnt/sysimage/

Ora sei in grado di installare grub2 sul tuo dispositivo senza interferenza dal sistema temporaneo.

La matrice di test è disponibile qui: https://fedoraproject.org/wiki/User:Pjones/Grub2TestMatrix

Esperienza Utente

Fondamentalmente, la prima cosa che un utente vuole modificare è uno dei file di configurazione (grub.cfg vs grub.conf) e la sintassi nel file di configurazione. Durante un normale processo di avvio, l'idea non dovrebbe essere tanto evidente

Dipendenze

Dobbiamo assicurarci di aggiornare anaconda per il nuovo formato del file di configurazione e deve anche avere a che fare con cose tipo grubby (che aggiorna le configurazioni del boot loader)

Piano di contingenza

Continuare ad usare GRUB legacy

Documentazione

  • L'unica documentazione presente ad oggi è il sito in upstream, ma è ancora piuttosto piccola.

Release Notes

Fedora è passata da grub legacy a grub2 da Fedora 16. Grub 2 consente opzioni di configurazione migliori, un supporto migliore per architetture non x86, il supporto allo scripting ed alla localizzazione. Grub 2 possiede un nuovo formato e file di configurazione. Consulta il manuale di Grub per maggiori informazioni.

Commenti e Discussione