Problems booting a WinPE based rescuedisk iso over PXE
-
First off, hello! I’m new!
Now that that is out of the way.
Scenario:
Server:- VM on a Unraid based server
- Ubuntu 14.04.4
- 512MB RAM
- 2 Cores assigned
- Gigabit LAN
- Fog_1.2.0 Stable
Client:
- HP EliteBook 2740p
- 8GB RAM
- 120GB SSD
- Gigabit LAN
Problem:
I’m trying to make WinPE 10 Sergei Strelec (x64) bootable over PXE and i can get the ISO’s menu to show but when i pick one of the options in the menu the screen just goes black and nothing happens. Any idea’s?Problem2:
I have two other ISO’s, one Hirens iso and one other Win10PE based ISO. Both when trying to boot them give: “could not boot no space left on device”.Problem3:
The same happens when trying to boot a regular Windows 10 installation ISO.My advanced menu config,
http://pastebin.com/eNJnke3m -
Hello and welcome to the FOG forums.
First let me say that booting iso images is not a function of FOG specifically. FOG is intended to capture and deploy images of systems across your campus. These can be windows, OSX, or linux systems. With that said, FOG is extensible and is based on other opensource tools (like iPXE).
There have been several ingenious people who have been able to boot iso images with FOG. A while a go I did write a tutorial for booting MDT’s iso image (winPE) using FOG. https://forums.fogproject.org/topic/6284/booting-mdt-2013-litetouch-with-fog This does work and I would imagine is similar to the WinPE Rescue iso you mentioned in your OP. My instructions are based on some of the new features in the trunk (development) version of FOG 1.2. https://wiki.fogproject.org/wiki/index.php/Upgrade_to_trunk The trunk version allows you to create iPXE boot menu items from inside the FOG web gui instead of messing with configuration files.
There is also other guides on booting other live images (like Hirens) from iso images with fog. https://wiki.fogproject.org/wiki/index.php/Include_any_ISO_in_the_FOG_Bootmenu As I mentioned above FOG uses iPXE for its PXE boot loader. So just about any guidance you can find for PXE booting your ISO image that uses iPXE will work with FOG.
And finally not all iso images support PXE booting (not a fog issue but an ISO issue). The Win10 ISO comes to mind. The typical deployment of Win10 is to build a reference image with MDT or manually in audit mode then capture the reference image with FOG and deploy the image with FOG.
-
I understand. But being able to boot a rescuedisk over the network severely cuts down on my need for a half dozen USB drives
For context, we are talking small scale home repair use, not a school or business with hundreds of systems.Regarding the MDT tutorial, MDT and sysprepping my own images is somewhat out of the scope of this project. The main goal right now is having PXE recoverable images for my own systems and being able to do a clean install over PXE. The Rescuedisk iso’s would mainly just be an added benefit.
Regarding the Windows installation, could i potentially use WinNTSetup to throw an installation on a disk and then image that to the server and use it as a clean installation?
Also, the wiki iso tutorial is somewhat unclear and highly specific in my opinion. I found this one to be much easier to follow, https://forums.fogproject.org/topic/4790/how-to-add-live-cd-iso-to-fog-1-2-on-ubuntu-12-04/29
Edit: i should note by the way that the Sergei Strelec Rescuedisk did manage to boot in to its live Windows on a different machine but most stuff didn’t work because of a file location fuck up in the way the iso gets mounted through PXE i think.
-
@Shamalamadindong I’m sorry my intentions may not have been clear in that FOG is a tool for image deployment. You CAN use it for other purposes as you noted.
I understand that MDT is out of scope for your project. But the link I provided with “booting mdt 2013 lite touch”. Really has nothing to do with MDT itself other than delivering a WinPE environment to the target computer (which MDT uses to start its environment). If you have a WinPE environment on an iso image, you can use either method to deliver that to your target computer over PXE. Your target will boot from that iso.
The third link provided with include any ISO in the fog menu give steps required to boot hirens you mentioned.
The link you provided for live booting ubuntu. That is the other method you can use. In this case you don’t have an iso image you want to boot, you have the kernel (think operating system) vmlinuz and the initrd (think virtual hard drive) you are telling iPXE to send to the target computer. In iPXE you are telling it the path to the kernel and initird and then launch the kernel with kernel boot time settings (imgargs). For this part to work you need to create a folder on the fog server in /var/www/html/fog/service/ipxe/<your folder> and place your kernel and virtual hard drive there. (BTW: this is the method the FOG client uses to boot its kernel (bzImage) and its virtual hard drive (init)
The last part is that you can have iPXE send the windows 10 install iso to the target computer BUT the target OS needs to be aware of PXE booting, some target application will try to access the cdrom via hardware calls, but in this case the iso image is not on cdrom but running in memory, delivered by iPXE. And that brings me to the last bit. When you send an ISO image to the target computer, that iso image is stored in RAM memory as a virtual disk image. If your computer only have 1GB of memory and your ISO image is 2GB in size, the system will crash because there is not enough RAM to hold the iso image. Also if your RAM memory is 2GB in size and your iso image is 1.2 GB in size it will transfer correctly, but then your target operating system only has 800MB of RAM available for your target operating system.
-
Your last post got me thinking about having to manage multiple usb flash drives. I just remembered yumi. That should allow you to combine all of those iso images onto a single flash drive. That way you don’t have to mess with pxe booting or networking at all. This is just a suggestion to solve your problem, not to push another technology on you.
-
Just to clarify, the issue isn’t tool consolidation it is really just the number of USB drives. On a good day i can be working on 6 machines at the same time and i’m somewhat fed up with having to keep 6 identical USB drives updated.
@george1421 said in Problems booting a WinPE based rescuedisk iso over PXE:
I understand that MDT is out of scope for your project. But the link I provided with “booting mdt 2013 lite touch”. Really has nothing to do with MDT itself other than delivering a WinPE environment to the target computer (which MDT uses to start its environment). If you have a WinPE environment on an iso image, you can use either method to deliver that to your target computer over PXE. Your target will boot from that iso.
In that case i am somewhat confused since your tutorial specifically mentions starting out with an MDT server. What would be the best way to get an existing Win10PE iso with built in tools and such working? (assuming that is possible)
-
Hi,
i use the following PXE Menu, all this ISO’s boot just fine for me:
:MENU menu item --gap -- PXE Boot Menu - JOS IT item --gap -- item bootlocal Festplatte booten item --gap Betriebssystem installieren item --key 7 win7 Windows 7 x64 Vollautomatisch! PE 4.0 item --key 2 win72 Windows 7 x64 Festplatten-Dialog PE 4.0 item --key 3 win73 Windows 7 x64 Festplatten-Dialog PE 5.0 item --gap Partition/Image/Backup item --key b acronis2014 Acronis True Image 2014 item --key c acronis20142 Acronis True Image 2014 PE item --key r acronis20143 Acronis True Image 2014 PE RT item --key p easeuspms EaseUS Partition Master Server item --gap Password/Recovery/Restore/Repair item --key e erd2005 ERD Commander Windows XP item --key d dart7 DaRT 7.0 Windows 7 Server 2008 R2 item --gap -- item return <--- choose --default bootlocal --timeout 60000 target && goto ${target} :bootlocal sanboot --no-describe --drive 0x80 || goto MENU :win7 initrd http://${fog-ip}/iso/win7.iso chain memdisk iso raw || goto MENU :win72 initrd http://${fog-ip}/iso/win7_dialog.iso chain memdisk iso raw || goto MENU :win73 initrd http://${fog-ip}/iso/win7pe5_dialog.iso chain memdisk iso raw || goto MENU :win74 chain -ar ${boot-url}/service/ipxe/advanced.php?login=1 || goto MENU :acronis2013 initrd http://${fog-ip}/iso/acronis2013.iso chain memdisk iso raw || goto MENU :acronis2014 initrd http://${fog-ip}/iso/acronis2014.iso chain memdisk iso raw || goto MENU :acronis20142 initrd http://${fog-ip}/iso/acronis2014pe.iso chain memdisk iso raw || goto MENU :acronis20143 initrd http://${fog-ip}/iso/acronis2014pert.iso chain memdisk iso raw || goto MENU :easeuspms initrd http://${fog-ip}/iso/easeuspms.iso chain memdisk iso raw || goto MENU :erd2005 initrd http://${fog-ip}/iso/erd2005.iso chain memdisk iso raw || goto MENU :dart7 initrd http://${fog-ip}/iso/dart7.iso chain memdisk iso raw || goto MENU :shell shell || goto MENU :return chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} || prompt goto MENU autoboot
Regards X23
-
@Shamalamadindong said in Problems booting a WinPE based rescuedisk iso over PXE:
In that case i am somewhat confused since your tutorial specifically mentions starting out with an MDT server. What would be the best way to get an existing Win10PE iso with built in tools and such working?
With MDT there are two components. One is the MDT server itself. That holds all of the logic that MDT executes (much like FOG does). But there is also a WinPE environment that boots on the target computer much like FOS does with FOG. MDT doesn’t have PXE capabilities (use WDS for this), so for MDT, the WinPE environment must boot either from the wim file or the iso image (that contains the wim file, but that is a bit off point). The point is how the iso is accessed is through FOG will be the same as what you need.
x23piracy has listed in his post the memdisk method to access the iso file. This is the same as in my instructions except I’m using the trunk version of FOG so it allows me to manage these settings via the web gui as my instructions show. Either method will work as long as the iso and its operating system understands its being delivered by PXE.
If you look at my third link from my original post. Look at the Hirens 15.04 section. This is the other method method to boot image (i.e. not using memdisk).
kernel http://${fog-ip}${path}/casper/vmlinuz.efi || read void initrd http://${fog-ip}${path}/casper/initrd.lz || read void imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:${nfs_path} ip=dhcp splash quiet – || read void
The above section you can see that kernel section indicates the kernel (OS) to send to the target (hint in this case it is an uefi based OS image), the initrd (virtual hard drive) and any boot time settings to pass to the OS - imgargs. This is typically how linux/bsd based environment are booted over pxe.
-
Is this resolved or do you still require help?
The recommended way to boot WinPE based media is to use wimboot.
With small ISOs you can sometimes get away with just using memdisk on the ISO, but that’s not feasible for W10 ISO for example. (since the entire ISO would try to unpack in the RAM at once)
Booting W10 installation over the network is possible, but requires a lot more work to get it going. The basic principle is to load a modified WINPE ISO and then mount the unpacked ISO path and manually call the setup file to run.