complete start over...
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
temp/
|
||||
non-free/
|
||||
Executable
+3
@@ -0,0 +1,3 @@
|
||||
# PXE Boot-Server
|
||||
|
||||
This Project aims to provide a set of scripts to build a modular PXE TFTP Server and is under heavy construction.
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Load Global Settings
|
||||
. ./settings.sh
|
||||
|
||||
# create directories
|
||||
mkdir -p ${TFTP}
|
||||
mkdir -p ${TFTP}/pxelinux.cfg
|
||||
|
||||
# copy Files from the Resource-Dir to the correct places:
|
||||
cp ./resources/lighttpd.conf /etc/lighttpd/lighttpd.conf
|
||||
cp ./resources/exports /etc/exports
|
||||
if ! [ -e ${TFTP}/pxelinux.cfg/default ]; then
|
||||
cp ./resources/default-minimal ${TFTP}/pxelinux.cfg/default
|
||||
fi
|
||||
cp ./resources/splash.png ${TFTP}/
|
||||
cp -a /usr/lib/syslinux/modules/bios ${TFTP}/
|
||||
|
||||
# Link needed Files from installed Debian Packages to the TFTP-Root:
|
||||
ln /usr/lib/PXELINUX/pxelinux.0 ${TFTP}/
|
||||
ln /boot/ipxe.lkrn ${TFTP}/
|
||||
ln /usr/lib/syslinux/memdisk ${TFTP}/
|
||||
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} ${TFTP} -R
|
||||
chmod a+rwx ${TFTP} -R
|
||||
|
||||
# restart services
|
||||
systemctl restart tftpd-hpa lighttpd nfs-kernel-server
|
||||
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
# Download & Install Debian Packages
|
||||
apt update
|
||||
apt install -y samba genisoimage wimtools cabextract
|
||||
|
||||
# configure Packages
|
||||
cp ./resources/smb.conf /etc/samba/
|
||||
|
||||
# setup dirs:
|
||||
mkdir -p ./non-free/windows
|
||||
mkdir -p ./temp/waik
|
||||
|
||||
# restart services
|
||||
systemctl restart smbd
|
||||
|
||||
# Download Windows Stuff:
|
||||
WAIKURL="https://download.microsoft.com/download/8/E/9/8E9BBC64-E6F8-457C-9B8D-F6C9A16E6D6A/KB3AIK_EN.iso"
|
||||
FILENAME="./temp/KB3AIK_EN.iso"
|
||||
if ! [ -e $FILENAME ]; then
|
||||
wget -nc -O $FILENAME $WAIKURL
|
||||
fi
|
||||
|
||||
if [ -e $FILENAME ]; then
|
||||
7z x -aos -o./temp/waik $FILENAME
|
||||
fi
|
||||
|
||||
# parse winpestart.bat
|
||||
cat ./resources/winpestart.bat | sed -e "s/__NFSSERVERIP__/${NFSSERVERIP}/g" > ./temp/winpestart.bat
|
||||
|
||||
# Create winpe.iso
|
||||
if [ -e ./non-free/windows/winpe.iso ]; then
|
||||
rm ./non-free/windows/winpe.iso
|
||||
fi
|
||||
if [ -e ./temp/waik/WinPE.cab ]; then
|
||||
mkwinpeimg --iso --arch=amd64 --waik-dir=./temp/waik --start-script=./temp/winpestart.bat ./non-free/windows/winpe.iso
|
||||
#mkwinpeimg --iso --arch=amd64 --waik-dir=./temp/waik ./non-free/windows/winpe.iso
|
||||
fi
|
||||
|
||||
# download Deployment Toolkit
|
||||
DLURL="https://download.microsoft.com/download/3/3/9/339BE62D-B4B8-4956-B58D-73C4685FC492/MicrosoftDeploymentToolkit_x64.msi"
|
||||
FILENAME="./non-free/windows/MicrosoftDeploymentToolkit_x64.msi"
|
||||
if ! [ -e $FILENAME ]; then
|
||||
wget -nc -O $FILENAME $DLURL
|
||||
fi
|
||||
|
||||
# copy files to tftp server
|
||||
cp -av ./non-free/windows ${TFTP}/non-free/
|
||||
|
||||
Executable
+96
@@ -0,0 +1,96 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
WGET="-nv -nc"
|
||||
Z7="-aos"
|
||||
|
||||
if ! [ -e ./temp ]; then
|
||||
mkdir -p ./temp
|
||||
fi
|
||||
|
||||
echo "--- FreeDOS -- ---------------------------------------------------------------------"
|
||||
echo "------------------------------------------------------------------------------------"
|
||||
CZURL="https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.3/official/FD13-LiveCD.zip"
|
||||
FILENAME=fdfullcd.zip
|
||||
|
||||
if ! [ -e ./temp/$FILENAME ]; then
|
||||
echo "Downloading FreeDOS..."
|
||||
wget $WGET -O ./temp/$FILENAME $CZURL
|
||||
fi
|
||||
if [ -e ./temp/$FILENAME ]; then
|
||||
echo "Preparing FreeDOS..."
|
||||
7z x $Z7 -o${TFTP}/free ./temp/${FILENAME}
|
||||
fi
|
||||
|
||||
echo "--- Clonezilla ---------------------------------------------------------------------"
|
||||
echo "------------------------------------------------------------------------------------"
|
||||
CZURL="https://sourceforge.net/projects/clonezilla/files/clonezilla_live_stable/3.0.3-22/clonezilla-live-3.0.3-22-amd64.iso/download"
|
||||
FILENAME=clonezilla-64bit.iso
|
||||
|
||||
if ! [ -e ./temp/$FILENAME ]; then
|
||||
echo "Downloading Clonezilla..."
|
||||
wget $WGET -O ./temp/$FILENAME $CZURL
|
||||
fi
|
||||
if [ -e ./temp/$FILENAME ]; then
|
||||
echo "Preparing Clonezilla..."
|
||||
mkdir -p ${TFTP}/free/cz
|
||||
7z x $Z7 -o${TFTP}/free/cz ./temp/${FILENAME}
|
||||
fi
|
||||
|
||||
echo "--- Rescuezilla --------------------------------------------------------------------"
|
||||
echo "------------------------------------------------------------------------------------"
|
||||
RZURL="https://github.com/rescuezilla/rescuezilla/releases/download/2.4.2/rescuezilla-2.4.2-64bit.jammy.iso"
|
||||
FILENAME=rescuezilla-64bit.iso
|
||||
|
||||
if ! [ -e ./temp/$FILENAME ]; then
|
||||
echo "Downloading Rescuezilla..."
|
||||
wget $WGET -O ./temp/$FILENAME $RZURL
|
||||
fi
|
||||
if [ -e ./temp/$FILENAME ]; then
|
||||
echo "Preparing Rescuezilla..."
|
||||
mkdir -p ${TFTP}/free/rz
|
||||
7z x $Z7 -o${TFTP}/free/rz ./temp/${FILENAME}
|
||||
fi
|
||||
|
||||
echo "--- Knoppix V9.1 ------------------------------------------------------------------"
|
||||
echo "------------------------------------------------------------------------------------"
|
||||
KNX9URL="http://ftp.uni-kl.de/pub/linux/knoppix-dvd/KNOPPIX_V9.1DVD-2021-01-25-DE.iso"
|
||||
FILENAME=KNOPPIX_V9.1DVD.iso
|
||||
|
||||
if ! [ -e ./temp/$FILENAME ]; then
|
||||
echo "Downloading Knoppix..."
|
||||
wget $WGET -O ./temp/$FILENAME $KNX9URL
|
||||
fi
|
||||
if [ -e ./temp/$FILENAME ]; then
|
||||
echo "Preparing Knoppix..."
|
||||
mkdir -p ${TFTP}/free/knx
|
||||
7z x $Z7 -o${TFTP}/free/knx ./temp/${FILENAME}
|
||||
cp ./resources/knx-miniroot.gz ${TFTP}/free/knx/boot/isolinux/miniroot.gz
|
||||
fi
|
||||
|
||||
echo "--- Debian Installer ---------------------------------------------------------------"
|
||||
echo "------------------------------------------------------------------------------------"
|
||||
DISTS="bullseye bookworm"
|
||||
ARCHS="amd64 i386"
|
||||
|
||||
for DIST in $DISTS;
|
||||
do
|
||||
for ARCH in ${ARCHS};
|
||||
do
|
||||
DEBURL="https://deb.debian.org/debian/dists/${DIST}/main/installer-${ARCH}/current/images/netboot/netboot.tar.gz"
|
||||
FILENAME="netboot-${DIST}-${ARCH}.tar.gz"
|
||||
if ! [ -e ./temp/${FILENAME} ]; then
|
||||
echo "Downloading Debian installer ${DIST}/${ARCH}..."
|
||||
wget $WGET -O ./temp/${FILENAME} $DEBURL
|
||||
fi
|
||||
if [ -e ./temp/${FILENAME} ]; then
|
||||
echo "Create directory in ${TFTP}/free/deb-${DIST}..."
|
||||
mkdir -p ${TFTP}/free/deb-${DIST}
|
||||
echo "Unpacking files..."
|
||||
tar xfzC ./temp/${FILENAME} ${TFTP}/free/deb-${DIST}
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
./configure-debian-system.sh
|
||||
Executable
+6
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
# copy local non-free directory to the tftp server:
|
||||
cp -av ./non-free ${TFTP}/
|
||||
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
@@ -0,0 +1,535 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
|
||||
lang="en" dir="ltr">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>
|
||||
iPXE - open source boot firmware [wimboot]
|
||||
</title>
|
||||
|
||||
<meta name="generator" content="DokuWiki"/>
|
||||
<meta name="robots" content="index,follow"/>
|
||||
<meta name="keywords" content="wimboot"/>
|
||||
<link rel="search" type="application/opensearchdescription+xml" href="/lib/exe/opensearch.php" title="iPXE - open source boot firmware"/>
|
||||
<link rel="start" href="/"/>
|
||||
<link rel="contents" href="/wimboot?do=index" title="Sitemap"/>
|
||||
<link rel="manifest" href="/lib/exe/manifest.php"/>
|
||||
<link rel="alternate" type="application/rss+xml" title="Recent Changes" href="/feed.php"/>
|
||||
<link rel="alternate" type="application/rss+xml" title="Current namespace" href="/feed.php?mode=list&ns="/>
|
||||
<link rel="alternate" type="text/html" title="Plain HTML" href="/_export/xhtml/wimboot"/>
|
||||
<link rel="alternate" type="text/plain" title="Wiki Markup" href="/_export/raw/wimboot"/>
|
||||
<link rel="canonical" href="https://ipxe.org/wimboot"/>
|
||||
<link rel="stylesheet" type="text/css" href="/lib/exe/css.php?t=doogiestpl&tseed=c353b386e7712527745f967265a28687"/>
|
||||
<!--[if gte IE 9]><!-->
|
||||
<script type="text/javascript">/*<![CDATA[*/var NS='';var JSINFO = {"id":"wimboot","namespace":"","ACT":"show","useHeadingNavigation":0,"useHeadingContent":0};
|
||||
/*!]]>*/</script>
|
||||
<script type="text/javascript" charset="utf-8" src="/lib/exe/jquery.php?tseed=23f888679b4f1dc26eef34902aca964f"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="/lib/exe/js.php?t=doogiestpl&tseed=c353b386e7712527745f967265a28687"></script>
|
||||
<!--<![endif]-->
|
||||
<link rel="shortcut icon" href="/lib/tpl/doogiestpl/images/favicon.ico" />
|
||||
<link rel="apple-touch-icon" href="/lib/tpl/doogiestpl/images/apple-touch-icon.png" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="dokuwiki ">
|
||||
|
||||
<!-- login state -->
|
||||
<div class="user">
|
||||
</div>
|
||||
|
||||
<!-- breadcrumbs -->
|
||||
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
||||
|
||||
<div class="stylehead">
|
||||
<div class="header">
|
||||
<div class="logo">
|
||||
<a href="/start" name="dokuwiki__top" id="dokuwiki__top" accesskey="h" title="[ALT+H]">iPXE - open source boot firmware</a> </div>
|
||||
<div class="tools">
|
||||
<div class="pagename">
|
||||
<!-- mcb30 - removed backlinks and replaced with logo -->
|
||||
<a href="/start" name="dokuwiki__logo" id="dokuwiki__logo"><img src="/_media/logos/ipxe-small.png" width="159" height="105" alt="iPXE logo" /></a> </div>
|
||||
</div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
<div class="tabnav" id="tab__nav">
|
||||
<ul>
|
||||
<li class="level1"><div class="li"> <a href="/start" class="wikilink1" title="start">Home</a></div>
|
||||
</li>
|
||||
<li class="level1"><div class="li"> <span class="curid"><a href="/download" class="wikilink1" title="download">Download</a></span></div>
|
||||
</li>
|
||||
<li class="level1"><div class="li"> <a href="/pics" class="wikilink1" title="pics">Screenshots</a></div>
|
||||
</li>
|
||||
<li class="level1"><div class="li"> <a href="/docs" class="wikilink1" title="docs">Documentation</a></div>
|
||||
</li>
|
||||
<li class="level1"><div class="li"> <a href="/faq" class="wikilink1" title="faq">FAQ</a></div>
|
||||
</li>
|
||||
<li class="level1"><div class="li"> <a href="/contact" class="wikilink1" title="contact">Contact</a></div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="page">
|
||||
<!-- ......... wikipage start ......... -->
|
||||
<!-- TOC START -->
|
||||
<div id="dw__toc" class="dw__toc">
|
||||
<h3 class="toggle">Table of Contents</h3>
|
||||
<div>
|
||||
|
||||
<ul class="toc">
|
||||
<li class="level1"><div class="li"><a href="#advantages">Advantages</a></div></li>
|
||||
<li class="level1"><div class="li"><a href="#download">Download</a></div></li>
|
||||
<li class="level1"><div class="li"><a href="#getting_started">Getting started</a></div>
|
||||
<ul class="toc">
|
||||
<li class="level2"><div class="li"><a href="#extract_the_windows_boot_files">Extract the Windows boot files</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#download_wimboot">Download wimboot</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#create_the_ipxe_script">Create the iPXE script</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#boot">Boot</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#next_steps">Next steps</a></div></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="level1"><div class="li"><a href="#licence">Licence</a></div></li>
|
||||
<li class="level1"><div class="li"><a href="#sponsors">Sponsors</a></div></li>
|
||||
<li class="level1"><div class="li"><a href="#advanced_topics">Advanced topics</a></div>
|
||||
<ul class="toc">
|
||||
<li class="level2"><div class="li"><a href="#multi-image_wim_files">Multi-image WIM files</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#injected_files">Injected files</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#custom_boot_manager">Custom boot manager</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#disabling_automatic_bcd_modifications">Disabling automatic BCD modifications</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#disabling_debug_messages">Disabling debug messages</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#displaying_graphical_boot_messages">Displaying graphical boot messages</a></div></li>
|
||||
<li class="level2"><div class="li"><a href="#disabling_paging">Disabling paging</a></div></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="level1"><div class="li"><a href="#internals">Internals</a></div></li>
|
||||
<li class="level1"><div class="li"><a href="#troubleshooting">Troubleshooting</a></div></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- TOC END -->
|
||||
|
||||
<h1 id="wimboot">wimboot</h1>
|
||||
<div class="level1">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> is a boot loader for Windows Imaging Format (<code>.wim</code>) files. It enables you to boot into a <a href="https://en.wikipedia.org/wiki/Windows_Preinstallation_Environment" class="urlextern" title="https://en.wikipedia.org/wiki/Windows_Preinstallation_Environment">Windows PE (WinPE)</a> deployment or recovery environment.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can use <code>wimboot</code> with <a href="/start" class="wikilink1" title="start">iPXE</a> to <a href="/howto/winpe" class="wikilink1" title="howto:winpe">boot Windows PE via HTTP</a>. With a Gigabit Ethernet network, a typical WinPE image should download in just a few seconds.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="advantages">Advantages</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
<a href="/_detail/clipart/lightbulb.png?id=wimboot" class="media" title="clipart:lightbulb.png"><img src="/_media/clipart/lightbulb.png?w=180&h=200&tok=8cacff" class="mediaright" title="A light bulb" alt="A light bulb" width="180" height="200" /></a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h5 id="speed">Speed</h5>
|
||||
<div class="level5">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> can download images at the full speed supported by your network, since it can use <abbr title="Hyper Text Transfer Protocol">HTTP</abbr> rather than TFTP.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h5 id="efficiency">Efficiency</h5>
|
||||
<div class="level5">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> allows Windows to reuse the memory that was used to hold the RAM disk image; there is no wasted memory.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h5 id="ease_of_use">Ease of use</h5>
|
||||
<div class="level5">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> works directly with <code>.wim</code> image files; there is no need to wrap your <code>.wim</code> into an <abbr title="International Organization for Standardization">ISO</abbr> or FAT filesystem image.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h5 id="biosuefi_compatibility">BIOS/UEFI compatibility</h5>
|
||||
<div class="level5">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> allows you to use a single configuration and set of files to boot under both BIOS and UEFI environments.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="download">Download</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
You can download the latest version of the <code>wimboot</code> binary from <a href="https://github.com/ipxe/wimboot/releases/latest/download/wimboot" class="urlextern" title="https://github.com/ipxe/wimboot/releases/latest/download/wimboot">https://github.com/ipxe/wimboot/releases/latest/download/wimboot</a>. This is a hybrid binary that will work on both BIOS and 64-bit UEFI systems (including UEFI systems with Secure Boot enabled).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can also download alternative binaries (e.g. for 32-bit UEFI systems) from <a href="https://github.com/ipxe/wimboot/releases/latest" class="urlextern" title="https://github.com/ipxe/wimboot/releases/latest">https://github.com/ipxe/wimboot/releases/latest</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Older versions are available from <a href="https://github.com/ipxe/wimboot/releases" class="urlextern" title="https://github.com/ipxe/wimboot/releases">https://github.com/ipxe/wimboot/releases</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The source code is maintained in a <code>git</code> repository at <a href="https://github.com/ipxe/wimboot" class="urlextern" title="https://github.com/ipxe/wimboot">https://github.com/ipxe/wimboot</a>.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="getting_started">Getting started</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
If you have a Windows installation DVD-ROM (Vista, Server 2008, or more recent), and a web server (such as Apache or <abbr title="Internet Information Services">IIS</abbr>), then you have everything you need to start using <code>wimboot</code>.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="extract_the_windows_boot_files">Extract the Windows boot files</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<a href="/_detail/clipart/cdrom.jpeg?id=wimboot" class="media" title="clipart:cdrom.jpeg"><img src="/_media/clipart/cdrom.jpeg?w=150&h=150&tok=2b33e2" class="mediaright" title="A CD-ROM" alt="A CD-ROM" width="150" height="150" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Copy the contents of the Windows installation DVD-ROM to a directory on your web server (e.g. <code>/var/www/win7</code> for Apache, or <code>C:\inetpub\wwwroot\win7</code> for <abbr title="Internet Information Services">IIS</abbr>).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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:
|
||||
</p>
|
||||
<pre class="code"> /boot/bcd
|
||||
/boot/boot.sdi
|
||||
/sources/boot.wim</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="download_wimboot">Download wimboot</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
Download the <a href="https://github.com/ipxe/wimboot/releases/latest/download/wimboot" class="urlextern" title="https://github.com/ipxe/wimboot/releases/latest/download/wimboot">latest version of wimboot</a> and save it to the same directory on your web server.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="create_the_ipxe_script">Create the iPXE script</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
Create a text file <code>boot.ipxe</code> in the same directory on your web server, containing:
|
||||
</p>
|
||||
<pre class="code"> #!ipxe
|
||||
|
||||
kernel wimboot
|
||||
initrd boot/bcd BCD
|
||||
initrd boot/boot.sdi boot.sdi
|
||||
initrd sources/boot.wim boot.wim
|
||||
boot</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="boot">Boot</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
Boot using <a href="/start" class="wikilink1" title="start">iPXE</a> from the <abbr title="Uniform Resource Locator">URL</abbr> of your iPXE script, e.g. <code>http://my.web.server/win7/boot.ipxe</code>. You should see iPXE download your Windows boot files via <abbr title="Hyper Text Transfer Protocol">HTTP</abbr> and boot into the Windows installer:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="/_detail/screenshots/wimboot.png?id=wimboot" class="media" title="screenshots:wimboot.png"><img src="/_media/screenshots/wimboot.png?w=600&h=334&tok=484325" class="mediacenter" title="wimboot booting Windows 7" alt="wimboot booting Windows 7" width="600" height="334" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="/_detail/screenshots/win7_installer.png?id=wimboot" class="media" title="screenshots:win7_installer.png"><img src="/_media/screenshots/win7_installer.png?w=600&h=450&tok=d70835" class="mediacenter" title="Windows 7 installer booted via wimboot" alt="Windows 7 installer booted via wimboot" width="600" height="450" /></a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="next_steps">Next steps</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
You can use <code>wimboot</code> to boot any bootable <code>.wim</code> image. See the <a href="/howto/winpe" class="wikilink1" title="howto:winpe">Windows PE tutorial</a> for information on how to create and customise your own <code>.wim</code> images.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="licence">Licence</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> is free, open-source software licensed under the <a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html" class="urlextern" title="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU GPL</a>.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="sponsors">Sponsors</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
Portions of the <code>wimboot</code> development have been sponsored by:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="https://jumptrading.com" class="media" title="https://jumptrading.com"><img src="/_media/logos/jump.png?w=165&h=37&tok=b2c235" class="mediacenter" title="Jump Trading" alt="Jump Trading" width="165" height="37" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="https://2pintsoftware.com" class="media" title="https://2pintsoftware.com"><img src="/_media/logos/2pint.png?w=106&h=33&tok=b919c8" class="mediacenter" title="2Pint Software" alt="2Pint Software" width="106" height="33" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="https://digitalintelligence.com" class="media" title="https://digitalintelligence.com"><img src="/_media/logos/digitalintelligence.png?w=150&h=28&tok=42b260" class="mediacenter" title="Digital Intelligence" alt="Digital Intelligence" width="150" height="28" /></a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="advanced_topics">Advanced topics</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
<a href="/_detail/clipart/books.png?id=wimboot" class="media" title="clipart:books.png"><img src="/_media/clipart/books.png?w=180&h=180&tok=bcf6a6" class="mediaright" title="Some books" alt="Some books" width="180" height="180" /></a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="multi-image_wim_files">Multi-image WIM files</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
A WIM file can contain multiple bootable images. You can use the <code>index=<N></code> command-line option to select the image to be booted. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot index=2</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="injected_files">Injected files</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
You can provide additional files to <code>wimboot</code>. These files will appear within the <code>X:\Windows\System32</code> directory. For example:
|
||||
</p>
|
||||
<pre class="code"> 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</pre>
|
||||
|
||||
<p>
|
||||
You can use this to control the boot process after Windows PE has started. For example, you can use a <a href="/howto/winpe#adding_a_startup_batch_file" class="wikilink1" title="howto:winpe">startup batch file</a> to automatically start the Windows installer from a network share.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable this behaviour by using the <code>rawwim</code> command-line option. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot rawwim</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="custom_boot_manager">Custom boot manager</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> will attempt to extract an appropriate boot manager (such as <code>bootmgr</code>, <code>bootmgr.exe</code> or <code>bootmgfw.efi</code>) from the WIM file.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable this behaviour by explicitly providing an appropriate set of boot manager binaries. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot
|
||||
initrd bootmgr bootmgr
|
||||
initrd efi/boot/bootx64.efi bootx64.efi</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="disabling_automatic_bcd_modifications">Disabling automatic BCD modifications</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> 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 “<code>.exe</code>” to “<code>.efi</code>”.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable this behaviour by using the <code>rawbcd</code> command-line option. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot rawbcd</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="disabling_debug_messages">Disabling debug messages</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> will display some debug messages by default, to assist in diagnosing problems that may occur during booting.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable these debug messages by using the <code>quiet</code> command-line option. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot quiet</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="displaying_graphical_boot_messages">Displaying graphical boot messages</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> 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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable this behaviour by using the <code>gui</code> command-line option and by providing all of the required font files. For example:
|
||||
</p>
|
||||
<pre class="code"> 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</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h3 id="disabling_paging">Disabling paging</h3>
|
||||
<div class="level3">
|
||||
|
||||
<p>
|
||||
<code>wimboot</code> will automatically use paging to relocate the data files above 4GB if possible, to allow for the use of large <code>.wim</code> files on BIOS systems.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can disable this behaviour by using the <code>linear</code> command-line option. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot linear</pre>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="internals">Internals</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
For more detailed information about the internal workings of wimboot, see the <a href="/appnote/wimboot_architecture" class="wikilink1" title="appnote:wimboot_architecture">wimboot architecture guide</a>.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="troubleshooting">Troubleshooting</h2>
|
||||
<div class="level2">
|
||||
|
||||
<p>
|
||||
Try adding the commands <code><a href="/cmd/imgstat" class="wikilink1" title="cmd:imgstat">imgstat</a></code> and <code><a href="/cmd/prompt" class="wikilink1" title="cmd:prompt">prompt</a></code> to your iPXE script, to allow you to check that all of the files have loaded correctly. For example:
|
||||
</p>
|
||||
<pre class="code"> #!ipxe
|
||||
kernel wimboot
|
||||
initrd boot/bcd BCD
|
||||
initrd boot/boot.sdi boot.sdi
|
||||
initrd sources/boot.wim boot.wim
|
||||
imgstat
|
||||
prompt
|
||||
boot</pre>
|
||||
|
||||
<p>
|
||||
Check that only the expected files are present in the list. You may need to use the <code><a href="/cmd/imgfree" class="wikilink1" title="cmd:imgfree">imgfree</a></code> command to discard any unwanted files.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can also try adding the <code>pause</code> command-line option for <code>wimboot</code>. For example:
|
||||
</p>
|
||||
<pre class="code"> kernel wimboot pause</pre>
|
||||
|
||||
<p>
|
||||
This will instruct <code>wimboot</code> to wait for a keypress before booting Windows, to give you a further opportunity to observe any messages that may be displayed.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
If you are unable to resolve your problem, then you can <a href="/contact" class="wikilink1" title="contact">contact</a> the iPXE developers and other iPXE users.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- ......... wikipage stop ......... -->
|
||||
</div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
||||
|
||||
|
||||
<!-- footer -->
|
||||
<div class="stylefoot">
|
||||
|
||||
|
||||
<div class="bar" id="bar__bottom">
|
||||
<!-- page metadata -->
|
||||
<div class="meta">
|
||||
<div class="doc">
|
||||
<bdi>wimboot.txt</bdi> · Last modified: 2021/04/30 11:01 by <bdi>mcb30</bdi> </div>
|
||||
</div>
|
||||
|
||||
<!-- page actions -->
|
||||
<div class="bar-left" id="bar__bottomleft">
|
||||
<form class="button btn_login" method="get" action="/wimboot"><div class="no"><input type="hidden" name="do" value="login" /><input type="hidden" name="sectok" value="" /><button type="submit" title="Log In">Log In</button></div></form> </div>
|
||||
|
||||
<!-- search form -->
|
||||
<div class="bar-right" id="bar__bottomright">
|
||||
<div class="searchbox">
|
||||
<form action="/start" method="get" role="search" class="search doku_form" id="dw__search" accept-charset="utf-8"><input type="hidden" name="do" value="search" /><input type="hidden" name="id" value="wimboot" /><div class="no"><input name="q" type="text" class="edit" title="[F]" accesskey="f" placeholder="Search" autocomplete="on" id="qsearch__in" value="" /><button value="1" type="submit" title="Search">Search</button><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form> </div>
|
||||
</div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="footerinc">
|
||||
|
||||
<a href="/feed.php" title="Recent changes RSS feed"><img src="/lib/tpl/doogiestpl/images/button-rss.png" width="80" height="15" alt="Recent changes RSS feed" /></a>
|
||||
|
||||
<a href="http://creativecommons.org/licenses/by-sa/4.0/" rel="license"><img src="/lib/images/license/button/cc-by-sa.png" alt="CC Attribution-Share Alike 4.0 International" /></a>
|
||||
<a href="https://dokuwiki.org/" title="Driven by DokuWiki"><img src="/lib/tpl/doogiestpl/images/button-dw.png" width="80" height="15" alt="Driven by DokuWiki" /></a>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<!-- mcb30 - added CC attribution footer -->
|
||||
<div class="dokuwiki">
|
||||
<div class="meta">
|
||||
<div class="doc">
|
||||
All uses of this content must include an attribution to the iPXE
|
||||
project and the URL https://ipxe.org
|
||||
</div>
|
||||
<div class="doc">
|
||||
References to "iPXE" may not be altered or removed.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="no">
|
||||
<img src="/lib/exe/indexer.php?id=wimboot&1681392702" width="2" height="1" alt="" /></div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
echo "Generating PXE Menu..."
|
||||
cat ./resources/default-full | \
|
||||
sed -e "s/__NFSSERVERIP__/${NFSSERVERIP}/g" \
|
||||
-e "s/__MENUTITLE__/${MENUTUTLE}/g" \
|
||||
-e "s/__MENUBACKGROUND__/${MENUBACKGROUND}/g" > ${TFTP}/pxelinux.cfg/default
|
||||
|
||||
./configure-debian-system.sh
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
echo "Generating PXE Menu..."
|
||||
cat ./resources/default-minimal | \
|
||||
sed -e "s/__NFSSERVERIP__/${NFSSERVERIP}/g" \
|
||||
-e "s/__MENUTITLE__/${MENUTUTLE}/g" \
|
||||
-e "s/__MENUBACKGROUND__/${MENUBACKGROUND}/g" > ${TFTP}/pxelinux.cfg/default
|
||||
|
||||
./configure-debian-system.sh
|
||||
Executable
+3
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
apt install -y git tftpd-hpa nfs-kernel-server lighttpd ipxe pxelinux syslinux syslinux-common sudo p7zip p7zip-full
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 407 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.3 MiB |
@@ -0,0 +1,212 @@
|
||||
rootprompt 0
|
||||
path bios/
|
||||
default bios/vesamenu.c32
|
||||
TIMEOUT 300
|
||||
|
||||
MENU TITLE __MENUTITLE__
|
||||
MENU BACKGROUND __MENUBACKGROUND__
|
||||
MENU ROWS 15
|
||||
MENU TABMSGROW 20
|
||||
MENU TIMEOUTROW 22
|
||||
|
||||
LABEL disk0
|
||||
localboot 0
|
||||
MENU LABEL Starte von lokaler Platte (Default)
|
||||
|
||||
label -
|
||||
MENU LABEL Live-Systeme: --------------------------
|
||||
MENU DISABLE
|
||||
|
||||
LABEL knx
|
||||
MENU LABEL * Knoppix 9.1 Live, Grafisch, 32Bit
|
||||
KERNEL free/knx/boot/isolinux/linux
|
||||
APPEND nfsdir=__NFSSERVERIP__:/srv/tftp/free/knx nodhcp lang=de ramdisk_size=100000 init=/sbin/init apm=power-off nomce loglevel=1 initrd=free/knx/boot/isolinux/miniroot.gz libata.force=noncq tz=europe/Berlin hpsa.hpsa_allow_any=1 BOOT_IMAGE=knoppix
|
||||
|
||||
MENU BEGIN
|
||||
MENU LABEL * Weitere Optionen...
|
||||
|
||||
LABEL knx
|
||||
MENU LABEL * Knoppix 9.1 Live, Textmodus, 32Bit
|
||||
KERNEL free/knx/boot/isolinux/linux
|
||||
APPEND nfsdir=__NFSSERVERIP__:/srv/tftp/free/knx nodhcp lang=de ramdisk_size=100000 init=/sbin/init apm=power-off nomce loglevel=1 initrd=free/knx/boot/isolinux/miniroot.gz libata.force=noncq tz=Europe/Berlin hpsa.hpsa_allow_any=1 BOOT_IMAGE=knoppix 2
|
||||
|
||||
LABEL slitazfull
|
||||
MENU LABEL * Slitaz Linux Live, Grafisch
|
||||
linux slitaz/boot/bzImage
|
||||
APPEND initrd=slitaz/boot/rootfs4.gz,slitaz/boot/rootfs3.gz,slitaz/boot/rootfs2.gz,slitaz/boot/rootfs1.gz root=/dev/null video=-32 autologin kbd lang=de_DE kmap=de-latin1 tz=Europe/Berlin
|
||||
|
||||
LABEL slitazcore
|
||||
MENU LABEL * Slitaz Linux Live, minimal
|
||||
linux slitaz/boot/bzImage
|
||||
APPEND initrd=slitaz/boot/rootfs4.gz root=/dev/null video=-32 autologin kbd lang=de_DE kmap=de-latin1 tz=Europe/Berlin
|
||||
|
||||
LABEL slitazf
|
||||
MENU LABEL * Slitaz Linux Floppyimage
|
||||
kernel memdisk
|
||||
append initrd=img/floppy-grub4dos
|
||||
|
||||
LABEL zurueck...
|
||||
MENU EXIT
|
||||
MENU END
|
||||
|
||||
label -
|
||||
MENU LABEL Backup & Restore: ----------------------
|
||||
MENU DISABLE
|
||||
|
||||
LABEL rescue
|
||||
MENU LABEL * Rescuezilla Live
|
||||
kernel free/rz/casper/vmlinuz
|
||||
APPEND initrd=free/rz/casper/initrd.lz netboot=nfs root=/dev/nfs ramdisk_size=1500000 ip=dhcp nfsroot=__NFSSERVERIP__:/srv/tftp/free/rz/ boot=casper locale=de_DE keyboard-configuration/layoutcode=de bootkbd=de console-setup/layoutcode=de quiet
|
||||
|
||||
MENU BEGIN
|
||||
MENU LABEL * Weitere Optionen...
|
||||
|
||||
LABEL rescue2
|
||||
MENU LABEL * Rescuezilla Live Fail-Safe
|
||||
kernel free/rz/casper/vmlinuz
|
||||
APPEND initrd=free/rz/casper/initrd.lz netboot=nfs root=/dev/nfs ramdisk_size=1500000 ip=dhcp nfsroot=__NFSSERVERIP__:/srv/tftp/free/rz/ boot=casper locale=de_DE keyboard-configuration/layoutcode=de bootkbd=de console-setup/layoutcode=de xforcevesa nomodeset vga=791 quiet
|
||||
|
||||
LABEL cz
|
||||
MENU LABEL * Clonezilla Live (Ramdisk)
|
||||
KERNEL free/cz/live/vmlinuz
|
||||
APPEND initrd=free/cz/live/initrd.img boot=live username=user union=overlay config components noswap edd=on nomodeset nodmraid locales=de_DE.UTF-8 keyboard-layouts=de-latin-1 ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt fetch=tftp://__NFSSERVERIP__/free/cz/live/filesystem.squashfs quiet
|
||||
|
||||
LABEL acr18
|
||||
MENU LABEL * Acronis True Image Home 2018
|
||||
LINUX memdisk
|
||||
INITRD non-free/acronis/acronis2018.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL acr14
|
||||
MENU LABEL * Acronis True Image Home 2014
|
||||
LINUX memdisk
|
||||
INITRD non-free/acronis/acronis2014.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL acr11
|
||||
MENU LABEL * Acronis True Image Home 2011
|
||||
LINUX memdisk
|
||||
INITRD non-free/acronis/acronis2011.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL acr10
|
||||
MENU LABEL * Acronis True Image 2010
|
||||
LINUX memdisk
|
||||
INITRD non-free/acronis/acronis2010.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL acr09
|
||||
MENU LABEL * Acronis True Image 2009
|
||||
LINUX memdisk
|
||||
INITRD non-free/acronis/acronis2009.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL zurueck...
|
||||
MENU EXIT
|
||||
MENU END
|
||||
|
||||
label -
|
||||
MENU LABEL Installer: ------------------------------
|
||||
MENU DISABLE
|
||||
|
||||
MENU BEGIN
|
||||
MENU LABEL * Linux Installer...
|
||||
|
||||
LABEL deb12
|
||||
MENU LABEL * Debian 12 Installer 64Bit Textmodus
|
||||
CONFIG free/deb-bookworm/debian-installer/amd64/pxelinux.cfg/default
|
||||
APPEND free/deb-bookworm/
|
||||
LABEL deb12
|
||||
MENU LABEL * Debian 12 Installer 32Bit Textmodus
|
||||
CONFIG free/deb-bookworm/debian-installer/i386/pxelinux.cfg/default
|
||||
APPEND free/deb-bookworm/
|
||||
|
||||
LABEL deb11
|
||||
MENU LABEL * Debian 11 Installer 64Bit Textmodus
|
||||
CONFIG free/deb-bullseye/debian-installer/amd64/pxelinux.cfg/default
|
||||
APPEND free/deb-bullseye/
|
||||
LABEL deb11
|
||||
MENU LABEL * Debian 11 Installer 32Bit Textmodus
|
||||
CONFIG free/deb-bullseye/debian-installer/i386/pxelinux.cfg/default
|
||||
APPEND free/deb-bullseye/
|
||||
|
||||
LABEL zurueck...
|
||||
MENU EXIT
|
||||
MENU END
|
||||
|
||||
MENU BEGIN
|
||||
MENU LABEL * Windows Installer...
|
||||
|
||||
LABEL win10
|
||||
MENU LABEL * Windows 10
|
||||
KERNEL memdisk
|
||||
INITRD non-free/windows/winpe.iso
|
||||
APPEND iso raw
|
||||
|
||||
LABEL win10
|
||||
MENU LABEL * Windows 10 iPXE Test
|
||||
KERNEL ipxe.lkrn
|
||||
APPEND dhcp && chain non-free/wimboot.ipxe
|
||||
|
||||
LABEL zurueck...
|
||||
MENU EXIT
|
||||
MENU END
|
||||
|
||||
label -
|
||||
MENU LABEL Boot- & System-Tools: --------------------
|
||||
MENU DISABLE
|
||||
|
||||
LABEL hdt
|
||||
MENU LABEL * Hardware Erkennung
|
||||
COM32 bios/hdt.c32
|
||||
|
||||
LABEL memtestpl
|
||||
MENU LABEL * Memtest86+
|
||||
kernel free/memtest86+
|
||||
|
||||
MENU BEGIN
|
||||
MENU LABEL * Weitere Optionen...
|
||||
|
||||
label sbm
|
||||
MENU LABEL * Smart Boot Manager
|
||||
kernel memdisk
|
||||
append initrd=free/sbm.imz
|
||||
|
||||
LABEL plop
|
||||
MENU LABEL * PloP Boot Manager
|
||||
kernel free/plop.exe
|
||||
|
||||
LABEL ipxe
|
||||
MENU LABEL * iPXE Shell
|
||||
KERNEL ipxe.lkrn dhcp && shell
|
||||
|
||||
LABEL memtest
|
||||
MENU LABEL * Memtest86
|
||||
kernel free/memtest86
|
||||
|
||||
LABEL fdos
|
||||
MENU LABEL * iPXE FreeDOS Live-CD
|
||||
KERNEL ipxe.lkrn dhcp && sanboot http://__NFSSERVERIP__/free/FD13LIVE.iso
|
||||
|
||||
LABEL fdos
|
||||
MENU LABEL * FreeDOS Bootdisk
|
||||
KERNEL memdisk
|
||||
APPEND initrd=free/FD13BOOT.img
|
||||
|
||||
label win98
|
||||
MENU LABEL * Windows 98 Bootdisk (DOS 7)
|
||||
kernel memdisk
|
||||
append initrd=non-free/win98.img
|
||||
|
||||
label ether
|
||||
MENU LABEL * Etherboot
|
||||
kernel memdisk
|
||||
append initrd=free/ether.img
|
||||
|
||||
LABEL zurueck...
|
||||
MENU EXIT
|
||||
MENU END
|
||||
|
||||
# interessante optionen...
|
||||
# rescuezilla: APPEND initrd=rescue/initrd.lz boot=live noswap fetch=tftp://__NFSSERVERIP__:/rescue/filesystem.squashfs toram ---
|
||||
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
rootprompt 0
|
||||
path bios
|
||||
default bios/vesamenu.c32
|
||||
TIMEOUT 300
|
||||
|
||||
MENU TITLE PXE __MENUTITLE__
|
||||
MENU BACKGROUND __MENUBACKGROUND__
|
||||
|
||||
LABEL disk0
|
||||
localboot 0
|
||||
MENU LABEL Boot from first Harddisk
|
||||
|
||||
LABEL -
|
||||
MENU LABEL --------------------------
|
||||
|
||||
LABEL ipxe
|
||||
MENU LABEL * iPXE Shell
|
||||
KERNEL ipxe.lkrn dhcp && shell
|
||||
|
||||
LABEL demo
|
||||
MENU LABEL * iPXE Demonstration
|
||||
KERNEL ipxe.lkrn dhcp && chain http://boot.ipxe.org/demo/boot.php
|
||||
|
||||
LABEL fdos
|
||||
MENU LABEL * iPXE FreeDOS over HTTP and Internet
|
||||
KERNEL ipxe.lkrn dhcp && sanboot http://boot.ipxe.org/freedos/fdfullcd.iso
|
||||
|
||||
LABEL fdos
|
||||
MENU LABEL * iPXE FreeDOS over HTTP Local Server
|
||||
KERNEL ipxe.lkrn dhcp && sanboot http://__NFSSERVERIP__/free/FD13LIVE.iso
|
||||
@@ -0,0 +1,11 @@
|
||||
# /etc/exports: the access control list for filesystems which may be exported
|
||||
# to NFS clients. See exports(5).
|
||||
#
|
||||
# Example for NFSv2 and NFSv3:
|
||||
# /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
|
||||
#
|
||||
# Example for NFSv4:
|
||||
# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
|
||||
# /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check)
|
||||
#
|
||||
/srv/tftp *(ro,nohide,no_root_squash,no_subtree_check,insecure)
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 297 KiB |
Binary file not shown.
@@ -0,0 +1,55 @@
|
||||
server.modules = (
|
||||
"mod_indexfile",
|
||||
"mod_access",
|
||||
"mod_alias",
|
||||
"mod_redirect",
|
||||
)
|
||||
|
||||
server.document-root = "/srv/tftp"
|
||||
server.upload-dirs = ( "/var/cache/lighttpd/uploads" )
|
||||
server.errorlog = "/var/log/lighttpd/error.log"
|
||||
server.pid-file = "/run/lighttpd.pid"
|
||||
server.username = "www-data"
|
||||
server.groupname = "www-data"
|
||||
server.port = 80
|
||||
dir-listing.activate = "enable"
|
||||
|
||||
# features
|
||||
#https://redmine.lighttpd.net/projects/lighttpd/wiki/Server_feature-flagsDetails
|
||||
server.feature-flags += ("server.h2proto" => "enable")
|
||||
server.feature-flags += ("server.h2c" => "enable")
|
||||
server.feature-flags += ("server.graceful-shutdown-timeout" => 5)
|
||||
#server.feature-flags += ("server.graceful-restart-bg" => "enable")
|
||||
|
||||
# strict parsing and normalization of URL for consistency and security
|
||||
# https://redmine.lighttpd.net/projects/lighttpd/wiki/Server_http-parseoptsDetails
|
||||
# (might need to explicitly set "url-path-2f-decode" = "disable"
|
||||
# if a specific application is encoding URLs inside url-path)
|
||||
server.http-parseopts = (
|
||||
"header-strict" => "enable",# default
|
||||
"host-strict" => "enable",# default
|
||||
"host-normalize" => "enable",# default
|
||||
"url-normalize-unreserved"=> "enable",# recommended highly
|
||||
"url-normalize-required" => "enable",# recommended
|
||||
"url-ctrls-reject" => "enable",# recommended
|
||||
"url-path-2f-decode" => "enable",# recommended highly (unless breaks app)
|
||||
#"url-path-2f-reject" => "enable",
|
||||
"url-path-dotseg-remove" => "enable",# recommended highly (unless breaks app)
|
||||
#"url-path-dotseg-reject" => "enable",
|
||||
#"url-query-20-plus" => "enable",# consistency in query string
|
||||
)
|
||||
|
||||
index-file.names = ( "index.php", "index.html" )
|
||||
url.access-deny = ( "~", ".inc" )
|
||||
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
|
||||
|
||||
# default listening port for IPv6 falls back to the IPv4 port
|
||||
include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
|
||||
include_shell "/usr/share/lighttpd/create-mime.conf.pl"
|
||||
include "/etc/lighttpd/conf-enabled/*.conf"
|
||||
|
||||
#server.compat-module-load = "disable"
|
||||
server.modules += (
|
||||
"mod_dirlisting",
|
||||
"mod_staticfile",
|
||||
)
|
||||
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 276 KiB |
@@ -0,0 +1,16 @@
|
||||
[global]
|
||||
workgroup = PXE
|
||||
map to guest = bad user
|
||||
usershare allow guests = yes
|
||||
|
||||
[tftp]
|
||||
browsable = true
|
||||
read only = yes
|
||||
guest ok = yes
|
||||
path = /srv/tftp
|
||||
|
||||
[windows]
|
||||
browsable = true
|
||||
read only = yes
|
||||
guest ok = yes
|
||||
path = /srv/tftp/non-free/windows
|
||||
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
@@ -0,0 +1,14 @@
|
||||
# create new
|
||||
|
||||
# if you set some devices, add <target>-</target> and set the same way with follows
|
||||
# naming rule : [ iqn.(year)-(month).(reverse of domain name):(any name you like) ]
|
||||
|
||||
<target iqn.1975-11.tld.ostrach:win10dvd>
|
||||
# provided devicce as a iSCSI target
|
||||
backing-store /root/pxe-bootserver/temp/Windows10_21H2_2021-11-18.iso
|
||||
# iSCSI Initiator's IQN you allow to connect
|
||||
#initiator-name iqn.2021-08.world.srv:node01.initiator01
|
||||
# authentication info ( set anyone you like for "username", "password" )
|
||||
#incominguser username password
|
||||
</target>
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
#!ipxe
|
||||
prompt --key 0x02 --timeout 2000 Press Ctrl-B for the iPXE command line... && shell ||
|
||||
|
||||
set keep-san 1
|
||||
sanhook http://192.168.75.3/non-free/windows
|
||||
|
||||
kernel free/wimboot
|
||||
initrd boot/bcd BCD
|
||||
initrd boot/boot.sdi boot.sdi
|
||||
initrd http://192.168.75.3/non-free/windows/sources/boot.wim boot.wim
|
||||
boot
|
||||
@@ -0,0 +1,14 @@
|
||||
@echo off
|
||||
|
||||
echo Init Network...
|
||||
wpeinit
|
||||
|
||||
echo Mount CIFS-Share with Windows 10 DVD...
|
||||
net use z: \\__NFSSERVERIP__\windows
|
||||
z:
|
||||
|
||||
echo Start Windows Setup...
|
||||
setup.exe
|
||||
|
||||
pause
|
||||
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/sh
|
||||
|
||||
. ./settings.sh
|
||||
|
||||
# 1. install needed debian packages:
|
||||
./install-debian-packages.sh
|
||||
|
||||
# 2. configure debian system
|
||||
./configure-debian-system.sh
|
||||
|
||||
# 3. configure full system menu
|
||||
./generate-full-menu.sh
|
||||
#./generate-minimal-menu.sh
|
||||
|
||||
# 4. download free stuff (knoppix...)
|
||||
./download-free.sh
|
||||
|
||||
# 5. download windows stuff
|
||||
./configure-windows-pxeboot.sh
|
||||
|
||||
# 6. rerun some settings...
|
||||
./configure-debian-system.sh
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
TFTP=/srv/tftp
|
||||
NFSSERVERIP=192.168.75.3
|
||||
|
||||
MENUTUTLE="Sample Title Text"
|
||||
MENUBACKGROUND="splash.png"
|
||||
|
||||
USERID=technik
|
||||
GROUPID=technik
|
||||
@@ -0,0 +1,27 @@
|
||||
# To Do...
|
||||
|
||||
* Modular pxelinux menu:
|
||||
* split menu in parts: Knoppix, Rescuezilla, Acronis, etc.
|
||||
* use settings.sh as configuration file, e.g. MENU_KNOPPIX=YES or MENU_NON-FREE=NO
|
||||
* create template files in ./resources: menu-knoppix.cfg, menu-rescuezilla.cfg
|
||||
* use INCLUDE command if possible https://wiki.syslinux.org/wiki/index.php?title=Menu#INCLUDE
|
||||
* read settings.sh and parse templates to fill in variables
|
||||
|
||||
|
||||
* iSCSI Target:
|
||||
* apt install tgt
|
||||
* zless /usr/share/doc/tgt/README.iscsi.gz
|
||||
* tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2020-11.tld.ostrach:target1
|
||||
* tgtadm --lld iscsi --op show --mode target
|
||||
* tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/hdc1
|
||||
* tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL
|
||||
|
||||
* https://www.server-world.info/en/note?os=Debian_11&p=iscsi&f=2
|
||||
* http://etherboot.org/wiki/sanboot
|
||||
* https://ipxe.org/howto/winpe
|
||||
|
||||
1. install tgt
|
||||
2. parse settings.sh and create tgt config files to:
|
||||
3. a Windows 10 DVD target (.iso under /srv/tftp/non-free/windows10.iso)
|
||||
|
||||
Remeber: Check if a iSCSI Tape-Target could be used to trick a Tape Backup Software to use HardDisks as Tapes
|
||||
Reference in New Issue
Block a user