PDA

View Full Version : Modificare GRUB con Fedora 16


morpheus89
17-11-2011, 08:33
Salve a tutti, ho da poco installato il nuovo Fedora 16 come secondo sistema operativo del mio PC fisso. Solo che ad ogni avvio, una volta caricato GRUB, il SO predefinito selezionato rimane Fedora.

Avevo provato con startup manager ma non riesco ad installarlo
(ho provato con sudo yum install startup-manager e con sudo yum install startupmanager ma niente). Qualcuno conosce un modo per gestire il SO di default?

CielitoLindux
17-11-2011, 09:38
Ci fai vedere
# cat /boot/grub2/grub.cfg

morpheus89
17-11-2011, 10:16
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}

function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}

set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora (3.1.1-1.fc16.i686)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root bbc9b964-df95-4ce0-9caf-be838f809cd1
echo 'Loading Fedora (3.1.1-1.fc16.i686)'
linux /boot/vmlinuz-3.1.1-1.fc16.i686 root=UUID=bbc9b964-df95-4ce0-9caf-be838f809cd1 ro rd.md=0 rd.lvm=0 rd.dm=0 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 KEYTABLE=it LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.1-1.fc16.i686.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.i686' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root bbc9b964-df95-4ce0-9caf-be838f809cd1
echo 'Loading Linux 3.1.0-7.fc16.i686 ...'
linux /boot/vmlinuz-3.1.0-7.fc16.i686 root=UUID=bbc9b964-df95-4ce0-9caf-be838f809cd1 ro rd.md=0 rd.lvm=0 rd.dm=0 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 KEYTABLE=it LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.0-7.fc16.i686.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.i686 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos6)'
search --no-floppy --fs-uuid --set=root bbc9b964-df95-4ce0-9caf-be838f809cd1
echo 'Loading Linux 3.1.0-7.fc16.i686 ...'
linux /boot/vmlinuz-3.1.0-7.fc16.i686 root=UUID=bbc9b964-df95-4ce0-9caf-be838f809cd1 ro single rd.md=0 rd.lvm=0 rd.dm=0 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 KEYTABLE=it LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.0-7.fc16.i686.img
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 06BAF30FBAF2FA4F
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###

CielitoLindux
17-11-2011, 11:26
Proviamo:
Prima di tutto fai una copia di grub:
# cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.vecchio
# chmod +w /boot/grub2/grub.cfg

Edita col tuo editor preferito il file /boot/grub2/grub.cfg

Dove vi è scritto set default="0" sostituisi 0 con 3
Salva, chiudi.
Poi: # grub2-mkconfig -o /boot/grub2/grub.cfg

Riavvia e vedi cosa accade.

sacarde
17-11-2011, 12:30
se ti puo essere di aiuto

http://fedoraproject.org/wiki/Grub2#Setting_default_entry

patel45
17-11-2011, 20:37
non uso fedora, ma secondo me il comando
# grub2-mkconfig -o /boot/grub2/grub.cfg
rimette tutto come prima se non si è modificato il file /etc/default/grub

morpheus89
18-11-2011, 07:36
Cielito innanzitutto grazie per l'aiuto, allora perdona la mia ignoranza, ma quando tu scrivi
Edita col tuo editor preferito il file /boot/grub2/grub.cfg

io ho digitato
# gedit /boot/grub2/grub.cfg
e mi è uscito come messaggio d'errore
(gedit:2009): EggSMClient-WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are supported


** (gedit:2009): WARNING **: Could not connect to session bus
cosa ho sbagliato?

PS: ora provo a vedere qualcosa anche dalla guida linkata da sacarde ;)

patel45
18-11-2011, 07:40
# gedit /boot/grub2/grub.cfg
significa che devi dare il comando gedit /boot/grub2/grub.cfg dopo essere diventato root col comando su, in tal caso il prompt del terminale termina per #

morpheus89
18-11-2011, 09:40
# gedit /boot/grub2/grub.cfg
significa che devi dare il comando gedit /boot/grub2/grub.cfg dopo essere diventato root col comando su, in tal caso il prompt del terminale termina per #Infatti è esattamente quello che ho fatto, e quello è stato il risultato. Ad ogni modo sono riuscito ad editare il file digitando il comando in modalità "utente normale" mettendo sudo davanti e stavolta ha funzionato :)

grazie ancora a Cielito e a tutti voi ;)

CielitoLindux
18-11-2011, 09:52
Ad ogni modo sono riuscito ad editare il file digitando il comando in modalità "utente normale" mettendo sudo davanti e stavolta ha funzionato

Quindi con quel procedimento che ti ho indicato sei riuscito a mettere Windows come default d'avvio?

CielitoLindux
18-11-2011, 12:05
non uso fedora, ma secondo me il comando
# grub2-mkconfig -o /boot/grub2/grub.cfg
rimette tutto come prima se non si è modificato il file /etc/default/grub
Infatti. Avevo mal interpretato alcune informazioni trovate sul web. Anche per me è la prima volta con grub2.

Il giusto procedimento (correggetemi se sbaglio) è:

# chmod +w /boot/grub2/grub.cfg
# gedit /etc/default/grub

Modificare le impostazioni, salvare, chiudere, poi:
# grub2-mkconfig -o /boot/grub2/grub.cfg

morpheus89
18-11-2011, 14:37
Quindi con quel procedimento che ti ho indicato sei riuscito a mettere Windows come default d'avvio?Si, con l'unica modifica nel mio caso era il 4 non il 3 :)

sabryosa
21-11-2011, 14:38
Scusate, sono alle prime armi con Fedora, figuriamoci col Grub...
anch'io sto cercando di modificarne l'avvio (ho Fedora 16 in dual boot con Windows 7), vorrei aumentare il "timeout" e selezionare Windows come default... ma se digitando:

# chmod +w /boot/grub2/grub.cfg
# gedit /etc/default/grub

mi appare:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Fedora"
GRUB_DEFAULT=saved
GRUB_CMDLINE_LINUX="rd.lvm.lv=vg_sabryosa/lv_root rd.dm=0 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.md=0 rd.luks=0 KEYTABLE=it rd.lvm.lv=vg_sabryosa/lv_swap LANG=en_US.UTF-8"

quale sarebbe la dicitura che va a modificare il sistema di default?
Cioè, il "timeout" ok, è lì bello chiaro e pronto per esser modificato... ma per il resto?
Devo dare anche il comando:

# gedit /boot/grub2/grub.cfg

e apportare modifiche anche lì prima di salvare il tutto e ripartire?
Riavviare e vedere cosa accade come consigliava Cielitolindux, vista l'inesperienza, mi mette un po' in ansia... ^^"

p.s.: al comando # cat /boot/grub2/grub.cfg mi vien fuori esattamente tutto il papier di roba ch'è uscito a Morpheus...

Ringrazio anticipatamente e mi scuso per la "capraggine"... ^^"

CielitoLindux
21-11-2011, 15:01
Fai le tue modifiche in /boot/grub2/grub.cfg. Poi facci sapere... Barby... ;)

sabryosa
21-11-2011, 16:07
... e dunque ho risolto con i comandi

# chmod +w /boot/grub2/grub.cfg
# gedit /boot/grub2/grub.cfg

editando il timeout con "10" e il default con "4" (nel mio caso Windows era alla riga 4), salvato e riavviato, e tutto è andato a buon fine.

Avevo fatto un primo tentativo dando anche
# grub2-mkconfig -o /boot/grub2/grub.cfg
come ultimo comando prima di riavviare ma senza risultati.

Grazie Cielitolindux. :)

patel45
21-11-2011, 19:54
le modifiche dirette al grub.cfg non sono permanenti, rimangono fino al prossimo aggiornamento del kernel, le modifiche fatte a /etc/default/grub sono invece permanenti se seguite dal comando grub2-mkconfig -o /boot/grub2/grub.cfg

sabryosa
21-11-2011, 20:35
Anche nella precedente versione del Grub però, su Fedora 14, ad ogni aggiornamento del Kernel, mi si resettava come s.o. di default il kernel di Fedora appunto appena scaricato, il timeout però restava quello precedentemente salvato da comando # gedit /boot/grub/grub.conf, dunque ho sempre pensato fosse normale. Andavo quindi a rieditare solo il s. o. di default...
Comunque prima di editare il grub.cfg avevo seguito il suggerimento di CielitoLindux precedente la mia richiesta:

# chmod +w /boot/grub2/grub.cfg
# gedit /etc/default/grub

impostato il timeout a 10, salvato e chiuso con comando

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

però da lì non riuscivo a capire come editare il s. o. di default...

Dunque il countdown più idoneo alle mie esigenze prima dell'avvio me lo sono comunque assicurato... ora non mi resta che attendere il prossimo aggiornamento e vedere cosa accade. Son curiosa... ;)

Gimli[2BV!2B]
21-11-2011, 22:29
Come già riportato da Sacarde: (http://fedoraproject.org/wiki/Grub2#Setting_default_entry)
recuperare una lista delle voci disponibili:root@kwankey:~# grep menuentry /boot/grub2/grub.cfg
menuentry 'Fedora (3.1.1-1.fc16.i686)' --class fedora --class gnu-linux --class gnu --class os {
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.i686' --class fedora --class gnu-linux --class gnu --class os {
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
copiare il nome che interessa ed impostarlo come default (usando il nome si ha la certezza che la selezione rimarrà invariata finché la voce esisterà):
root@kwankey:~# grub2-set-default "Windows 7 (loader) (on /dev/sda1)"
controllare il risultato:
root@kwankey:~# grub2-editenv list
saved_entry=Windows 7 (loader) (on /dev/sda1)
assicurarsi che Grub sappia che deve scegliere la voce salvata impostando GRUB_DEFAULT=saved nel file aperto congedit /etc/default/grub
applicare le modifiche:chmod +w /boot/grub2/grub.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg

Un po' macchinoso, ma è quanto consigliato nella guida.
Mi risulta sia anche possibile evitare di usare l'environment di Grub2 impostando direttamente il nome della voce che interessa nella variabile GRUB_DEFAULT nel file /etc/default/grubGRUB_DEFAULT="Windows 7 (loader) (on /dev/sda1)"con successiva applicazione delle modifiche con la solita coppia di verbosi comandi Fedora:chmod +w /boot/grub2/grub.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg

CielitoLindux
22-11-2011, 08:06
Molto Bene. Un po' di luce su questo grub2 finalmente. :)

CielitoLindux
22-11-2011, 11:32
Magari può servire:
http://streetcross.wordpress.com/2009/04/11/grub2-impariamolo/

sabryosa
26-11-2011, 12:35
... in effetti quel DO NOT EDIT THIS FILE come messaggio di benvenuto all'apertura del boot.cfg è piuttosto inquietante... :stordita: ma noi sfidiamolo, tanto c'abbiamo bell'e pronta la soluzione per ripristinarlo il Grub all'occorrenza, no? :ciapet: Quando ti si pianta all'avvio su schermata nera coi suoi simpaticissimi "error 17" o "16" a seconda di come gli gira... (mi capitò un paio di volte sulla precedente versione :mad: )
Però, vista la chiarezza della soluzione postata da Gimli, nonché
la logica (usando il nome si ha la certezza che la selezione rimarrà invariata finché la voce esisterà), e vista la mia precedente esperienza con la 14 di Fedora che ad ogni aggiornamento mi resettava l'avvio di Default sulla riga "0", ho deciso di riportare il file /boot/grub2/grub.cfg com'era all'origine e testare quest'ultima... ebbene, per la cronaca: è filato tutto liscio fin quando ieri sera, prima di spegnere, ho dato uno "yum update" da terminale, ritrovandomi oggi, all'accensione, di nuovo Fedora (3.1.2-1.fc16.i686) come default. :muro:
Ora... magari il dispetto lo fa solo a me... se a Fedora non son simpatica posso capire, magari preferisce i maschietti... ;) ma fatemi sapere a voi come va. :)

p.s. Nel frattempo Windows 7 è passato sulla "5" riga partendo da "0", non c'ha pace Verne con gli aggiornamenti oh! :D

sabryosa
03-12-2011, 15:50
Se può interessare, con i seguenti comandi possiamo cambiare lo sfondo del Grub 2 su Fedora 16 utilizzando come immagine la stessa predefinita di Verne:

da root
# grub2-mkfont --output=/boot/grub2/unicode.pf2 /usr/share/fonts/dejavu/DejaVuSansMono.ttf
poi andiamo a editare /etc/default/grub:
# gedit /etc/default/grub
aggiungendo le righe
GRUB_GFXMODE=1024x768x32
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_BACKGROUND=/usr/share/backgrounds/verne/default/normalish/verne.png
salviamo il file e chiudiamo, poi diamo come ultimo comando
# grub2-mkconfig -o /boot/grub2/grub.cfg


Fonte: http://www.fedora-it.org/guide/verne/migliorare-il-background-di-grub2

sysman
28-12-2011, 12:49
mi spiegato perchè sto maledetto grub2 della fava non prende le modifiche che faccio?
Ho modificato in /etc/default/grub il TIMEOUT mettendo 30 a posto di 5 (che credo sia il default). Faccio "grub2-mkconfig" ma la modifica non viene considerata. Mi illuminate per cortesia? altra curiosità, perchè nei vari howto di grub2 viene menzionato "update-grub2" che non esiste in fedora?

grazie
Christian

sabryosa
28-12-2011, 15:02
Prima dovresti dare, se non l'hai fatto, permesso di scrittura con chmod +w /boot/grub2/grub.cfg e per ultimo grub2-mkconfig -o /boot/grub2/grub.cfg Pare, come descritto sopra, vadano a braccetto questi comandi per rendere effettive le modifiche al file /etc/default/grub.
Per quanto riguarda il comando update-grub2 credo sia valido per Ubuntu, su Fedora in effetti non esiste.

ffeeddee1@gmail.com
10-02-2012, 13:49
Ciao a tutti,
sono da poco passato a fedora dopo avere usato per parecchio tempo ubuntu.
nell'editing di grub mi sono imbattuto in quelle opzioni (indicate nel titolo) con cui viene caricato il kernel.
presumo siano argomenti per i RAID (nn ho idea della varia differenza)...ma è possibile toglierli completamente?

un'altra informazione
il tempo di boot di fedora nn è mozzafiato, anzi ci si potrebbe lavorare parecchio..
qualcuno sa se esiste un programma per gestire i servizi all'avvio (quello che era bootupmanager per ubuntu).

grazie mille!!
..fede!

CielitoLindux
10-02-2012, 14:48
Ciao a tutti,
sono da poco passato a fedora dopo avere usato per parecchio tempo ubuntu.
nell'editing di grub mi sono imbattuto in quelle opzioni (indicate nel titolo) con cui viene caricato il kernel.
presumo siano argomenti per i RAID (nn ho idea della varia differenza)...ma è possibile toglierli completamente?
Prova a toglierli e vedi come si comporta il sistema. Magari fatti una copia del file. Cosa ti aspetti che accada togliendoli?

un'altra informazione
il tempo di boot di fedora nn è mozzafiato, anzi ci si potrebbe lavorare parecchio..
qualcuno sa se esiste un programma per gestire i servizi all'avvio (quello che era bootupmanager per ubuntu).

grazie mille!!
..fede!
Il sistema è già ottimizzato con i servizi che deve avviare per la macchina.
Sei sicuro che non sia un problema al boot dovuto a qualcos'altro? Durante l'avvio premi il tasto "esc" e vedi se da qualche errore o se passa molto tempo nell'attivazione di un servizio. Facci sapere.

sacarde
10-02-2012, 16:23
fedora ha systemd



dovresti gestire i servizi dal: systemd system manager:

systemadm