Я планирую переустановить Ubuntu и хочу записать небольшую загрузочную систему восстановления (например, SystemRescueCD) в раздел на моем жестком диске, но при этом иметь возможность установить Ubuntu на тот же диск и иметь возможность загружать Ubuntu и раздел восстановления. Возможно ли это, и если да, то как я могу это сделать? РЕДАКТИРОВАТЬ: Моя текущая версия Ubuntu 19.04.
(hd0,6) является просто примером, необходимо изменить его согласно разделу, который Вы имеете.
Получите ISO (понятное дело)
Выберите свой раздел, откуда ISO-образы собираются быть загруженными. Это не должен быть специальный раздел, это может быть любой формат, или по крайней мере FAT, NTFS, EXT*. (Я не попробовал другими) (если Вы хотите персистентность, это должен быть FAT). Это может иметь другие данные в нем, не будет иметь значения. Обратите внимание на то, какой раздел это, т.е. /dev/sda6
Скопируйте ISO в свой раздел. Чтобы быть организованными, можно создать папку скажем, /isoboot/
в корне раздела, затем подпапка с именем, определяющим систему и вставку ISO там.
Смонтируйте ISO. Самое легкое с должно использовать опцию "Open with disk image mounter"
из контекстного меню в файловом браузере, щелкающем правой кнопкой по файлу.
После того, как смонтированный, перейдите к каталогу /boot/grub/
и скопируйте файл grub.cfg
. Вставьте его внутри /isoboot/<your_system_name>
.
В Вашей Ubuntu откройте с sudo полномочиями файл /etc/grub.d/40_custom
. Добавьте menuentry:
menuentry 'Your name of the ISO system' {
set root='hd0,6' # this mean /dev/sda6
configfile /isoboot/<your_system_name>/grub.cfg
}
Выполненный update-grub
.
Это отличается на каждом ISO, файлы конфигурации личинки могут иметь различные имена
Откройте файл со своим предпочтительным текстовым редактором и внесите следующие изменения:
Наверху файла добавляют строки
set isofile=/isoboot/systemrescuecd-6.0.3.iso
loopback loop $isofile
probe -u $root --set=rootuuid
set imgdevpath="/dev/disk/by-uuid/$rootuuid"
В меню записи добавляют текст полужирным
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
}
Откройте файл со своим предпочтительным текстовым редактором и внесите следующие изменения:
Наверху файла добавляют строки
set isofile=/isoboot/boot-repair/boot-repair-disk-64bit.iso
loopback loop $isofile
В меню записи добавляют текст полужирным
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
}
Здесь мы будем использовать ubuntu-16.04.6-desktop-i386.iso
ПРЕДУПРЕЖДЕНИЕ: типом файловой системы для персистентности работать должен быть FAT
Скопируйте casper-rw
файл вместе с ISO
Откройте файл grub.cfg
с Вашим предпочтительным текстовым редактором и вносят следующие изменения:
Наверху файла добавляют строки
set iso_path=/isoboot/ubuntu/ubuntu-16.04.6-desktop-i386.iso
loopback loop $iso_path
В меню записи добавляют текст полужирным
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
}
grub>
терминалgrub> configfile (hd0,6)/isoboot/<your system folder>/grub.cfg