Avviare un immagine iso direttamente da hard disk

Buonasera,

Ho letto questo http://www.howtogeek.com/196933/how-to-boot-linux-iso-images-directly-from-your-hard-drive/ per ubuntu che spiega come avviare una immagine iso direttamente da hard disk senza masterizzarla su cdrom. Per curiosità e perché può tornare comodo per installare le prossime release di Fedora, ho cercato di adattarla a F21 per tentare di avviare una immagine live, ho quindi modificato il file

/etc/grub.d/40_custom

cosi:

#!/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 “Fedora 21 LIVE ISO” {
set isofile=”/home/michele/Scaricati/iso/Fedora-Live-LXDE-i686-20-1.iso”
loopback loop (hd0,1)$isofile
linux (loop)/isolinux/vmlinuz0 boot=Prova iso-scan/filename=${isofile} quiet splash
initrd (loop)/isolinux/initrd0.img
}

Mi trovo un po’ a disagio con grub e non riesco ad aggiornare la configurazione che nel tutorial avviene tramite grub-update che presumo essere un comando di sistema di ubuntu. Inoltre non riesco a trovare informazioni sulle entry iso-scan e boot del file sopracitato.

Grazie per i suggerimenti

grub-update credo che sia l’equivalente in fedoriano di:

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

(il percorso potrebbe essere diverso se utilizzi uefi o altro)

Dai un’occhiata http://forum.fedoraonline.it/viewtopic.php?id=22849 ("-root-directory" va sostituito con “–boot-directory”)

@marcomotta
Ho provato quei suggerimenti con esiti nefasti al momento del boot. Colpa mia perché nel grub.cfg non ho previsto le voci di default del vecchio file di configurazione e ho dovuto ammattire un po’ per sistemare le cose.
Inoltre credo di non essermi spiegato bene. La mia idea era quella di copiare l’immagine iso di una release di Fedora (o altra distribuzione) in una directory p.e.

/home/rescue

La directory /home sul mio portatile è una partizione dedicata agli utenti, quando installo una nuova release linux sto attento a non formattarla.
Paartendo da questo vorrei aggiungere una voce di menu al grub di default per permette l’avvio dell’immagine iso senza la seccatura di masterizzarla su supporto ottico o su chiave usb. Per il momento ho fatto alcuni tentativi con esiti negativi. Partendo dai tuoi suggerimenti ho così modificato

/etc/grub.d/40_custom

[code]

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.

insmod ext2
insmod loopback
insmod fat
insmod ntfs
insmod lvm
insmod usb
insmod iso9660

menuentry “Fedora 21 LIVE ISO” {
set ISO_FILE="/home/rescue/Fedora-Live-LXDE-i686-20-1.iso"
loopback loop “$ISO_FILE”
linux (loop)/isolinux/vmlinuz0 setkeymap=it isoloop="$ISO_FILE" quiet splash
initrd (loop)/isolinux/initrd0.img[/code]

Ma all’avvio

error: file '/home/rescue/Fedora-Live-LXDE-i686-20-1.iso' not found.
error: no server is specified.
error: you need to load the kernel first.

Press any key to continue...

Il terzo errore è una conseguenza del primo perché grub non riesce ad individuare l’immagine iso, che comunque è regolarmente copiata in quella directory e con quel nome. E quindi: Ho forse sbagliato qualcosa nella sintassi del file 40_custom?

Ciao!
Forse credo bisognerebbe impostare la partizione da cui leggere, penso settando root=…

hai già dato un occhio a https://ask.fedoraproject.org/en/question/33055/boot-fedora-20-from-iso/?answer=60554#post-id-60554 discussione? sembra che ci sia riuscito…

PS: hai la /home su una partizione separata? nel qual caso il path da indicare non dovrebbe essere /home/rescue/… ma semplicemente rescue/…

@bebo_sudo

Mi pare molto interessante. Ho suddiviso l’hdd in 3 partizioni: la prima contiene il fs di root, la seconda x la swap, la terza per le utenze e viene montata in /home. Nel tardo pomeriggio faccio delle prove e ti faccio sapere.
Grazie x il link e i suggerimenti.

io utilizzerei l’uuid, evitando casini vari nell’indicare i numeri delle partizioni…

@bebo_sudo
Eureka!
Il tuo link mi è stato utile e sono riuscito ad avviare l’immagine ISO.
Ho modificato così il file /etc/grub.d/40_custom

[code]
#!/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 “Fedora 21 LIVE ISO” {
insmod loopback
set root=‘hd0,msdos1’
loopback loop (hd0,3)"/rescue/Fedora-Live-LXDE-i686-20-1.iso"
linux (loop)/isolinux/vmlinuz0 iso-scan/filename=/rescue/Fedora-Live-LXDE-i686-20-1.iso root=live:CDLABEL=Fedora-Live-LXDE-i686-20-1 rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0
initrd (loop)/isolinux/initrd0.img
}[/code]

Risolta.

Molto bene! Hai avuto occasione di testarla con altre iso?

Avresti voglia di scrivere una “mini guida” per gli altri utenti di fedoraonline? :slight_smile:

Caro Bebo_sudo,

l’ho testata brevemente con l’immagine F20 lxde live ed è andato quasi tutto ok. Il limite è che i device loop (se non ho capito male) utilizzati per montare l’immagine di root contenuta nella immagine iso (perdona la ridondanza), non consentono di montare le 2 partizioni del hdd / e /home e, come conseguenze, non è possibile installare Fedora.
L’ho anche testata una unica volta con F21 workstation: Si avvia ma non riesce ad eseguire l’ambiente grafico.
Per quanto riguarda la miniguida potrei anche farlo anche se, ad esser sincero, me la cavo con le mie forze nell’uso giornaliero dell’OS, ma non mi sento così esperto. Ma visto i risultati scarsi, come ho sopra riportato, prima di farlo ci sarebbe da lavorarci sopra :doc:

Ciao

Cioè poiché hai lanciato la iso partendo da una partizione, dopo la vede “già montata” e non ti lascia toccarla per installare, giusto?
Se fosse così basterebbe creare una partizione apposita di magazzino per le iso :slight_smile:

Cosi pare.
Ho appena testato Slackware: in rescue ho copiato la iso di slackware 14.1 e ho così modificato il file

/etc/grub.d/40_custom

[code]#!/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 “SlackWare 14.1” {
insmod loopback
set root=‘hd0,msdos1’
loopback loop (hd0,3)/rescue/slackware64-14.1-install-dvd.iso
linux (loop)/kernels/huge.s/bzImage iso-scan/filename=/rescue/slackware64-14.1-install-dvd.iso
initrd (loop)/isolinux/initrd.img
}[/code]

Saluti MR

PS Una eventuale mini guida sarebbe rivolta esclusivamente solo a chi ha già installato fedora e vorrebbe avviare una iso live da hard disk.

molto bene! :wink:
comunque il nuovo menuentry bastava che lo aggiungessi sotto al menuentry precedente di fedora… puoi così crearti una collezione di iso avviabili.

beh, non sarebbe male, ad esempio per testare una nuova versione di fedora sul proprio sistema, o per altre distribuzioni, anzichè creare da zero una chiavetta bootabile.
Se hai voglia di lavorarci un po’ sopra e creare una miniguida, prova a leggere la pagina http://doc.fedoraonline.it/Contribuisci nella nostra documentazione :wink:

Sono riuscito ad aggiornare una f20 che avevo installato da tempo su un HDD esterno, il processo ha impiegato circa 10-15 minuti, avviando l’immagine di f21 dal hdd.