modificare update-grub in modo da non cancellare il precedente grub.cfg

Problemi riscontrati durante l'installazione di Ubuntu, degli aggiornamenti e degli avanzamenti del sistema.
Scrivi risposta
patel
Accecante Asceta
Accecante Asceta
Messaggi: 23782
Iscrizione: martedì 15 aprile 2008, 20:27
Località: Livorno

modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da patel »

grub-mkconfig è lo script (invocato da update-grub) che genera il grub.cfg leggendo le cartelle /boot delle distro installate. Lo vorrei modificare in modo da aggiornare il kernel di ubuntu, ma non eliminare le voci già esistenti e non assegnare l'attributo di sola lettura, in modo da poter editare il grub.cfg come si faceva col menu.lst.
Purtoppo non sono pratico di bash e gradirei l'aiuto di coloro che lo sono.
Lo si può trovare in /usr/sbin.

edit:
non era poi così difficile, è bastato fare le seguenti modifiche nella parte finale:
--------------
if [ "x${grub_cfg}" != "x" ] && ! grep -q "^password " ${grub_cfg}.new ; then
 chmod 644 ${grub_cfg}.new || true
fi

if test "x${grub_cfg}" != "x" ; then
 # none of the children aborted with error, install the new grub.cfg
# mv -f ${grub_cfg}.new ${grub_cfg}
cat ${grub_cfg}.new >> ${grub_cfg}
fi

echo "done" >&2
------------
ho tolto anche i permessi di esecuzione a tutti gli script in  /etc/grub.d salvo NN_linux
potrebbe essere migliorabile ?
Ultima modifica di patel il martedì 9 marzo 2010, 16:58, modificato 1 volta in totale.
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

Per me è la riga 74 del file /etc/grub.d/10_linux

Codice: Seleziona tutto

 printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
Prima di fare modifiche consiglio vivamente di fare una copia della suddetta riga ( aggiungendo # davanti in modo che non sia letta (commenting)).

quanto PUO' essere modificato è questo:

'${title}' ${CLASS}

Quindi se io voglio che tutte le versioni si chiamino "Pippo":

Per me è la riga 74 del file /etc/grub.d/10_linux

Codice: Seleziona tutto

 printf "menuentry 'Pippo' {\n" "${os}" "${version}"
isileth
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1626
Iscrizione: giovedì 9 febbraio 2006, 22:21

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da isileth »

A proposito di modifiche avrei un'altra domanda.
Se aggiorno il kernel del primo sistema Ubuntu che ho installato, devo andare sul secondo ed aggiornare da lì il grub, vero?
Altrimenti all'avvio ho quello vecchio.
Spero di non stare scrivendo baggianate. ;)
Forged was I of iron Heaven-born, Ulean made me. I am Isileth.
Avatar utente
GiovEdi
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1307
Iscrizione: martedì 2 ottobre 2007, 10:21

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da GiovEdi »

isileth ha scritto: A proposito di modifiche avrei un'altra domanda.
Se aggiorno il kernel del primo sistema Ubuntu che ho installato, devo andare sul secondo ed aggiornare da lì il grub, vero?
Altrimenti all'avvio ho quello vecchio.
Spero di non stare scrivendo baggianate.


nessuna baggianata, io spero invece di non conversare con il vento


il comando sicuramente lo conosci, sudo update-grub

non è che devi andare sul secondo SO, ma devi andare in quello che contiene il bootloader master grub, ovvero quello che hai installato per ultimo oppure hai ripristinato tramite la procedura di ripristino (non necessariamente l'ultimo)
prima leggere, poi casomai scrivere
« domandasti e ... ti risposi! » (Liz&Richard)
isileth
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1626
Iscrizione: giovedì 9 febbraio 2006, 22:21

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da isileth »

Dicevo l'ultimo, perchè è su quello che ritengo sia installato il bootloader.
Farò comunque i dovuti controlli prima di fare scemate.
Visti i miei ultimi exploit, mi sa che la prossima volta mi faccio una partizione di boot.
Forged was I of iron Heaven-born, Ulean made me. I am Isileth.
patel
Accecante Asceta
Accecante Asceta
Messaggi: 23782
Iscrizione: martedì 15 aprile 2008, 20:27
Località: Livorno

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da patel »

isileth ha scritto: Visti i miei ultimi exploit, mi sa che la prossima volta mi faccio una partizione di boot.
ancora peggio, quello che non viene installato di default poi va saputo gestire.
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

isileth ha scritto: Dicevo l'ultimo, perchè è su quello che ritengo sia installato il bootloader.
Farò comunque i dovuti controlli prima di fare scemate.
Visti i miei ultimi exploit, mi sa che la prossima volta mi faccio una partizione di boot.
L'aggiornamento va fatto ovviamente sull'ultimo sistema installato, poiché detentore del MBR
Avatar utente
GiovEdi
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1307
Iscrizione: martedì 2 ottobre 2007, 10:21

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da GiovEdi »

isileth ha scritto:
Visti i miei ultimi exploit, mi sa che la prossima volta mi faccio una partizione di boot.

no, la /boot separata serve ad altro

invece dovresti approfondire l'utilizzo di configfile + core.img
prima leggere, poi casomai scrivere
« domandasti e ... ti risposi! » (Liz&Richard)
isileth
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1626
Iscrizione: giovedì 9 febbraio 2006, 22:21

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da isileth »

A questo punto penso che dovrò studiarci bene.
Grazie comunque per i suggerimenti.
Siete sempre velocissimi e gentili.
Forged was I of iron Heaven-born, Ulean made me. I am Isileth.
nik1404
Prode Principiante
Messaggi: 234
Iscrizione: martedì 6 novembre 2007, 18:55
Desktop: mate
Distribuzione: PcLinuxos_86_64

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da nik1404 »

mi trovo all'incirca nella stessa situazione di isileth

sul fisso 4 so (due xp e due ubuntu 10.04)
sul portatile due xp - ubuntu 10.04 ed ubuntu 9.10
  vorrei sostituire su entrambi i pc "Ubuntu, con linux 2.6......" con descrizioni più immediate; ho letto vari post ma non ho capito se/come fare
un aiuto..

grazie 
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

Fai un backup prima di proseguire:

Codice: Seleziona tutto

sudo gedit /etc/grub.d/10_linux
Cerca "title=" (senza apici)

Dovresti trovarti:

Codice: Seleziona tutto

if ${recovery} ; then
    title="$(gettext_quoted "%s, with Linux %s (recovery mode)")"
  else
    title="$(gettext_quoted "%s, with Linux %s")"
  fi
Quello è il titolo che compare, puoi mettere:

Codice: Seleziona tutto

if ${recovery} ; then
    title="%s-%s (Recovery)"
  else
    title="%s-%s"
  fi
Dato che gli vengono passati 2 parametri devi tenerli
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

Anzi, ho trovato più sotto:

Codice: Seleziona tutto

  linux_entry "${OS}" "${version}" false \
      "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \
      quiet
  if [ "x${GRUB_DISABLE_LINUX_RECOVERY}" != "xtrue" ]; then
    linux_entry "${OS}" "${version}" true \
	"single ${GRUB_CMDLINE_LINUX}"
  fi
Se vuoi Mantenere una sola variabile metti tipo "${OS}" "${OS}".
nik1404
Prode Principiante
Messaggi: 234
Iscrizione: martedì 6 novembre 2007, 18:55
Desktop: mate
Distribuzione: PcLinuxos_86_64

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da nik1404 »

ho trovato le righe; se possibile vorrei far comparire un nome diverso per le due installazioni (es. pippo - pluto);
mi evidenzi le parti da cambiare?
ancora una domanda, come faccio a vedere quale delle due installazioni gestisce il bootloader
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

No il modo che ti ho detto è per avere uno standard diverso, però lo stesso avrai "pippo1 pippo2 pippo3" e non "pippo pluto"
nik1404
Prode Principiante
Messaggi: 234
Iscrizione: martedì 6 novembre 2007, 18:55
Desktop: mate
Distribuzione: PcLinuxos_86_64

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da nik1404 »

pacioccando nei vari file ho trovato /etc/lsb-relase (a dire il vero cercavo un file ed ho aperto per errore questo) ed ho visto che contiene dati relativi alla distribuzione;
visto che c'ero ho provato a modificarlo (nella peggiore delle ipotesi con acronis rimettevo tutto a posto) e dopo il solito update-grub mi sono ritrovato il grub modificato all'incirca come volevo;
in pratica le due installazioni hanno un nome diverso, anche se in questa forma

PIPPO, Linux 2.6.32-21-generic
PIPPO, Linux 2.6.32-21-generic (recovery mode)
memtest...
.......
PLUTO, con Linux 2.6.....
PLUTO, con Linux 2.6..... (modalità ripristino)
........

e questo sia nel fisso (due 10.04) che nel portatile (10.04 e 9.10)
la modifica del file suddetto può creare problemi in caso di aggiornamenti (o altro)?
The Wise Dj

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da The Wise Dj »

No non crea problemi, basta che non hai modificato altro che i nomi.

Comunque non è necessario acronis, apri il file, lo modifichi e lo tieni aperto, fai update-grub, vedi cosa esce, se ti piace lasci, se no, CTRL+Z a stecca nel file e riupdate =D
nik1404
Prode Principiante
Messaggi: 234
Iscrizione: martedì 6 novembre 2007, 18:55
Desktop: mate
Distribuzione: PcLinuxos_86_64

Re: modificare update-grub in modo da non cancellare il precedente grub.cfg

Messaggio da nik1404 »

a dire il vero contiene solo 4 voci, e le ho cambiate tutte (personalizzate la 1 e 4; cancellate le altre due), per ora nessun problema 
DISTRIB_ID=
DISTRIB_RELASE=
DISTRIB_CODENAME=
DISTRIB_DESCRIPTION=
Scrivi risposta

Ritorna a “Installazione e aggiornamento del sistema operativo”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti