diff --git a/configure-debian-system.sh b/configure-debian-system.sh index 6b52b53..bd7e30f 100755 --- a/configure-debian-system.sh +++ b/configure-debian-system.sh @@ -24,10 +24,10 @@ ln ${TFTP}/bios/ldlinux.c32 ${TFTP}/ ln ${TFTP}/pxelinux.cfg/default ${TFTP}/default -s # set file access -chown ${USERID}:${GROUPID} * -R -chmod a+rw * -R +chown ${USERID}:${GROUPID} . -R +chmod a+rw . -R -chown ${USERID}:${GROUPID} ${TFTP}/* -R +chown ${USERID}:${GROUPID} ${TFTP} -R chmod a+rwx ${TFTP} -R # restart services diff --git a/free/wimboot b/free/wimboot new file mode 100644 index 0000000..c772ef8 --- /dev/null +++ b/free/wimboot @@ -0,0 +1,535 @@ + + +
+ +
+wimboot
is a boot loader for Windows Imaging Format (.wim
) files. It enables you to boot into a Windows PE (WinPE) deployment or recovery environment.
+
+You can use wimboot
with iPXE to boot Windows PE via HTTP. With a Gigabit Ethernet network, a typical WinPE image should download in just a few seconds.
+
+wimboot
can download images at the full speed supported by your network, since it can use HTTP rather than TFTP.
+
+wimboot
allows Windows to reuse the memory that was used to hold the RAM disk image; there is no wasted memory.
+
+wimboot
works directly with .wim
image files; there is no need to wrap your .wim
into an ISO or FAT filesystem image.
+
+wimboot
allows you to use a single configuration and set of files to boot under both BIOS and UEFI environments.
+
+You can download the latest version of the wimboot
binary from https://github.com/ipxe/wimboot/releases/latest/download/wimboot. This is a hybrid binary that will work on both BIOS and 64-bit UEFI systems (including UEFI systems with Secure Boot enabled).
+
+You can also download alternative binaries (e.g. for 32-bit UEFI systems) from https://github.com/ipxe/wimboot/releases/latest. +
+ ++Older versions are available from https://github.com/ipxe/wimboot/releases. +
+ +
+The source code is maintained in a git
repository at https://github.com/ipxe/wimboot.
+
+If you have a Windows installation DVD-ROM (Vista, Server 2008, or more recent), and a web server (such as Apache or IIS), then you have everything you need to start using wimboot
.
+
+Copy the contents of the Windows installation DVD-ROM to a directory on your web server (e.g. /var/www/win7
for Apache, or C:\inetpub\wwwroot\win7
for IIS).
+
+If you do not have enough disk space to copy the entire contents of the DVD-ROM, then you may copy only the following files: +
+/boot/bcd + /boot/boot.sdi + /sources/boot.wim+ +
+Download the latest version of wimboot and save it to the same directory on your web server. +
+ +
+Create a text file boot.ipxe
in the same directory on your web server, containing:
+
#!ipxe + + kernel wimboot + initrd boot/bcd BCD + initrd boot/boot.sdi boot.sdi + initrd sources/boot.wim boot.wim + boot+ +
+Boot using iPXE from the URL of your iPXE script, e.g. http://my.web.server/win7/boot.ipxe
. You should see iPXE download your Windows boot files via HTTP and boot into the Windows installer:
+
+You can use wimboot
to boot any bootable .wim
image. See the Windows PE tutorial for information on how to create and customise your own .wim
images.
+
+wimboot
is free, open-source software licensed under the GNU GPL.
+
+A WIM file can contain multiple bootable images. You can use the index=<N>
command-line option to select the image to be booted. For example:
+
kernel wimboot index=2+ +
+You can provide additional files to wimboot
. These files will appear within the X:\Windows\System32
directory. For example:
+
kernel wimboot + initrd winpeshl.ini winpeshl.ini + initrd startup.bat startup.bat + initrd boot/bcd BCD + initrd boot/boot.sdi boot.sdi + initrd sources/boot.wim boot.wim + boot+ +
+You can use this to control the boot process after Windows PE has started. For example, you can use a startup batch file to automatically start the Windows installer from a network share. +
+ +
+You can disable this behaviour by using the rawwim
command-line option. For example:
+
kernel wimboot rawwim+ +
+wimboot
will attempt to extract an appropriate boot manager (such as bootmgr
, bootmgr.exe
or bootmgfw.efi
) from the WIM file.
+
+You can disable this behaviour by explicitly providing an appropriate set of boot manager binaries. For example: +
+kernel wimboot + initrd bootmgr bootmgr + initrd efi/boot/bootx64.efi bootx64.efi+ +
+wimboot
will automatically patch standard BIOS-compatible boot configuration data (BCD) files to allow them to be used on UEFI systems, by changing all occurrences of the string “.exe
” to “.efi
”.
+
+You can disable this behaviour by using the rawbcd
command-line option. For example:
+
kernel wimboot rawbcd+ +
+wimboot
will display some debug messages by default, to assist in diagnosing problems that may occur during booting.
+
+You can disable these debug messages by using the quiet
command-line option. For example:
+
kernel wimboot quiet+ +
+wimboot
will force the Windows boot manager to display error messages in text mode. It does this to work around a bug in some versions of the Windows boot manager, which would otherwise fail to display error messages unless suitable font files are provided.
+
+You can disable this behaviour by using the gui
command-line option and by providing all of the required font files. For example:
+
kernel wimboot gui + initrd boot/fonts/segmono_boot.ttf segmono_boot.ttf + initrd boot/fonts/segoe_slboot.ttf segoe_slboot.ttf + initrd boot/fonts/segoen_slboot.ttf segoen_slboot.ttf + initrd boot/fonts/wgl4_boot.ttf wgl4_boot.ttf+ +
+wimboot
will automatically use paging to relocate the data files above 4GB if possible, to allow for the use of large .wim
files on BIOS systems.
+
+You can disable this behaviour by using the linear
command-line option. For example:
+
kernel wimboot linear+ +
+For more detailed information about the internal workings of wimboot, see the wimboot architecture guide. +
+ +
+Try adding the commands imgstat
and prompt
to your iPXE script, to allow you to check that all of the files have loaded correctly. For example:
+
#!ipxe + kernel wimboot + initrd boot/bcd BCD + initrd boot/boot.sdi boot.sdi + initrd sources/boot.wim boot.wim + imgstat + prompt + boot+ +
+Check that only the expected files are present in the list. You may need to use the imgfree
command to discard any unwanted files.
+
+You can also try adding the pause
command-line option for wimboot
. For example:
+
kernel wimboot pause+ +
+This will instruct wimboot
to wait for a keypress before booting Windows, to give you a further opportunity to observe any messages that may be displayed.
+
+If you are unable to resolve your problem, then you can contact the iPXE developers and other iPXE users. +
+ +