Faceți căutări pe acest blog

vineri, 2 decembrie 2016

Boot non-Linux iso images from hdd with Grub2 (and memdisk)

 După cum amicul @derzis a avut amabilitatea să-mi atragă atenția, putem boota sisteme de operare non-Linux direct din imaginile iso descărcate pe hdd. Sunt trecute și-n materialul original (http://stressat.blogspot.ro/2014/04/boot-iso-images-from-hdd-grub2.html) și-n lista distribuțiilor ce bootează direct din imaginea iso descărcată pe hdd, le trec și aici. Pe parcurs lista se poate mări, sau puteți încerca singuri alte OS-uri acum că știți metoda.
FreeDOS
Hiren'sBootCD
KolibriOS
MenuetOS
ReactOS
UltimateBootCD
Windows XP

CERINȚE
1- imaginea iso a OS-ului respectiv- o descărcați de pe net:
2- un fișier memdisk, va fi folosit pe post de kernel- descărcați syslinux-4.05 (https://www.kernel.org/pub/linux/utils/boot/syslinux/), îl dezarhivați, în directorul rezultat găsiți sub-directorul memdisk ce conține un fișier numit memdisk. Acest fișier memdisk e ceea ce ne trebuie. Îl copiați undeva și dați calea către el în menuentry.
 În exemplele următoare imaginile iso sunt descărcate toate pe partiția /dev/sda2, în directorul /dan/Downloads/ISO, iar fișierul memdisk e în /dan/Downloads. Unele imagini iso e posibil să trebuiască dezarhivate (dau ca exemplu KolibriOS, primul menuentry KolibriOS e pentru imagine dezarhivată, al doilea pentru boot direct din iso...), la altele e necesar să le redenumim pentru a nu primi erori (Hiren'sBootCD de exemplu).Modificați după caz căile.
 O metodă comodă de-a salva menuentry e să evităm scrierea în /etc/grub.d/40_custom și actualizarea periodică a Grub2 prin crearea unui fișier text undeva în /home/user  (eu l-am numit iso-grub) și pasarea acestuia în /etc/grub.d/40_custom:
menuentry "ALL ISO" {
configfile (hd0,2)/dan/iso-grub
}


urmată de actualizarea Grub2:
sudo grub-mkconfig -o /boot/grub/grub.cfg         #pentru Arch
sudo update-grub                                               #pentruUbuntu

 Pe viitor putem modifica de oricâte ori fișierul iso.grub adăugând sau ștergând menuentry  fără să fim nevoiți să actualizăm baza de date a Grub2.

 EXEMPLE FUNȚIONALE
menuentry "KolibriOS-dezarhivat" {
set root='(hd0,2)'
set isofile="/dan/Downloads/ISO/kolibrios/kolibri.iso"
loopback loop (hd0,2)$isofile
linux16
/dan/Downloads/memdisk
initrd16 /kolibrios/kolibri.img
}

menuentry "KolibriOS" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso nomodeset
initrd16 /dan/Downloads/ISO/kolibri.iso
}

menuentry "MenuetOS" {
set root='(hd0,2)'
linux16 /dan/Downloads/ISO/M6412420/memdisk iso
initrd16 /dan/Downloads/M6412420/M6412420.IMG
}

menuentry "Ultimate Boot CD" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso
initrd16 /dan/Downloads/ISO/ubcd536.iso
}
menuentry "Hiren 15.2" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso
initrd16 /dan/Downloads/ISO/HBCD15.2.iso
}

menuentry "FreeDos" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso
initrd16 /dan/Downloads/ISO/FD12CD.iso

menuentry "ReactOS" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso
initrd16 /dan/Downloads/ISO/ReactOS-0.4.3-live.iso

menuentry "Window XP" {
set root='(hd0,2)'
linux16 /dan/Downloads/memdisk iso
initrd16 /dan/Downloads/ISO/win-xp.iso



 PS: dacă aveți parte de BSOD la windows (xp, 7) sau Hiren'nBootCD (are inclus un mini XP), ceva legat de ACPI puteți modifica din BIOS, setați pe opțiunile implicite/ sigure, vedeți dacă aveți opțiunea de-a dezactiva ACPI, setați la OS Optimize pe windows 7 și USB Mode pe USB 2.0 și BIOS în Legacy Mode, nu UEFI. Depinde de BIOS, mie-mi merg ok pe laptopul vechi Samsung, dar a trebuit să iau BIOS-ul la puricat pe cel nou Lenovo...
 Sau puteți dezactiva ACPI apăsând F7 sau Fn+F7 în momentul când apare mesajul ”Press F6 to...”.
 
Back to top