Так, ви можете досягти цього, додавши меню до меню GRUB
завантажувача.
Ви можете додати спеціальний запис меню GRUB, редагуючи /etc/grub.d/40_custom
,
Приклад користувацького меню :
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 "Trisquel ISO" {
set isofile="/Operating_Systems/Trisquel_7.0_i686/trisquel_7.0_i686.iso"
loopback loop (hd0,5)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash
initrd (loop)/casper/initrd
}
Інструкція та пояснення:
Команда set
використовується для зберігання шляху ISO-файлу до змінної isofile
.
loopback
використовується для створення пристрою із зображення файлової системи. Для цього необхідно вказати пристрій та файл зображення. Тут ми використовували, (hd0,5)$isofile
в якому (hd0,5)
представлений п'ятий розділ диска.
- Точки на Примітка: В
(hd0,5)
,
1 - й цифра означає номер пристрою , який починається з 0
(тут: 0 = 1 - го пристрою) і
2 - й цифра означає номер розділу , який починається з 1
(тут 5 = 5 - го розділу).
Це означає/dev/sda5
- І змінна
$isofile
має шлях до файлу ISO. Отже, нарешті це стає (hd0,5)/Operating_Systems/Trisquel_7.0_i686/trisquel_7.0_i686.iso
.
- Для отримання додаткової інформації відвідайте: Як вказати пристрої та файли .
linux
команда використовується для завантаження ядра Linux ( vmlinuz ) з файлу. Покладіть шлях ядра Linux в ISO.
Прочитайте / витягніть вміст ISO, щоб отримати шлях прикладу ядра:
$ 7z l trisquel_7.0_i686.iso | grep vmlinu
2014-10-29 21:41:43 ..... 5841680 5841680 casper/vmlinuz
2014-11-03 00:45:09 ..... 5844176 5844176 casper/vmlinuz.netinst
значить, /casper/vmlinuz
тут використовувались
initrd
команда використовується для завантаження початкового рамдиска для зображення ядра Linux та встановлення відповідних параметрів у області налаштування Linux у пам'яті.
- initrd - схема для завантаження тимчасової кореневої файлової системи в пам'ять. Поставте шлях
initrd
в ISO.
Прочитайте / витягніть вміст ISO, щоб отримати шлях initrd
:
$ 7z l trisquel_7.0_i686.iso | grep initrd
2014-11-03 00:45:19 ..... 16851900 16851900 casper/initrd
2014-11-03 00:45:09 ..... 9398592 9398592 casper/initrd.netinst
Додатковий параметр, такий як boot=casper iso-scan/filename=$isofile noprompt noeject
може бути специфічним для дистрибутива GNU / Linux і може відрізнятися для іншого сімейства Linux. Ви можете знайти деякі конфігурації для різних сімей / розповсюдження тут .
Примітка. Деякі дистрибутиви використовують initrd.gz
або initrd.lz
залежать від використовуваного алгоритму / стиснення.
Після редагування /etc/grub.d/40_custom
GRUB потрібно оновити update-grub2
командою. Після перезавантаження ви знайдете користувальницьке меню, яке ви додали на екрані GRUB. І ви можете використовувати Live-середовище дистрибутива GNU / Linux.
Для того, щоб виконати встановлення з ISO, інсталятору може знадобитися демонтувати будь-які змонтовані розділи; тобто сказати, інша система змонтована на /isodevice
, тоді ви можете umount -l /isodevice
.