Ho intenzione di reinstallare Ubuntu e vorrei masterizzare un piccolo sistema di ripristino avviabile (come SystemRescueCD) su una partizione sul mio disco rigido, ma essere comunque in grado di installare Ubuntu sulla stessa unità ed essere in grado di avviare Ubuntu e la partizione di ripristino. È possibile e, in tal caso, come posso farlo?
EDIT:
La mia versione attuale di Ubuntu è 19.04.
Risposta accettata:
Per avviare un'immagine ISO da una partizione:
(hd0,6) è solo un esempio, devi cambiarlo in base alla partizione che hai.
-
Ottieni l'ISO (duh)
-
Seleziona la tua partizione da cui verranno avviate le immagini ISO. Non è necessario che sia una partizione speciale, può essere di qualsiasi formato o almeno FAT, NTFS, EXT*. (Non ho provato con altri)(se vuoi persistenza, deve essere FAT). Può contenere altri dati, non farà la differenza. Prendi nota di quale partizione è, cioè
/dev/sda6
-
Copia l'ISO nella tua partizione. Per essere organizzato, puoi creare una cartella, diciamo
/isoboot/
nella radice della partizione, quindi una sottocartella con un nome che identifica il sistema e incolla lì l'ISO. -
Monta l'ISO. Il modo più semplice è usare l'opzione
"Open with disk image mounter"
dal menu contestuale nel browser dei file, facendo clic con il pulsante destro del mouse sul file. -
Una volta montato, vai nella directory
/boot/grub/
e copia il filegrub.cfg
. Incollalo all'interno di/isoboot/<your_system_name>
. -
Nel tuo Ubuntu, apri con i privilegi sudo il file
/etc/grub.d/40_custom
. Aggiungi la voce di menu:menuentry 'Your name of the ISO system' { set root='hd0,6' # this mean /dev/sda6 configfile /isoboot/<your_system_name>/grub.cfg }
-
Esegui
update-grub
.
Questo è diverso su ogni ISO, i file di configurazione di grub possono avere nomi diversi
Configurazione del file ISO grub.cfg, CD System Rescue
Apri il file con il tuo editor di testo preferito e apporta le seguenti modifiche:
-
Nella parte superiore del file aggiungi le righe
set isofile=/isoboot/systemrescuecd-6.0.3.iso loopback loop $isofile probe -u $root --set=rootuuid set imgdevpath="/dev/disk/by-uuid/$rootuuid"
-
Nelle voci di menu aggiungi il testo in grassetto
menuentry "Boot SystemRescueCd using default options" { set gfxpayload=keep linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd archisolabel=SYSRCD603 img_loop=$isofile img_dev=$imgdevpath initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img }
menuentry "Boot SystemRescueCd and copy system to RAM" { set gfxpayload=keep linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd archisolabel=SYSRCD603 copytoram img_loop=$isofile img_dev=$imgdevpath initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img }
Configurazione del file ISO grub.cfg, Boot Repair
Apri il file con il tuo editor di testo preferito e apporta le seguenti modifiche:
-
Nella parte superiore del file aggiungi le righe
set isofile=/isoboot/boot-repair/boot-repair-disk-64bit.iso loopback loop $isofile
-
Nelle voci di menu aggiungi il testo in grassetto
menuentry "Boot-Repair-Disk session" { set gfxpayload=keep linux (loop)/casper/vmlinuz.efi file=/cdrom/preseed/lubuntu.seed boot=casper quiet splash iso-scan/filename=$isofile -- initrd (loop)/casper/initrd.lz }
Configurazione del file ISO grub.cfg, Ubuntu con persistenza
Qui useremo ubuntu-16.04.6-desktop-i386.iso
ATTENZIONE:il tipo di filesystem affinché la persistenza funzioni deve essere FAT
Come creare un file casper-rw
Copia il casper-rw
file insieme all'ISO
Apri il file grub.cfg
con il tuo editor di testo preferito e apporta le seguenti modifiche:
-
Nella parte superiore del file aggiungi le righe
set iso_path=/isoboot/ubuntu/ubuntu-16.04.6-desktop-i386.iso loopback loop $iso_path
-
Nelle voci del menu aggiungi il testo in grassetto
menuentry "Try Ubuntu without installing" { linux (loop)/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper iso-scan/filename=${iso_path} quiet splash persistent persistent-path=/isoboot/ubuntu --- initrd (loop)/casper/initrd } menuentry "Install Ubuntu" { linux (loop)/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity iso-scan/filename=${iso_path} quiet splash --- initrd (loop)/casper/initrd } menuentry "Check disc for defects" { linux (loop)/casper/vmlinuz boot=casper integrity-check iso-scan/filename=${iso_path} quiet splash --- initrd (loop)/casper/initrd } menuentry "Test memory" { linux16 (loop)/install/mt86plus }
Accesso ai sistemi da grub>
terminale
grub> configfile (hd0,6)/isoboot/<your system folder>/grub.cfg