<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Alessandro Stella - Appunti di informatica &#187; boot loader</title>
	<atom:link href="http://www.alessandrostella.it/tag/boot-loader/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.alessandrostella.it</link>
	<description>Appunti sparsi di informatica</description>
	<lastBuildDate>Wed, 25 Aug 2010 23:38:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Isolinux: creare un menù personalizzato</title>
		<link>http://www.alessandrostella.it/software/2010/01/isolinux-creare-un-menu-personalizzato/</link>
		<comments>http://www.alessandrostella.it/software/2010/01/isolinux-creare-un-menu-personalizzato/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 22:34:57 +0000</pubDate>
		<dc:creator>Alessandro</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[boot loader]]></category>
		<category><![CDATA[isolinux]]></category>
		<category><![CDATA[isolinux.cfg]]></category>

		<guid isPermaLink="false">http://www.alessandrostella.it/?p=607</guid>
		<description><![CDATA[Abbiamo conosciuto isolinux, però adesso vogliamo usarlo. Qui di seguito vi mostro un esempio di cosa possiamo ottenere con pochi semplici passaggi. Quello che vedete nell&#8217;immagine qui sotto è uno screenshot del mio DVD personale che uso ogni volta che mi tocca sistemare/formattare/testare un PC&#8230; E&#8217; stato creato con isolinux! Procediamo. Per prima cosa (vedi [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.alessandrostella.it/software/2010/01/cosa-e-isolinux/">Abbiamo conosciuto isolinux</a>, però adesso vogliamo usarlo.<br />
Qui di seguito vi mostro un esempio di cosa possiamo ottenere con pochi semplici passaggi. Quello che vedete nell&#8217;immagine qui sotto è uno screenshot del mio DVD personale che uso ogni volta che mi tocca sistemare/formattare/testare un PC&#8230; E&#8217; stato creato con isolinux!</p>
<p><img src="http://www.alessandrostella.it/wp-content/uploads/2010/01/isolinux.png" alt="" title="Menù personalizzato creato con ISOLINUX" width="640" height="480" class="aligncenter size-full wp-image-608" /></p>
<p>Procediamo.<br />
Per prima cosa (<a href="http://syslinux.zytor.com/wiki/index.php/ISOLINUX" target="_blanck">vedi link originale</a>) mettiamo in risalto il fatto che isolinux:</p>
<ul>
<li>utilizza solo i nomi di file che rispettano l&#8217;ISO 9660, vale a dire che non supporta Rock Ridge o nomi di file in Joliet. Tuttavia può essere usato su un disco che utilizza Rock Ridge e/o estensioni Joliet.
</li>
<li>supporta i nomi di file lunghi (livello 2) ISO 9660, quindi se la compatibilità con i nomi dei file brevi (utile per sistemi operativi come MS-DOS) non è un problema, è possibile utilizzare l&#8217;opzione &#8220;-l&#8221; o &#8220;-iso-level 2&#8243; di mkisofs per generare nomi di file lunghi (fino a 31 caratteri).
</li>
</ul>
<p>Bene, detto questo, costruiamo il nostro primo CD/DVD bootable con menù personalizzato usando isolinux. Seguiremo il seguente procedimento:</p>
<ol>
<li>creazione cartella di lavoro</li>
<li>estrazione di isolinux dal progetto madre <a href="http://syslinux.zytor.com/wiki/index.php/SYSLINUX" target="_blanck">syslinux</a></li>
<li>manipolazione del file <strong>isolinux.cfg</strong> per personalizzare il menù</li>
<li>masterizzazione del CD</li>
</ol>
<p><span id="more-607"></span><br />
<strong>1. Creazione cartella di lavoro</strong><br />
Creiamo una cartella con un nome qualsiasi che useremo come contenitore di tutti i nostri file. Ad esempio c:\bootCD</p>
<p><strong>2. Estrazione isolinux</strong><br />
Andiamo su <a href="http://www.kernel.org/pub/linux/utils/boot/syslinux/" target="_blanck">http://www.kernel.org/pub/linux/utils/boot/syslinux/</a> e scarichiamo syslinux. Attualmente è alla versione 3.84, ma qui usiamo la 3.82. Ottenuto il file .zip decomprimiamolo in una cartella a piacere, cerchiamo i seguenti files: chain.c32, isolinux.bin, memdisk, menu.c32, reboot.c32, vesamenu.c32 e copiamoli in c:\bootCD.</p>
<p><strong>3. Manipolazione del file isolinux.cfg</strong><br />
Sempre nella cartella c:\bootCD creiamo un file di testo vuoto con nome <strong>isolinux.cfg</strong>. Esso rappresenterà il nostro menù. Per capire cosa scrivere in questo file ci basta andare nella cartella &#8220;doc&#8221; di syslinux e cercare il file menu.txt. Al suo interno troveremo una dettagliata descrizione di come creare un file isolinux.cfg.<br />
A questo punto ci troviamo quindi ad avere la seguente situazione:<br />
<img src="http://www.alessandrostella.it/wp-content/uploads/2010/01/bootCD.gif" alt="" title="Contenuto della cartella bootCD" width="492" height="441" class="alignleft size-full wp-image-638" style="float:none;" /><br />
Per avere un riscontro pratico, di seguito vi posto il codice che ho scritto per creare il menù mostrato dall&#8217;immagine a inizio post.<br />
Esempio di file isolinux.cfg:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">default vesamenu.c32<br />
prompt 0<br />
# MENU RESOLUTION 800 600<br />
MENU TITLE<br />
MENU BACKGROUND sfondo.png<br />
MENU AUTOBOOT Avvio da hard disk previsto fra # secondi...<br />
MENU TABMSG &nbsp;http://www.alessandrostella.it<br />
MENU COLOR hotsel &nbsp; &nbsp; &nbsp; 1;37;47 #ffffffff #99ffff3C std<br />
MENU COLOR unsel&nbsp; &nbsp; &nbsp; &nbsp; 37;40 &nbsp; #99ffff3C #00000000 std<br />
MENU COLOR sel&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 31;47 &nbsp; #DDEE0000 #99ffff3C std<br />
MENU COLOR scrollbar&nbsp; &nbsp; 30;47 &nbsp; #40000000 #20ffffff<br />
MENU COLOR border &nbsp; &nbsp; &nbsp; 30;47 &nbsp; #00000000 #00000000 none<br />
MENU COLOR help &nbsp; &nbsp; &nbsp; &nbsp; 37;40 &nbsp; #c0ffffff #00000000 std<br />
MENU WIDTH 64<br />
MENU MARGIN 2<br />
MENU HSHIFT 7<br />
MENU VSHIFT 1<br />
MENU ROWS 20<br />
MENU TABMSGROW -1<br />
MENU TIMEOUTROW -2<br />
MENU CMDLINEROW 22<br />
MENU ENDROW -1<br />
MENU HIDDENROW -2<br />
MENU HELPMSGROW -5<br />
MENU HELPMSGENDROW -3<br />
# MENU PASSWORDMARGIN 3<br />
# MENU PASSWORDROW 11<br />
#<br />
# DIVISORE PER ANTIVIRUS<br />
LABEL -<br />
&nbsp; &nbsp; MENU LABEL ANTIVIRUS:<br />
&nbsp; &nbsp; MENU DISABLE<br />
#<br />
# avvio di AVIRA<br />
label Avvio di Avira AntiVir Rescue System<br />
MENU LABEL ^Avira AntiVir Rescue System<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel vesamenu.c32<br />
&nbsp; &nbsp; APPEND /antivir/antivir.cfg<br />
#<br />
# avvio di BITDEFENDER<br />
label Avvio di BitDefender<br />
MENU LABEL ^BitDefender<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel /KNOPPIX/linux<br />
&nbsp; &nbsp; append ramdisk_size=100000 init=/etc/init lang=en apm=power-off vga=791 initrd=/KNOPPIX/BitDefender/minirt.gz nomce quiet BOOT_IMAGE=knoppix knoppix_name=KNOPPIXBD <br />
#<br />
# avvio di KASPERSKY<br />
label Avvio di Kaspersky 'Kav Rescue CD'<br />
MENU LABEL ^Kaspersky 'Kav Rescue CD'<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel vesamenu.c32<br />
&nbsp; &nbsp; append /kav_rescue/isolinux/kav10.cfg<br />
MENU SEPARATOR<br />
#<br />
# DIVISORE PER SISTEMI OPERATIVI LIVE<br />
LABEL -<br />
&nbsp; &nbsp; MENU LABEL SISTEMI OPERATIVI LIVE:<br />
&nbsp; &nbsp; MENU DISABLE<br />
#<br />
# avvio di LINUX NimbleX<br />
label Avvio in RAM di NimbleX (User: root Pass: toor)<br />
MENU LABEL Linux ^NimbleX (User: root Pass: toor)<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel vesamenu.c32<br />
&nbsp; &nbsp; append /NimbleX/boot/syslinux/nimblex.cfg<br />
#<br />
# avvio di UBCD4WIN<br />
label Avvio in RAM di UBCD4WIN<br />
MENU LABEL ^Windows XP Pro [UBCD4WIN]<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel bootsect.bin<br />
MENU SEPARATOR<br />
#<br />
# DIVISORE PER UTILITY<br />
LABEL -<br />
&nbsp; &nbsp; MENU LABEL UTILITY:<br />
&nbsp; &nbsp; MENU DISABLE<br />
#<br />
# avvio di MEMTEST<br />
label Avvio di Memtest<br />
MENU LABEL ^Memtest 4<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; KERNEL memdisk<br />
&nbsp; &nbsp; append ramdisk_size=100000 initrd=/memtestp.imz<br />
#<br />
# avvio di TESTDISK<br />
label TestDisk / PhotoRec / LiloPwd<br />
MENU LABEL ^TestDisk / PhotoRec / LiloPwd<br />
&nbsp; &nbsp; MENU INDENT 1<br />
&nbsp; &nbsp; kernel memdisk<br />
&nbsp; &nbsp; append initrd=/TestDisk.imz<br />
MENU SEPARATOR<br />
#<br />
# riavvio del sistema<br />
label Reboot<br />
MENU LABEL ^Riavvia il sistema<br />
&nbsp; &nbsp; KERNEL Reboot.c32<br />
#<br />
# avvio da disco fisso <br />
label Passa il comando al boot loader dell'HD<br />
MENU LABEL Avvia il sistema da ^Hard Disk (default)<br />
&nbsp; &nbsp; MENU DEFAULT<br />
&nbsp; &nbsp; localboot 0x80<br />
&nbsp; &nbsp; timeout 400<br />
MENU SEPARATOR<br />
#<br />
#<br />
LABEL -<br />
&nbsp; &nbsp; MENU LABEL F1 Aiuto<br />
&nbsp; &nbsp; MENU DISABLE<br />
F1 help.msg</div></td></tr></tbody></table></div>
<p><strong>4. Masterizzazione del CD</strong><br />
Per masterizzare il nostro CD e vedere il nostro menù (anche se attualmente non farà quasi niente), possiamo usare diversi metodi. Se avete a disposizione un programma in grado di creare CD bootable (ad esempio nero burning rom) vi basta indicare come immagine di boot il file <strong>isolinux.bin</strong>. Poi copiare nella root del CD il contenuto della cartella c:\bootCD e masterizzare. Personalmente uso <a href="http://www.MagicISO.com" target="_blanck">magiciso</a> che però è un software a pagamento. Potete usare <strong>mkisofs</strong>, ma è a linea di comando.</p>
<p>A questo punto, finita la masterizzazione sul CD, possiamo riavviare la macchina ed eseguire il boot da CD. A video dovrebbe comparire il nostro menù. Ovviamente per far eseguire delle azioni precise collegate ad ogni voce di menù bisognerà indicarle nel file isolinux.cfg e bisognerà sapere cosa fare e come farlo, ma di questo ci occuperemo più avanti&#8230; Tuttavia, osservando il file isolinux.cfg postato sopra, si possono già intuire molte cose&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alessandrostella.it/software/2010/01/isolinux-creare-un-menu-personalizzato/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Cosa è isolinux?</title>
		<link>http://www.alessandrostella.it/software/2010/01/cosa-e-isolinux/</link>
		<comments>http://www.alessandrostella.it/software/2010/01/cosa-e-isolinux/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 17:37:24 +0000</pubDate>
		<dc:creator>Alessandro</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[boot loader]]></category>
		<category><![CDATA[isolinux]]></category>

		<guid isPermaLink="false">http://www.alessandrostella.it/?p=600</guid>
		<description><![CDATA[Incredibile, ma vero. Se si cerca cosa è isolinux? su Google&#8230; non si trova una risposta precisa! Bisogna leggere un bel po&#8217; di chiacchiere e blog per venire a capo della risposta! L&#8217;unico modo per avere una risposta degna è digitare &#8220;what is isolinux?&#8221;. Si, ma uno che non è proprio avvezzo all&#8217;inglese? Cosa fa? [...]]]></description>
			<content:encoded><![CDATA[<p>Incredibile, ma vero.<br />
Se si cerca <strong>cosa è isolinux?</strong> su Google&#8230; non si trova una risposta precisa! Bisogna leggere un bel po&#8217; di chiacchiere e blog per venire a capo della risposta! L&#8217;unico modo per avere una risposta degna è digitare &#8220;what is isolinux?&#8221;. Si, ma uno che non è proprio avvezzo all&#8217;inglese? Cosa fa? Lo so, la risposta classica è: &#8220;che lasci perdere l&#8217;informatica&#8221;. Già, in parte è vero&#8230; in parte no. Comunque sia, ora poniamo rimedio e rispondiamo alla domanda &#8220;cosa è isolinux?&#8221;. Dobbiamo saperlo!<br />
<strong>Isolinux è un boot loader per Linux/i386</strong> che opera su ISO 9660/El Torito CD-ROM in &#8220;no emulation&#8221; mode. Cosa significa lavorare in &#8220;no emulation mode&#8221;? Significa tanto, ma proprio tanto. Significa che non abbiamo la necessità di creare un&#8217;immagine &#8220;del disco di emulazione&#8221; con spazio limitato (per &#8220;emulazione floppy&#8221;) o con problemi di compatibilità (per &#8220;emulazione disco rigido&#8221;). Chi ha avuto modo di creare un&#8217;immagine di boot sa bene quanto è importante questa caratteristica!<br />
In parole più comprensibili, con questo &#8220;programma&#8221; noi possiamo creare un CD/DVD/USB che è in grado di far avviare il nostro PC anche in assenza/mal funzionamento del nostro HD. Questo significa che, con le opportune configurazioni e accortezze, noi saremo in grado di far partire un antivirus o un sistema di backup, o altro ancora anche quando il nostro HD proprio non ne vuole sapere di far partire il nostro sistema operativo. Tra l&#8217;altro isolinux non è di certo l&#8217;ultimo arrivato o uno sprovveduto! Quasi tutti i sistemi linux usano isolinux nelle distribuzioni live; sapete, quelle che partono da sole all&#8217;avvio della macchina tipo ubuntu o simili, ecc.</p>
<p>Ok, ho capito cosa è. Non mi serve <img src='http://www.alessandrostella.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  In questo caso è inutile leggere il seguito <img src='http://www.alessandrostella.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
Ok, ho capito cosa è. Mi sembra una gran figata e vorrei capire se posso configurarlo per far partire i miei sistemi preferiti&#8230; In questo caso è consigliabile leggere i prossimi post sull&#8217;argomento! <img src='http://www.alessandrostella.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.alessandrostella.it/software/2010/01/cosa-e-isolinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grub 2 e il multiboot con Windows XP &#8211; Vista &#8211; 7</title>
		<link>http://www.alessandrostella.it/windows/2009/11/grub-2/</link>
		<comments>http://www.alessandrostella.it/windows/2009/11/grub-2/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 21:01:54 +0000</pubDate>
		<dc:creator>Alessandro</dc:creator>
				<category><![CDATA[Linux Ubuntu]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[boot loader]]></category>
		<category><![CDATA[Grub 2]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[multiboot]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows vista]]></category>

		<guid isPermaLink="false">http://www.alessandrostella.it/?p=231</guid>
		<description><![CDATA[Abbiamo detto che il comando 1update-grub2 si occupa di creare il file /boot/grub/grub.cfg. Per ottenere questo risultato esegue, in sequenza, gli script presenti nei file che si trovano nella cartella /etc/grub.d/. Purtroppo non c&#8217;è ancora una procedura automatica per l&#8217;eliminazione e/o la modifica delle voci che ci vengono &#8220;imposte&#8221; da grub2. Tuttavia con un po&#8217; [...]]]></description>
			<content:encoded><![CDATA[<p>Abbiamo detto che il comando</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">update-grub2</div></td></tr></tbody></table></div>
<p>si occupa di creare il file /boot/grub/grub.cfg.<br />
Per ottenere questo risultato esegue, in sequenza, gli script presenti nei file che si trovano nella cartella /etc/grub.d/.<br />
Purtroppo non c&#8217;è ancora una procedura automatica per l&#8217;eliminazione e/o la modifica delle voci che ci vengono &#8220;imposte&#8221; da grub2. Tuttavia con un po&#8217; di pazienza possiamo &#8220;usarlo&#8221; per farci aiutare a ingannarlo <img src='http://www.alessandrostella.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Andiamo!<br />
Apriamo il file /boot/grub/grub.cfg. Ci servirà!<br />
E&#8217; in sola lettura e noi rispetteremo il volere del suo creatore: non lo modificheremo mai a manina. Però ora cerchiamo di capire come viene creato.<br />
Quando viene eseguito il comando <strong>update-grub2</strong>, viene letto sia il file /etc/default/grub sia i file presenti in /etc/grub.d. In questo modo vengono impostati i parametri di visualizzazione del menù di <strong>Grub2</strong> e viene eseguita una ricerca per la presenza di kernel Linux, altri sistemi operativi ed elementi presenti negli script creati dall&#8217;utente in /etc/grub.d. Tutte queste informazioni finiscono poi nel file grub.cfg.<br />
In questa tabella vengono descritti i principali file presenti in /etc/grub.d/.</p>
<table style="width:100%; border:solid">
<tbody>
<tr>
<td style="background-color:#1111FF;text-align: center;width: 15%;"><strong>File</strong></td>
<td style="background-color:#1111FF;text-align: center;"><strong>Significato</strong></td>
</tr>
<tr>
<td>00_header</td>
<td>Carica le impostazioni da /etc/default/grub, compresa la presentazione visiva, il conto alla rovescia e le opzioni del terminale</td>
</tr>
<tr>
<td>05_debian_them</td>
<td>Imposta lo sfondo, il colore del testo e i temi</td>
</tr>
<tr>
<td>10_hurd</td>
<td>Localizza eventuali kernel Hurd</td>
</tr>
<tr>
<td>10_linux</td>
<td>Localizza i kernel basati sull&#8217;ID del distributore determinato dal risultato del comando <strong>lsb_release -is</strong></td>
</tr>
<tr>
<td>20_memtest86+</td>
<td>Se il file /boot/memtest86+.bin esiste, viene inclusa una voce per <strong>memtest86+</strong></td>
</tr>
<tr>
<td>30_os-prober</td>
<td>Va alla ricerca di altri sistemi operativi e li include nel menù</td>
</tr>
<tr>
<td>40_custom</td>
<td>Rappresenta un modello per aggiungere voci personalizzate al menù</td>
</tr>
</tbody>
</table>
<p>Il nome del file determina l&#8217;ordine nel menù perché i file vengono letti ed eseguiti in ordine alfabetico. Le voci che iniziano con 30 verranno posizionate prima di quelle che iniziano con 40 e così via.<br />
<span id="more-231"></span><br />
Bene.<br />
Vediamo ora come possiamo apportare le 2 modifiche più comuni:</p>
<ol>
<li>modificare il testo di una voce del menù</li>
<li>cancellare una voce del menù</li>
</ol>
<h4>1. Modificare il testo di una voce di menù</h4>
<p>Se dobbiamo modificare il testo della voce di menù che si riferisce a Linux dobbiamo intervenire sul file <strong>/etc/grub.d/10_linux</strong>. Se invece trattasi di voce Windows o altro OS dobbiamo intervenire sul file /etc/grub.d/30_os-prober.<br />
Modifchiamo la voce di menù &#8220;Ubuntu, Linux 2.6.31-14-generic&#8221;, davvero antipatica, e trasformiamola in una più amichevole &#8220;Ubuntu 9.10 &#8211; Karmic Kaola&#8221;.<br />
Apriamo il terminale e digitiamo:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">sudo gedit /etc/grub.d/10_linux</div></td></tr></tbody></table></div>
<p>cerchiamo la stringa</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">menuentry &quot;$1&quot; {</div></td></tr></tbody></table></div>
<p>e sostituiamo $1 con Ubuntu 9.10 &#8211; Karmic Kaola, ottenendo:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">menuentry &quot;Ubuntu 9.10 - Karmic Kaola&quot; {</div></td></tr></tbody></table></div>
<p>Salviamo il file.<br />
Poi da terminale:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">sudo update-grub2</div></td></tr></tbody></table></div>
<p>Fatto.<br />
Approfondimento su questo punto.<br />
In realtà, le voci di menù che riguardano Linux vengono create dalla funzione <strong><em>linux_entry()</em></strong> che si trova sempre nel file <strong><em>10_linux</em></strong>. Tale funzione crea una voce per ogni versione di linux presente sul nostro HD. Questo significa che, procedendo come indicato sopra, i vari aggiornamenti di ubuntu che saranno installati verranno indicati da una nuova riga nel menù di grub, ma che, tutte queste righe, avranno lo stesso identico testo: Ubuntu 9.10 &#8211; Karmic Koala.<br />
Per poter distinguere le varie voci si dovrebbe intervenire sulla funzione citata, ma poi le cose si complicherebbero&#8230;</p>
<p>Il file che si occupa delle altre voci, per OS non Linux, è <strong>/etc/grub.d/30_os-prober</strong> e qui so&#8217; dolori! In teoria dovremmo modificare lo script presente nel file, come abbiamo fatto per la voce di Linux, ma per quanto mi riguarda, preferisco procedere come segue:</p>
<ol>
<li>spostare il file /etc/grub.d/30_os-prober in una cartella di nostro gradimento, eliminandolo quindi da /etc/grub.d/</li>
<li>editare in scrittura (quindi &#8220;sudo&#8221;) il file /etc/grub.d/40_custom</li>
<li>copiare in coda a questo file il pezzo del file /boot/default/grub.cfg che ci interessa apportando semplici modifiche testuali. Il pezzo del file /boot/default/grub.cfg che ci interessa è delimitato dalla stringa ### BEGIN /etc/grub.d/30_os-prober ###</li>
<li>salvare /etc/grub.d/40_custom</li>
<li>updatare.</li>
</ol>
<p>In questo modo, grub 2 non trovando il file 30_os-prober salta la costruzione delle voci degli altri OS che però saranno inserite a nostro piacimento perché verrà trovato il file 40_custom con il testo tutto pronto.</p>
<h4>2. Cancellare una voce di menù</h4>
<p>Beh, lo sappiamo già fare. Basta seguire quanto già fatto alla fine del punto precedente&#8230;<br />
Difficile?<br />
Dai, proviamoci!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alessandrostella.it/windows/2009/11/grub-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
