All’inizio GRUB non supportava le ext4, ora il supporto c’è ma in molti lamentano malfunzionamenti o totale fallimento da parte di GRUB in fase di boot, qualunque sia il vostro caso, se volete upgradare a GRUB2 dovete assolutamente imparare a conoscerlo.Le differenze col vecchio GRUB sono numerose e le cose simili invece possono trarre in inganno. Partiamo dal vecchio menu.lst, bene questo file è stato rimpiazzato dal grub.cfg che all’occhio appare molto simile, ecco un esempio estratto dal mio grub.cfg di Debian:
| # # DO NOT EDIT THIS FILE # # It is automatically generated by /usr/sbin/grub-mkconfig using templates # from and settings from /etc/default/grub #### BEGIN /etc/grub.d/00_header ### set default=0 set timeout=5 set root=(hd0,1) search –fs-uuid –set e1968450-a3e3-46bd-9eed-b4f8a76ea1f0 if loadfont /usr/share/grub/ascii.pf2 ; then set gfxmode=640×480 insmod gfxterm insmod vbe if terminal_output gfxterm ; then true ; else # For backward compatibility with versions of terminal.mod that don’t # understand terminal_output terminal gfxterm fi fi ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/05_debian_theme ### ### BEGIN /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/30-multiboot ### ### BEGIN /etc/grub.d/30_os-prober ### ### BEGIN /etc/grub.d/40_custom ### |
Diciamo che la prima cosa che dovrebbe saltare all’occhio è quella “strana” scritta all’inizio del file di testo:” DO NOT EDIT THIS FILE”
ebbene sì, nonostante le righe siano molto simili a quelle del menu.lst e con un minimo di acume si possa capire la loro struttura, è bene stare alla larga da quel file, infatti se per caso venisse editato potrebbe comportare il non funzionamento del GRUB2. Ovviamente in fase di boot l’edit manuale è comunque possibile (sempre in maniera temporanea come per GRUB), ma c’è qualche piccolo cambiamento che riguarda i tasti da premere, infatti per editare basta premere “e” sulla voce desiderata (come GRUB), quindi editare ciò che più ci aggrada avendo a disposizione in un sol colpo tutte e 3 le righe di configurazione (mentre con GRUB si edita una alla volta) e quindi bootare con “ctrl+x” (al posto di “b”). Ma per l’aggiunta o la modifica di nuove voci? Beh i più arguti avranno sicuramente notato queste scritte:
### BEGIN /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/30-multiboot ###
### BEGIN /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
è quindi chiaro che ogni sezione del grub.cfg viene gestita da un altro file. Ma vediamo in una piccola e semplice tabella a cosa corrispondono:
| FILE | FUNZIONE |
| /etc/grub.d/00_header | Contiene le impostazioni base del GRUB2, come il timeout, la partizione root ecc.. |
| /etc/grub.d/05_debian_theme | Contiene le informazioni inerenti il tema, in questo caso qullo base Debian bianco/blu |
| /etc/grub.d/10_linux | Configura le voci del sistema operativo sul quale GRUB2 è installato |
| /etc/grub.d/20_memtest86+ | Contiene le impostazioni per bootare i memtest |
| /etc/grub.d/30-multiboot | Questo è il file previsto per aggiungere voci riguardanti altri OS GNU, va aggiunto |
| /etc/grub.d/30_os-prober | Configura le voci per eventuali altri OS rilevati in fase di installazione, in caso di più HD può non funzionare correttamente |
| /etc/grub.d/40_custom | È un esempio su come inserire una voce, in realtà non spiega nulla |
Bene ma come sono fatti questi file? In seguito vedremo brevemente come applicare qualche modifica in più, ora analizziamoli singolarmente:
/etc/grub.d/00_header
| #! /bin/sh -e# update-grub helper script. # Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. # # GRUB is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # GRUB is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GRUB. If not, see <http://www.gnu.org/licenses/>. transform=”s,x,x,” prefix=/usr . ${libdir}/grub/grub-mkconfig_lib # Do this as early as possible, since other commands might depend on it. if [ "x${GRUB_DEFAULT}" = "x" ] ; then GRUB_DEFAULT=0 ; fi cat << EOF case ${GRUB_TERMINAL_INPUT}:${GRUB_TERMINAL_OUTPUT} in if [ "x${GRUB_SERIAL_COMMAND}" = "x" ] ; then case x${GRUB_TERMINAL_INPUT} in case x${GRUB_TERMINAL_OUTPUT} in # Pick a video backend cat << EOF |
Come possiamo notare si tratta di un semplice script dove è facile modificare opzioni come il timeout o la risoluzione, un po’ meno il resto
/etc/grub.d/05_debian_theme
| #!/bin/bash -esource /usr/lib/grub/grub-mkconfig_lib
set_blue_theme() # check for usable backgrounds # set the background if possible # otherwise, set the traditional Debian blue theme |
Ancora uno script. Sempre semplice la gestione dei colori e l’applicazione del tema in caso di sfondo, se vogliamo evitare possiamo semplicemente cancellare (o meglio spostare altrove) il file in questione.
/etc/grub.d/10_linux
| #! /bin/sh -e# update-grub helper script. # Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. # # GRUB is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # GRUB is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GRUB. If not, see <http://www.gnu.org/licenses/>. prefix=/usr if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then # loop-AES arranges things so that /dev/loop/X can be our root device, but if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \ test_numeric () test_gt () find_latest () list=`for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* ; do while [ "x$list" != "x" ] ; do initrd= cat << EOF cat << EOF list=`echo $list | tr ‘ ‘ ‘\n’ | grep -vx $linux | tr ‘\n’ ‘ ‘` |
Ormai penso non vi stupiate più, come avete capito stiamo parlando sempre di script! Qua è meglio lasciate tutto come si trova…
/etc/grub.d/20_memtest86+
| #!/bin/bash set -eif test -e /boot/memtest86+.bin ; then echo “Found memtest86+ image: /boot/memtest86+.bin” >&2 cat << EOF menuentry “Memory test (memtest86+)” { linux ${GRUB_DRIVE_BOOT}/memtest86+.bin } EOF fi |
Anche qui uno script che non serve modificare
/etc/grub.d/30-multiboot
| cat << _EOF menuentry “Ubuntu Jaunty Jackalope” { set root=(hd1,2) linux /boot/vmlinuz-2.6.28-11-generic root=UUID=f82389f6-7061-408b-88ff-f97c199f30c6 initrd /boot/initrd.img-2.6.28-11-generic } _EOF |
Questa è la voce che io ho inserito, la sintassi è molto semplice.
/etc/grub.d/30_os-prober
| #! /bin/sh -e# update-grub helper script. # Copyright (C) 2006,2007,2008 Free Software Foundation, Inc. # # GRUB is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # GRUB is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GRUB. If not, see <http://www.gnu.org/licenses/>. if [ -z "`which os-prober 2> /dev/null`" -o -z "`which linux-boot-prober 2> /dev/null`" ] ; then OSPROBED=”`os-prober 2> /dev/null | tr ‘ ‘ ‘^’ | paste -s -d ‘ ‘`” for OS in ${OSPROBED} ; do if [ -z "${LONGNAME}" ] ; then echo “Found ${LONGNAME} on ${DEVICE}” >&2 case ${BOOT} in cat << EOF for LINUX in ${LINUXPROBED} ; do LINUXROOT=”`grub-probe –target=drive –device ${LBOOT} 2> /dev/null`” if [ -z "${LLABEL}" ] ; then cat << EOF |
Anche qua uno script che è meglio non toccare…
/etc/grub.d/40_custom
| #!/bin/sh exec tail -n +3 $0 # This file is an example on how to add custom entries |
Questo è un esempio, può essere tranquillamente eliminato o essere sfruttato per aggiunte personalizzate come avviene in 30-multiboot o magari solo per aggiungere un testo..
Iniziamo ora a spiegare un po’ come agire su questi file. Per prima cosa cito il README presente in /etc/grub.d:
00_*: Reserved for 00_header.
10_*: Native boot entries.
20_*: Third party apps (e.g. memtest86+).
e come potete intuire capiamo che i numeri non sono casuali, quindi neanche noi dobbiamo modificarli a caso.
lo 00_ davanti al nome del file è riservato al file di configurazione, a noi quindi non servirà.
10_ è per il sistema operativo ospitante, anche qui non lo utilizziamo per eventuali nuovi file
20_ è per le applicazioni come il memtest, anche qui a meno di aggiunta di nuove applicazioni/script possiamo saltare…
i numeri che seguono possono essere usati liberamente (30_ 40_ 50_…) e servono a decidere quale file verrà letto per primo e quindi quali voci appariranno per prime nel grub.cfg. Nel mio caso il 30- serve appunto per arrivare prima del 30_, ma generalmente consiglio di dare un numero differente ad ogni script! Abbiamo quindi capito che la rimozione di un file corrisponde alla rimozione delle righe interessate, cosa praticamente d’obbligo per chi ha più di un hd. Questo menu.cfg infatti non è quello che utilizzo dato che attualmente utilizzo il GRUB2 installato su Jaunty, GRUB2 molto rieditato da me per i miei vari hd e sistemi operativi. Quando all’installazione il GRUB2 ha eseguito lo script os-prober ha infatti rilevato tutto ma ha fatto un po’ di confusione con le varie partizioni/hd, per questo ho dovuto eliminarlo. Eliminando quello script possiamo aggiungere le voci che ci interessano creando il file 30-multiboot, dove ogni voce deve avere la seguente struttura:
| cat << _EOF menuentry “Nome distribuzione GNU” { set root=(hdX,Y) linux /boot/vmlinuz-X.Y root=UUID=xxxxxxxxxxxxxxxxxxxxx initrd /boot/initrd.img-X.Y } _EOF |
dove ovviamente dobbiamo mettere il nome della nostra distro (n.b. solo distribuzioni GNU, gli altri sistemi operativi tipo MacOSX o Windows NO!), la partizione root, le immagini di boot e l’UUID della partizione contente il nostro OS.
ATTENZIONE: la numeratura delle partizioni è cambiata! mentre in GRUB le partizioni iniziano da “0″ ora iniziano da “1″, rimane invariato invece il discorso per gli hard disk, quindi se la partizione con GRUB è “0,0″ con GRUB2 sarà “0,1″
ATTENZIONE: è sempre possibile sostituire UUID= con /dev/sdX, ovvero col numero partizione, io consiglio tuttavia l’utilizzo dell’UUID che è più sicuro (si ottiene da terminale con : ls -l /dev/disk/by-uuid/)
Ogni volta che cancelliamo o modifichiamo un file di configurazione dobbiamo lanciare da terminale il seguente comando:
sudo update-grub
in modo tale che il grub.cfg venga rigenerato.
Diciamo che all’appello c’è tutto quello che può interessare, manca però una cosa che potrebbe essere utile a chi utilizza MacOSX, Windows o magari un altro OS che vuole avviare col suo boot loader. Per aggiungere questa opzione basta cerare un altro file, ma va bene anche quello esempio, col seguente contenuto:
| cat << _EOF menuentry “Nome sistema operativo” { set root=(hdX,Y) chainloader +1 } _EOF |
In questo caso risulta possibile una altra via, ovvero editare il file etc/default/grub utile anche per altri aspetti:
| # This file is sourced by update-grub, and its variables are propagated # to its children in /etc/grub.d/ GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX=”quiet”# Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # Uncomment if you don’t want GRUB to pass “root=UUID=xxx” parameter to Linux |
ovvero aggiungendo queste righe:
| GRUB_OTHER_TITLES=(“MacOSX” “FreeBSD”) GRUB_OTHER_DEVICES=(/dev/sdxY /dev/sdyZ) |
Ovviamente sostituendo i dati con i nostri. Come sempre ricordiamoci di aggiornare il GRUB2 dopo una modifica!
Siete convinti di questo loader? bene allora installarlo è davvero semplice, basta installare il pacchetto GRUB2
sudo apt-get install grub2
e per far si che si sostituisca a grub dare
sudo upgrade-from-grub-legacy
chiaro no?
AGGIORNAMENTI:
Come far partire di default una entry presente nel grub.cfg:
Editare il file /etc/default/grub
e alla voce GRUB_DEFAULT=”" inserire esattamente la riga desiderata, così come appare. Esempio:
GRUB_DEFAULT=”Microsoft Windows XP Home Edition (on /dev/sda1)”
salvare e chiudere, quindi il solito
sudo update-grub
(Grazie ad et4beta per aver spiegato il funzionamento di questa voce tra i commenti di questo post! )
Aggiungere una voce customizzata alla ubuntu way.
Sopra ho riportato due modi per aggiungere un OS, o una qualsiasi voce personalizzata, nel nostro grub.cfg. Ne aggiungo un terzo, presente da ubuntu kk in poi:
editare il file /etc/grub.d/40_custom :
| #!/bin/sh exec tail -n +3 $0 # 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. menuentry “xxxxxxxxxxx” { set root=(hdX,Y) search –no-floppy –fs-uuid –set xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx chainloader +1 } |
aggiungendo l’os desiderato, quindi aggiornare grub con il solito
sudo update-grub









very good
Chiaro no?
Per te forse si per me ancora no… lo letto 2 volre ma mi sa che lo devo fare altre 20… speriamo bene… il tempi di avvio si abassa anche per chi come me non ha un dual-core, o rimane uguale a prima..? Ho letto che con Grub2 ci sono problemi (diciamo che non è facile come con Grub) con la rimozione dei vecchi Kernel, è vero? Hai fatto un bel lavoro Streetcross, come sempre d’altronde… Buone Feste a Tutti…
Mamma mia che casino sto nuovo Grub..
ho cercato di aggiungere una nuova riga per far partire Arch che ho appena installato ma non ci sono mica riuscito.
Ho creato il file 30_multiboot come hai detto te (aggiungendo #! /bin/e all’inizio dato che deve riconoscerlo come uno script) e ho lanciato l’update-grub ma non riesce a riconoscermi questo file e non compare nel menu..
Per ora ho risolto aggingendo le righe a grub.conf ma so gia che se do un update-grub adesso esce fuori un bel casino.. bisogna sempre complicarle le cose altrimenti non siamo contenti vero?
@Muflone Grazie
@Ubuket quando installi/rimuovi i kernel c’è l’update automatico esattamente come avviene per GRUB, anzi con un update grazie allo script di configurazione (teoricamente) si ha l’aggiornamento anche delle voci per gli altri OS (anche se come nel mio caso può applicare una errata numerazione degli hd rendendo la funzione inutile, ma ricordiamoci che è ancora in sviluppo) quindi nessun problema da quel punto di vista, i tempi di boot non sono legati propriamente a GRUB o GRUB2, la differenza vera sta in jaunty che è un miracolo!
@Cla non serve aggiungere #!bin/bash o sh o quant’altro, bastano solo quelle 4 righe che ho messo e funziona alla grande, comunque sì, nel caso di update puoi avere rogne, anzi qualcuno le ha già avute anche prima dell’update
@Cla per sicurezza assicurati anche che il file abbia i permessi di esecuzione
ciao…complimenti per la guida, ma se possibile vorrei sapere dove scaricare i temi per grub2, e magari come fare per installarli!!
@demogta grazie, i temi per grub2 non so neanche io dove trovarli onestamente, ho trovato un paio googleggiando ma nulla di serio, per l’installazione dipende di volta in volta, ci sono sempre le istruzioni, per i temi “classici” invece, ovvero quelli semplici con foto di sfondo e basta, l’installazione è uguale a quella del GRUB solo che ovviamente invece di aggiungere subito le righe al grub.cfg devi mettere lo script
è sempre un piacere leggerti!
@iteand grazie ^_^
Salve, io l’ho installato, non mi piace nemmeno un pò, sapresti dirmi come rimuoverlo e ritornare a GRUB??
Grazie.
@Paolo certo. se prima di installarlo lo hai provato (come consigliato) e quindi non hai dato l’upgrade, ti basta andare in synaptic e reinstallare grub. se invece hai dato anche l’upgrade e solo dopo hai deciso di tornare indietro allora oltre a reinstallare grub da synaptic devi aprire un terminale e dare sudo grub-install /dev/sda dove sda è l’hd principale da cui il bios legge per primo ovviamente
Bravo streetcross, stavo cercando giusto una spiegazione come questa ;D
@Zoff grazie
Ciao street,
scusa ma pur avendo momentaneamente eliminato GRUB2, dato che non mi aveva riconosciuto gli altri O.S. già installati, sto sistemando gli script per poterlo utilizzare in futuro.
Non ho però capito un passo di ciò che hai scritto, e precisamente:
“Quando all’installazione il GRUB2 ha eseguito lo script os-prober ha infatti rilevato tutto ma ha fatto un po’ di confusione con le varie partizioni/hd, per questo ho dovuto eliminarlo. Eliminando quello script possiamo aggiungere le voci che ci interessano creando il file 30-multiboot, dove ogni voce deve avere la seguente struttura:”
Cioè non mi è chiaro se hai dovuto togliere il file 30_os-prober o che altro.
Puoi chiarirmi.
Grazie.
@et4beta scusa per il ritardo ma ero impegnato, sì ho eliminato quello script in modo tale che non venga rieseguito ad ogni aggiornamento di grub, penso che questo baco verrà risolto prima del rilascio della prossima ubuntu (è uno script tipico di ubuntu credo, dato che non è uguale negli altri os) ma per ora mi “incasina” tutte le partizioni/hd e non riesco ad avviare nulla
Grazie street,
preciso che il tuo scritto era sufficientemente chiaro, ma prima di effettuare cambiamenti importanti mi piace avere la certezza assoluta. Anche se, invece di eliminare lo script, potrei semplicemente rinominarlo.
Confermo che il bug, che definirei un po’ grossolano, è piuttosto fastidioso, infatti installato Karmic (Alpha 2), sono rimasto di stucco nel vedere che nel menù del Grub(2) era l’unico O.S. avviabile dei quattro presenti, per cui l’ho subito “spianato” reinstallando il vecchio, ma tanto prima o poi toccherà adattarsi.
Mi rimane poi da risolvere come inserire l’avvio di XP, cui non posso rinunciare, ma questa è un’altra storia di cui riparleremo.
@et4beta leggi bene, ho scritto come aggiungere windows
ad ogni modo spero per ubuntu che fixi il tutto prima del rilascio ufficiali, altrimenti il fallimento di windows vista in confronto sembrerà una cosa da nulla… lo script meglio non renderlo eseguibile se lo rinomini, tutto ciò che sta nella cartella viene eseguito se è eseguibile
Infatti ho rinominato 30_os-prober in ex_30_os-prober, e lui lo ha eseguito ugualmente, però dopo l’ultimo aggiornamento il Grub2 mi ha fatto comparire una finestra con la richiesta di spuntare gli HD sui quali cercare gli OS, io che ne ho due ho spuntato sia “sda” sia “sdb” e lui mi ha trovato tutti: XP su sda, e Intrepid, Jaunty e ovviamente Karmic su sdb, e da come me li ha presentati sono quasi sicuro che si è andato a leggere e copiare i menu.lst.
Per cambiare il timeout e la riga di avvio di default nel menu del grub2 ho avuto risultato editando il file /etc/default/grub.
Il file 30-multiboot che ho creato dietro tuo suggerimento non l’ho ancora reso eseguibile e la sua presenza viene ignorata.
Ho fatto una prova ed ora ho la certezza che si va a leggere e si copia le righe di avvio presenti nei file “menu.lst” di tutte le distro linux installate.
@et4beta la copia dal menù.list è una funzione proposta in fase di installazione di grub2 se non erro, puoi anche evitarlo, a me però ha dato “problemi” in ambo i casi
Per ora io invece ho l’impressione di non avere problemi con Grub2.
In fase di installazione (la seconda, perché nella prima mi si era inchiodato l’xorg dopo un aggiornamento, Karmic non partiva più quindi ho reinstallato tutto) non mi ha chiesto nulla, solo al primo mega-aggiornamento mi ha chiesto su quali HD cercare gli altri OS, come già ti ho scritto.
Ora, se vado a modificare un menu.lst, sia di Intrepid, sia di Jaunty, togliendo o aggiungendo delle righe, è sufficiente che lanci Karmic e dia da terminale “sudo update-grub”, dopo aver corretto nel file /etc/default/grub il parametro “default” al giusto valore della riga che voglio, per vedere al successivo avvio il menu di grub2 aggiornato.
Attendo di avere le idee più chiare, ma per ora tutto ok.
Come si fa con grub2 a cambiare l’ordine di avvio dei sistemi operativi ? Avendo il kernel di default 2.6.26, ultimamente ho installato il kernel 2.6.30 per provarlo e me lo ha messo come primo sistema che mi parte al boot, io vorrei farlo diventare il secondo.
Con grub era una banalità, mi bastava semplicemente modificare il file menu.lst spostando le relative righe ma, so che il file di configurazione di grub2, a differenza, non puo’ essere modificato direttamente, quindi qual’è il file da configurare in questo caso in modo che un update-grub mi rimette il tutto nell’ordine desiderato ?
@eta4beta può essere che su karmic stiano risolvendo, io non ci ero riuscito, non avendo fatto altre prove (anche perchè comunque lo uso su debian che quindi non segue gli aggiornamenti ubuntiani) non posso dirti se ora è tutto ok, ma se a te funziona è probabile che il team ubuntu sia a buon punto. Bisogna vedere se questi fix valgono anche nella versione “originale”
@step effettivamente essendo tutto gestito da uno script è una gran bella inchiappettata. non penso ci sia un modo per invertire le voci però potresti aggiungere manualmente una voce per il kernel 2.6.26 prima dello script per ubuntu
Ho trovato la soluzione al problema di quale sistema operativo far partire di default al boot. Per ottenere questo non serve cambiare l’ordine di avvio ossia di far trovare sulla prima riga il kernel che interessa far partire in automatico, lo stesso si ottiene modificando la posizione della selezione di avvio, il problema pero’ è che il sistema deve farlo da se. Ecco allora che modificando la seguente opzione:
$ cat /etc/default/grub|grep GRUB_DEFAULT
GRUB_DEFAULT=2
originariamente era a 0 e la selezione evidenziava la prima riga sulla schermata di avvio di grub2, portando il valore a 2 ed effettuando un update-grub ora si posiziona, al boot, sulla riga 3 selezionando il kernel che mi interessa avviare in automatico senza dover effettuare nessuna operazione manuale con la tastiera.
@step è vero non ci avevo pensato, la stessa cosa è attuabile anche in grub legacy -.-’ sono pirla
grazie della segnalazione!
Ciao streetcross ottima guida, volevo chiedere consiglio per un problema al quale non riesco a trovare una soluzione. In realtà non è un problema strettamente riguardante la configurazione, bensì più inerente all’installazione. Visto che nemmeno sul forum internazionale pare esserci una risposta chiedo a te…sperando di non andare troppo fuori argomento. Ho installato grub2 su Jaunty, successivamente per errore ho fatto degli aggiornamenti su Karmic alpha, installato in un altra partizione e questo ha sovrascritto grub2. Ora al boot si avvia grub2 appartenente alla partizione di Karmic che al momento è l’unico OS che riesco ad avviare. Come si pùò fare in modo che all’avvio parta grub2 installato su Jaunty?
Ho provato a cercare nel manuale e credevo di aver trovato il comando che facesse al caso mio grub-retup -r (hd0,1) ma non ho ottenuto nulla.
Grazie
@ Alexteo puoi utilizzare supergrub disk per fixare grub2 di jaunty, esattamente come per il grub, altrimenti devi aggiungere al grub2 di karmic la voce per jaunty, bootarlo e da jaunty dare sudo grub-install /dev/sda (senza specificare la partizione perché vuoi che vada nell’mbr)
Hi.
Complimenti per la presentazione.
Visto che hai gia’ analizzato GRUB2, pongo la vexata quaestio:
D1::” e’ possibile con GRUB2 analizzare data.ora e decidere quale OS buttare tra gli N-os disponibili ? “.
D2::” e’ possibile con GRUB2 analizzare data.ora e decidere quale OS buttare, e quale file INITTAB eseguire o cmq dare un parametro per determinare uno script da eseguire pre o post INITTAb ????”.
Grazie 1K in anticipo per l’attenzione che mi dedichi.
Cordialmente.Martino
@Martino, domande pensanti
ma non credo di avere capito bene tutto.
1) §Intendi fare in modo che ad una determinata ora parta di defalt un os e in un’altra ora un altro?
2) a che OS ti riferisci? su ubuntu non c’è più inittab. In ogni caso per queste cose mi sembra più adatto sfruttare le potenzialità dell’os che grub, quello che chiedi dovrebbe essere tutto fattibile tramite script di avvio e bash
Ciao streetcross.
” ??
ecco l’esempio. Abbiamo un calcolatore con diverse partizioni e diversi OS a bordo. L’ OS in macchina, via CRON, puo’ essere pilotato al reboot. .
Ora, in fase di reboot, mi piacerebbe pilotare da GRUB2 la baracca per decidere, a seconda di data ed ora, quale OS bootstrappare, e non necessariamente il default.
Ovviamente, il tutto puo’ essere gestito dall’ OS che pilota il GRUB, rimappando il menu.lst, un secondo prima del reboot.
Tuttavia, mettere in piedi questa cosa in GRUB, al prezzo di tempo e fatica, per vedere poi che in GRUB2 “viene ????” gestita in modo facile e “robusto ???”, uno si suicida, oppure si documenta per non reinventare l’acqua calda.
Ecco sintetizzate le condizioni al contorno del mio precedente messaggio.
apropos…cosa vuol dire “domande pensanti
As usual, grazie 1K per il tempo che mi dedichi.
Cordialmente. Marino
@Martino, allora credo che non sia possibile, perchè il grub.cfg viene generato da script che debbono essere eseguiti durante l’attività dell’os, quindi è difficile che possa cambiare il “default” in corsa, penso che la via più pratica sia quella del workaround che hai spiegato tu stesso, però stai attento perchè devi creare uno script che modifichi gli script e poi rigenre grub.cfg, preferibilmente distanziando la sua esecuzione di qualche secondo dall’effettivo shutdown dato che richiede una manciata di secondi la sua esecuzione.
Per domande pesanti intendo domande intelligenti
è un complimento
@step
Ho notato che startup-manager funziona su grub2!
Ciao streetcross. Ho letto la guida ma ti faccio lo stesso questa domanda perchè non voglio fare casini. Qual è il sistema più semplice per eliminare le voci dei vecchi kernel e lasciare solo l’ultimo? Con GRUB bastava editare il menu.lst e cancellarli ma con GRUB2?
@The Doctor quello che facevi con GRUB era già sbagliato, le voci non vanno solo cancellate, devi disinstallare i kernel, altrimenti se ne stanno lì solo ad occupare spazio inutilmente
Istruttivo il tuo articolo, sono alle prese con grub2.
Per avere le entries di alti SO senza editare i file (non si sa mai…) in alternativa si puo’
- installare il pacchetto os-prober (secondo me dovrebbe essere
una dipendenza di grub2..)
- update-grub2
Spero che eliminano questa bug al piu’ presto
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=544064
Ciao, una domanda. dovendo installare ubuntu su un acer aspire 3810t ho letto che si doveva aggiungere libata.noacpi=1 alla kernel boot command line, quindi si doveva editare il menu.lst. con grub 2 invece come faccio? dove devo inserire questa istruzione? grazie
@cyberfra ottimo, grazie della dritta!
poi basta editare lo script che impone le opzioni standard, ovvero /etc/default/grub per la precisione alla riga
@Free intanto controlla che sia vero, magari col kernel aggiornato non sserve
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
all’interno delle “” che tengono quiet splash
Ciao street
la mia situazione attuale è questa: HD interno del portatile con jaunty più due sistemi windows. HD esterno con karmic più eventuale altra distro, il tutto avviato dal grub di jaunty.
Il mio intento è (a suo tempo)
1) aggiornare jaunty a karmic reinstallando la root e installando grub2
2) aggiornare karmic alla alpha di “lucid linx” installando (suppongo sarà ancora possibile) in questo caso grub2 nella root per non fargli sovrascrivere quello di jaunty.
Suppongo a questo punto, per avviare la alpha di “lucid” dal grub2 di karmic io dovrei editare il file /etc/grub.d/30-multiboot (di karmic) inserendovi una voce simile a questa
cat << _EOF
menuentry “Ubuntu Jaunty Jackalope” {
set root=(hd1,2)
linux /boot/vmlinuz-2.6.28-11-generic root=UUID=f82389f6-7061-408b-88ff-f97c199f30c6
initrd /boot/initrd.img-2.6.28-11-generic
}
_EOF
Il tutto seguito da un bel
sudo update-grub
Almeno mi sembra di aver capito questo…
O devo agire anche sull'omonimo file di lucid ?
@gian64 così aggiungi manualmente la voce per il tuo nuovo lucid, se però dai semplicemente l’update-grub lo script os-prober dovrebbe rilevare automaticamente il nuovo sistema. in caso contrario o lo aggiungi come dici tu o (te lo consiglio) semplicemente aggiungi tramite chainload il nuovo grub di lucid, così il grub di lucid sarà sempre aggiornato con i vari kernel e tu non dovrai modificare a mano ogni volta lo script
Cioè intendi dire
1) installare su hd interno karmic installando normalmente grub2 nel MBR
2) installare lucid su hd esterno installando questa volta grub2 nella sua root
3) dare update-grub
oppure
1)…
2)…
3) qui non credo di aver capito bene, devo aggiungere al file
/etc/grub.d/30-multiboot di karmic
una voce tipo questa
cat << _EOF
menuentry “Nome sistema operativo” {
set root=(hdX,Y)
chainloader +1
}
_EOF
relativa a lucid copiata dall'omonimo file di questo
@gian64 l’ultima che hai detto è quella giusta:
1)..
2)..
3) aggiungi
cat << _EOF
menuentry “Nome sistema operativo” {
set root=(hdX,Y)
chainloader +1
}
_EOF
(tramite script chiaramente)
al grub installato sull'mbr, così utilizzi tutti e due i grub senza problemi
@gian64 scusa con “giusta” intendevo migliore
anche la prima spiegazione è corretta, però te la sconsiglio perchè non sempre os-prober funziona bene purtroppo, su LQH abbiamo visto diversi problemi legati a grub2 e lo script os-prober
Ottima guida steetcross
Ovviamente tutte le novità hanno bisogno di un periodo di adattamento.
Parlando di Karmic devo dire che la fase di boot relativa a GRUB è più lunga della fase di caricamento dell’intero s.o.
Ho visto che ci sono diversi temi utilizzabili nello splash
1. come abilitare lo splash?
2. come cambiare tema di default?
ho provato qualche modifica in default-grub ma senza esito
)))))
per ora sono riuscito a far comparire il menu
ciaociao
Ok, grazie. Però una cosa non ho capito bene, in che senso devo aggiungere la voce tramite script…
Allora, riassumendo: io non posso editare il file /grub.cfg, però le varie voci relative ai vari SO sono aggiunte al /grub.cfg dagli script che io vado a editare, tipo il /etc/grub.d/30-multiboot: però una cosa non mi è chiara, per editare questo file devo oppure no farlo a mano? in caso contrario non ho capito…
Grazie per la pazienza, ciao
Scusate …. sarò grezzo ma cambiando gli attributi di grub.cfg con chmod e modificando la stringa di default e del time con sudo nano ho risolto il problema della sequenza e dell’attesa….. non capisco tutta questa paura di editare il file
Ciao, ho installato per prova grub2 su jaunty, al riavvio tutto regolare, dopo il “sudo upgrade-from-grub-legacy” tutto funzina alla perfezione, sia jaunty che windows si avviano regolarmente.
I guai arrivano dopo, quando tento di inserire in grub2 una voce relativa a karmic su hd esterno.
Non trovando lo script /etc/grub.d/30-multiboot e non sapendo come crearlo decido di inserire la voce
cat << _EOF
menuentry “Ubuntu Jaunty Jackalope” {
set root=(hd1,2)
linux /boot/vmlinuz-2.6.28-11-generic root=UUID=f82389f6-7061-408b-88ff-f97c199f30c6
initrd /boot/initrd.img-2.6.28-11-generic
}
_EOF
nello script /etc/grub.d/40_custom…
Dato "sudo update-grub", sorpresa!
Non c'è più verso di avviare jaunty!
All'avvio di grub2 mi dice
Syntax error dicendomi che qualcosa non va alle righe 70 e 72 di non ricordo quale file + press any key to continue…
premo, mi mostra la schermata di scelta ma se seleziono ubuntu mi dice che prima di avviare dovrei caricare il kernel…
Ho provato in tutti imodi compreso SGD a ripristinare grub ma non c'è stato verso, alla fine per riavere la mia jaunty ho dovuto reinstallare…
Quindi di sicuro ho errato nel modificare quel file, come devo fare a creare il file /etc/grub.d/30-multiboot?
Dimenticavo, in tutto questo pasticcio, contrariamente a quanto accade in genere a me windows si è sempre avviato regolarmente.
Ho un computer un po’ vecchiotto. Per far si che si spegnesse, con il vecchio GRUB, aggiungevo ACPI=force, in /boot/grub/menu.lst, e tutto funzionava.
Ora non riesco a capire dove, sempre che sia possibile, devo aggiungerlo.
Ciao
SALVE,
dopo aver istallato UBUNTU 9.10 ho collegato un’altro HD con WinXP.
Eseguito sudo update-grub ho riavviato il tutto.
Al boot di grub ho trovato presente la riga per avviare WIndows.
Selezionando e dando invio per il boot, ecco l’errore:
ERROR: INVALID SIGNATURE
Che cosa significa.
Ah, dimenticavo, quando ho eseguito sudo update-grub mi ha restituito un errore:
Generating grub.cfg …
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sdb1
grub-probe: error: Cannot find a GRUB drive for /dev/sdb1. Check your device.map.
done
Con UBUNTU 9.04 modificando aggiungento la mappature degli HD ero riuscito a fare avviare il S.O. che mi piaceva in quel momento.
Di seguito le linee del vecchio menu.lst :
title WindowsXP
map (hd0) (hd1)
map (hd1) (hd0)
chainloader (hd1,0)+1
Queste con grub vecchio ho risolto il mio problema.
Come faccio con GRUB2?
Un G R A Z I E grandissimo anticipato …..
Guardate, proprio non capisco perché si voglia fare di tutto per rendere incomprensibile ciò che prima era comprensibilissimo.
A me il grub 2 (tutto minuscolo), pare come frutto di seghe mentali, di gente frustrata dalla tastiera.
Sono offensivo?
Forse.
Le offese sono motivate?
Sicuramente.
Soltanto per questo schifo di bootloader, sento crescermi nel petto la voglia di mandare a quel paese il Pinguino e di cominciare a mettere da parte i soldi per comprarmi un Mac…
Penso che chi l’ha creato abbia pensato che era giusto inserire un sistema di scripting perché troppa gente stava cominciando ad avvicinarsi al Pinguino, pure con una certa soddisfazione.
E’ una questione di mantenimento di posizione di potere: non è giusto, questo nelle loro menti, che un “utonto” cominci a mettere mano a certi arcana e pensi di provare a utilizzare per diletto più di un Pinguino oltre a una delle più facili distribuzioni che esistono.
“No, sono io il geek, solo quelli come me, che sanno di scripting, devono poter imparare usando più di uno GNU/Linux, e porcaputtana! Gli utonti dovranno rimanere tali! Questi usino Ubuntu, Puppy Linux, Small Damn Linux ecc.! Solo io, che sono il master dello script, posso usare tutti i i Pinguini che voglio! Troppo facile, eh? “Sì perché io sono io e voi non siete un cazzo”, utonti dei miei stivali!”
Che sia consapevole o inconsapevole, è questione di posizione.
Possiamo comprendere, ma non possiamo giustificare.
Per la stessa ragione, mi tengo per me il modo di far andare ext4 col Grub 1 (che se ci pensate, è abbastanza semplice)…
In ogni caso, Strettcross, il tuo è un ottimo how-to e ti ringrazio.
Il problema e se volessi eliminare qualcosa dal menù o semplicemente modificare che si fa?
esempio;
Ubuntu
Debian
windows xp
windows vista
Wingoogle
winlibero
questo è il menu di multiboot, ipotetico.
non mi interessa più windows XP che faccio?
@mau grazie, penso che scriverò una guida per i temi, anche se ho visto che ci sono diversi progetti al riguardo, chissà quale sarà il il migliore
@gian64 il file lo crei con un semplice editor di testo, quindi controlli i permessi e ti assicuri che abbia quelli di esecuzione (clik dx-proprietà) se windows partiva vuol dire che il grub non era installato correttamente (o intendi lanciato da grub?)
@sartana666 se leggi nel file c’è scritto chiaramente di non editarlo a mano, questo perchè in alcuni casi può bloccare del tutto il funzionamento di grub, a te decidere se vale la pena rischiare contro l’opinione del programmatore di grub
@Lorenzo in /etc/default/grub alla riga
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
@guglielmo perchè necessita di una rimappatura, come ti suggerisce (Check your device.map.) devi effettuarla nel file device.map (e non nel vecchio menu.lst)
@Francesco L. figurati, tutti hanno il diritto all’opinione nel mondo open e dubito che qualcuno si offenda per un po’ di colore, io la penso vagamente come te, ovviamente le motivazioni ci sono e non sono “siamo cattivi” però effettivamente è una bella complicazione che in fin dei conti sarebbe evitabile, dato che il file a cui fa riferimento grub resta sempre e solo uno.
@anht se è stato trovato da os prober (quindi automaticamente) e hai disinstallato XP ti basta aggiornare grub con il comando sudo update-grub (o in certi casi con l’esecuzione dello script os prober come avveniva in grub legacy) altrimenti basta che cancelli (o rendi ineseguibile) lo script tramite cui hai aggiunto xp e quindi dai l’update-grub
SALVE, anht
volevo sapere se hai ancora installato WinXP in qualche partizione.
A presto…
bella guida.
io non ho avuto problemi di sorta col boot, ma piuttosto qualcuno ha settato il framebuffer??? io ho seguito le guide settando la risoluzione in /etc/default/grub, in /etc/grub.d/00_header dato update-grub2 ma la risoluzione rimane quella………perchè ????
Bravo, grazie
@carcass prova semplicemente son update-grub
Ciao streetcoss,
complimenti per l’ottima guida. Io ancora ho le idee poco chiare
sul come fare ad esempio a nascondere i precedenti kernel dal menù
di avvio del grub2 senza per il momento disinstallarli fisicamente
dall’HD.
Vorrei tenere solamente l’ultimo aggiornato.
Grazie per le eventuali risposte.
@ikam grazie a te. Infatti quella è una nota dolente, non potendo editare manualmente il file grub.cfg non puoi nascondere facilmente quello che vuoi, lo script adibito a trovare il sistema operativo infatti ti scrive tutti i kernel, e dovresti agire su quello, 30_os-prober, altrimenti una via semplice è quella di creare uno script per le voci che vuoi vedere (come spiegato sopra) e disabiliti lo script os_prober in modo tal che non aggiunga alcuna voce. Ovviamente in questo caso per ogni kernel installato dovrai rimodificare a mano lo script, stando al wiki del grub non ci sono ancora modifiche ufficiali, e questo è quindi il metodo.
Grazie streetcross di avermi dato risposta al mio quesito.
Ancora complimenti per il tuo blog.
@ikam, non c’è di che, grazie a te dei complimenti
Ciao, sai per caso come si fa a modificare le scritte nel grub? cioè invece di Windows 7 loader /(sda etc etc.. vorrei mettere semplicemente scritto Windows 7 Professional. Come si fa?
Grazie in anticipo!
@Andrea devi togliere lo script per gli altri os e aggiungere manualmente una voce per windows con un nuovo script (vedi sopra)
cat << _EOF
menuentry “Nome sistema operativo” {
set root=(hdX,Y)
chainloader +1
}
_EOF
grazie della bella guida streetcross
certo, di grub2 si apprezzano prima le complicazioni che i benefici.
per esempio: ho un pc in cui vorrei il boot di default di XP e vorrei che rimanesse così anche dopo gli aggiornamenti del kernel.
Per capirci, quello che in grub facevo con
default=_numero_di_XP_
e con
# updatedefaultentry=true
sono certo che c’è un modo, ma sai quale?
grazie, ciao
@rai in /etc/default/grub c’è l’opzione default, per far partire in automatico la linea desiderata, effettivamente è un problema in caso di aggiornamento kernel, non vedo la voce updatedefaultentry nel mio file, puoi però provare ad aggiungerla (sotto alla voce default) e vedere se funziona. In alternativa crea uno script per aggiungere windows sempre al primo posto, chiamandolo ad esempio 00_a
Grazie della risposta streetcross
se capisco, vuoi dire di:
far sparire il file 30_os-prober
creare un file tipo quello che consigliavi nella risposta @Andrea
chiamarlo 00_a_qualcosa per farlo vedere per primo
dopodichè per vedere se funziona aggiungere o cancellare un kernel e dare update-grub
Ora provo. Intanto ti segnalo che la GUI per grub (startupmanager) funziona (parzialmente) anche con grub2
è vero che padroneggiare i file di configurazione aiuta a capire, però anche la semplicità di uso non guasta
ciao
@rai
Ho letto il post ed il tuo quesito, e pur ammettendo che il grub2 stenta un po’ a farsi benvolere, direi che nel tuo caso offre la possibilità di una soluzione molto comoda, con la chiamata “testuale”.
Mi spiego.
Se tu vuoi con il grub2 mettere sempre di default in avvio un O.S., ad esempio Windows XP, non devi fare altro che mettere, nel file /etc/default/grub, alla riga GRUB_DEFAULT=”xxxxxxxxx”, al posto delle “x”, la stessa stringa che è alla riga “menuentry” dell’XP che vuoi di default.
Faccio un esempio.
Se io volessi avere di default al menu di avvio, il mio Windows XP che ha nel /boot/grub/grub.cfg queste righe di avvio:
menuentry “Microsoft Windows XP Home Edition (on /dev/sda1)” {
saved_entry=${chosen}
save_env saved_entry
insmod ntfs
set root=(hd0,1)
search –no-floppy –fs-uuid –set befc4cc8fc4c7ca1
drivemap -s (hd0) ${root}
chainloader +1
Non devo far altro che mettere nel /etc/default/grub, così:
GRUB_DEFAULT=”Microsoft Windows XP Home Edition (on /dev/sda1)”
Virgolette comprese, anzi, per non sbagliare, dato che la stringa è lunga, conviene fare con copia/incolla dal grub.cfg al default/grub.
E da quel momento in poi, indipendentemente dall’ordine delle righe di avvio nel menu, Win sarà sempre in “pool position”.
Ciao.
@ et4beta grazie

queste sono cose che possono raddrizzare un inizio d’anno storto: una soluzione che unisce all’efficienza il plus della semplicità si può definire `bella` nel senso alto del termine.
Ma l’hai scoperto da te (e allora tanto di cappello) o c’è qualcosa da leggere che puoi consigliare?
ciao
@rai
Non conosco l’esistenza di una guida completa del grub2, ci sono solo guide come quella del presente blog e quella del Wiki di Ubuntu-it, che ti permettono di capire le cose basilari sul nuovo bootloader, ma per “affinare” la conoscenza bisogna cercare nel Web tra i vari blog e forum raccogliendo una mollichina alla volta.
Io, ed anche streetcross, frequentiamo il forum ubuntu-it ed anche lì ormai di info sul grub2 se ne cominciano a trovare abbastanza.
Purtroppo però è un programma in fase di sviluppo ed è ancora soggetto a problemi, che purtroppo disorientano un po’ l’utenza, anche perché non tutti risolvibili.
Comunque gli sviluppatori ci stanno lavorando, in Lucid (10.04) il grub2, al momento, non è più l’1.97, ma è l’1.98-2, e posso dirti che i suoi script sono sensibilmente diversi da quelli del predecessore.
Mi auguro che riescano in tempi brevi ad arrivare ad una release che non dia problemi, anche se non sarà facile, visto che le cause di questi sembrano legate a non ben conosciute anomalie hardware e software.
Ciao.
ciao streetcross, innanzitutto grazie per la tua risposta, ma sono dispiaciuto nel dirti che sono praticamente un principiante e non ho capito quello che mi hai suggerito, potresti essere un pò più preciso? ti ringrazio molto
ps il mio messaggio di aiuto è del 29 dicembre
ancora grazie
@et4beta wow, grazie dell’info, quando ci provai io non funzionava ^_^ evidentemente o hanno aggiustato le cose, o avevo sbagliato a copiare la riga
@andrea devi togliere i permessi di esecuzione allo script otheros, quindi crearne uno nuovo (crea un file di testo in tale directory) in cui aggiungi manualmente gli os che vuoi fare avviare, col nome che vuoi tu. Attenzione perchè logicamente poi dovrai aggiornarlo manualmente!
Per fare quanto deto in maniera pratica:
sudo chmod -x /etc/grub.d/30_otheros
sudo gedit /etc/grub.d/30_myos
ci incolli dentro le righe per aggiungere windows (vedi sopra)
salvi e chiudi
sudo chmod +x /etc/grub.d/30_myos
sudo update-grub
Una cosa è certa, sembra che ogni tanto salti fuori qualcuno che deve dare una mano a Microsoft……..
Se questo è il modo per aiutare ad avvicinare tutti a linux, be….. penso che ci sia ancora molto da imparare.
Le persone normali non hanno proprio nessuna voglia di perdere giornate per aggiustare un boot manager che fà di tutto per essere brutto ed incomprensibile….. e che poi mette i default come vuole lui……..
Grub2, avrà anche risolto il problema dell’ ext4 ma è un vero casino………
Dommy
ho notato la incompatibilita’ di grub2 nel caso sia presente una entrata nel menu.lst del vecchio grub come questo:
title Xen 3.2 / Ubuntu 8.04.4 LTS, kernel 2.6.24-27-xen
root (hd0,5)
kernel /boot/xen-3.2.gz
module /boot/vmlinuz-2.6.24-27-xen
module /boot/initrd.img-2.6.24-27-xen
gru2 quando non trova alla voce kernel un vmlinuz e sopratutto
se incontra la voce module lo ignora completamente rendendo di fatto impossibile l’avvio di quel kernel.
avreste una idea per risolvere questo problema?
Ciao sto realizzando un raid1 con ubuntu 10.04. Ho letto per bene la tua guida ed anche molte altre su come realizzare il raid1 software. Mi riesce tutto bene sin quando c’è da configurare il grub, infatti in tutte le guide che ho trovato sin ora ci si riferisce al grub-legacy mentre ubuntu 10.04 monta il grub2.
Non essendo io un gran esperto di grub in generale non riesco a venirne fuori. Qualcuno saprebbe aiutarmi in merito a tale configurazione? O magari anche postare la config di una macchina con grub2 in raid1 ?
Ragazzi, vedo molti commenti, io ci provo… se no magari in forum ubuntu.
Allora, io ho due dischi sata, uno con ubuntu e ora uno con win xp.
Pensavo di fare il figo accedendo al menu di boot “pop-up” del bios per bootare windows. E invece no, Ubuntu parte, windows invece si resetta in loop senza partire. Questo lo fa solo se c’è il disco di Ubuntu in contemporanea, da solo Win parte senza problemi. Cambio ordine nel bios, etc, niente.
Installo Grub 2. Vedo le varie voci, mi dico, è fatta, e invece Windows ha lo stesso problema. Si resetta all’infinito…
Forse smanettando nelle configurazioni di Grub? Mah… Se riuscite a darmi qualche dritta ve ne sarò grato.
ciao perche’ appena inserisco la entry con nome modificato, ma preso il tutto dal file grub.cfg, al file 40_custom, lanciando update-grub mi carica sempre quello del file grub.cfg, e non quello del file 40_custom?
nel grub.cfg ho questo:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry “Windows Recovery Environment (on /dev/sda2)” {
insmod part_msdos
insmod ntfs
set root=’(hd0,msdos2)’
search –no-floppy –fs-uuid –set xxxxxxxx
drivemap -s (hd0) ${root}
chainloader +1
}
io ho messo in 40_custom windows 7 , com privilegi di root
ma appena pero lancio update-grub, mi carica sempre Windows Recovery Environment (on /dev/sda2)
dove sbaglio?
grazie ciao
Ciao, e complimenti per la guida.
Su un SATA ho installato una Debian 6.0 e la uso per installare il GRUB2.
Dopo aver installato Ubuntu10.04 su un PATA, non riuscivo a farlo caricare da GRUB2.
Ho seguito +/- la tua guida, ma non funzionava.
Tutti i parametri erano corretti, ma non andava.
Dopo qualche ora ho scoperto il problema.
Una stupidagine…..
Quando aggiungi la voce
menuentry “Ubuntu ” {
bisogna utilizzare la virgoletta semplice ‘ al posto del doppio virgolettato “.
menuentry ‘Ubuntu ‘ {
dopo questa “modifica” tutto funziona come previsto.
Comunque con il vecchio GRUB era tutto molto + semplice.
Ciao