You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _posts/2025-04-14-Cobbler-v3.3.7-Windows-Deployment-Guide.md
+15-17Lines changed: 15 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,9 +20,9 @@ Starting where the [Beginner's guide](/blog/2024/Cobbler-v3.3.6-Beginners-Guide/
20
20
21
21
### Caveats
22
22
23
-
1.**IMPORTANT:** There was a frequent issue on PXE clients using VirtualBox UEFI firmware. For this reason, it is recommended to run both Cobbler server and PXE client as either bare metal systems or [VMWare Workstation/Fusion](https://blogs.vmware.com/workstation/2024/05/vmware-workstation-pro-now-available-free-for-personal-use.html) or [HyperV](https://learn.microsoft.com/en-us/windows-server/virtualization/hyper-v/hyper-v-overview) VMs for UEFI installations.
23
+
1.**IMPORTANT:** There was a frequent issue on PXE clients using VirtualBox EFI firmware. For this reason, it is recommended to run both Cobbler server and PXE client as either bare metal systems or [VMWare Workstation/Fusion](https://blogs.vmware.com/workstation/2024/05/vmware-workstation-pro-now-available-free-for-personal-use.html) or [HyperV](https://learn.microsoft.com/en-us/windows-server/virtualization/hyper-v/hyper-v-overview) VMs for UEFI installations.
24
24
25
-
- You may experience different results depending on your Windows or VirtualBox version and settings; more info in the **Tips & Troubleshooting** section below
25
+
- You may experience different results depending on your hardware and Windows or VirtualBox versions and settings; more info in the **Tips & Troubleshooting** section below
26
26
27
27
1. This guide assumes you have already acquired the Windows 10 and 11 64-bit ISO installation files by using the [Windows 10](https://www.microsoft.com/en-us/software-download/windows10) and [Windows 11](https://www.microsoft.com/en-us/software-download/windows11) Media Creation Tool
28
28
@@ -135,15 +135,15 @@ mount -o ro,loop ~/Downloads/Win10_22H2_English_x64.iso /mnt/Windows10
135
135
cobbler import --name Win10 --path /mnt/Windows10
136
136
```
137
137
138
-
**Optional:***If* the PXE client will use legacy-BIOS firmware *(MBR partition scheme)*instead of UEFI, toggle `uefi` to `false` in the Cobbler Profile autoinstallation metadata:
138
+
**Optional:***If* the PXE client will use legacy-BIOS firmware instead of UEFI, toggle `uefi` to `false` in the Cobbler Profile autoinstallation metadata:
> More info in Cobbler's [official docs](https://cobbler.readthedocs.io/en/v3.3.7/user-guide/wingen.html).
145
145
146
-
Finally, create a new Cobbler System to PXE boot and automatically install Windows 10 Pro, replacing the *"aa:bb:cc:dd:ee:ff"* with the MAC address of your PXE client, being sure not to use a duplicate MAC or IP addresse of any other Cobbler System, then sync up Cobbler.
146
+
Finally, create a new Cobbler System to PXE boot and automatically install Windows 10 Pro, replacing the *"aa:bb:cc:dd:ee:ff"* with the MAC address of your PXE client, being sure not to use a duplicate MAC addresse of any other Cobbler System, then sync up Cobbler.
@@ -156,9 +156,7 @@ The **PXE Client** VM can now be powered on, and should automatically boot to PX
156
156
157
157
## Windows 11 PXE Deployment
158
158
159
-
First use the following commands to edit the `startnet.template` file in order to bypass Windows 11 hardware requirements for the PXE client.
160
-
161
-
- note that `unix2dos` will properly terminate the lines of text individually.
159
+
**Optional:***If* installing Windows 11 on unsupported hardware, use the following commands to edit the `startnet.template` file in order to bypass hardware requirements for the PXE client.
@@ -192,17 +190,15 @@ The **PXE Client** VM can now be powered on, and should automatically boot to PX
192
190
193
191
- Cobbler has 3 main templates for Windows distro management, all located in `/etc/cobbler/windows` directory, instead of the usual `/var/lib/cobbler/templates` and `/var/lib/cobbler/scripts` directories
194
192
195
-
-`startnet.template`: archived/compressed into the WindPE Windows image (loaded from PXE) in order to start Windows `setup.exe` with the associated Answerfile
193
+
-`startnet.template`: Generates "startnet.cmd" which gets archived/compressed into the WinPE Windows image (loaded from PXE) in order to start `setup.exe` on the PXE client with the associated Answerfile
196
194
197
-
-`answerfile.template`: Answerfile with **profile** attributes to be retrieved over SMB for unattended installations.
195
+
-`answerfile.template`: Generates "autounattended.xml" answerfile with **profile** attributes to be retrieved over SMB by PXE clients for unattended installations.
198
196
199
-
-`post_ins_cmd.template`: Used in the Answerfile to retrieve the `autoinstall` file (post-install script) defined for the **profile**
197
+
-`post_ins_cmd.template`: Generates "post_install.cmd" which is used in the Answerfile to retrieve the `autoinstall` file (post-install script) defined for the **profile**
200
198
201
199
- By default, the autoinstall file (post-install script) `/var/lib/cobbler/templates/win.ks` has no effect.
202
200
203
-
- The above templates are generated based on the automatic installation metadata for **profiles** which define the parameters for the boot options, answerfile, and post-install script *(as well as toggle UEFI partitioning mode in answerfiles and change PXE clients to download boot files over TFTP instead of HTTP)*
204
-
205
-
- The `autoinstall-meta` parameters can be configured at the `cobbler system` (or `profile`) level and given unique names to generate different files for use by diffrent profiles or systems, but neither the `answerfile.template` or `post_inst_cmd.template` files are system-level aware, they only consist of **profile-level** settings.
201
+
- The `autoinstall-meta` parameters *(used to specify the boot files as well as above answerfile and post_install templates, as well as set firmware/partitioning mode and download method)* can be configured at the `cobbler system` (or `profile`) level and given unique names to generate different files for use by diffrent profiles or systems, but neither the `answerfile.template` or `post_inst_cmd.template` files are system-level aware, they only consist of **profile-level** settings.
206
202
207
203
- There is no way to provide the Windows Answerfile in boot/kernel parameters like many linux distros
208
204
@@ -214,7 +210,7 @@ The **PXE Client** VM can now be powered on, and should automatically boot to PX
214
210
215
211
1.**VirtualBox Issues**
216
212
217
-
- Specifially, the `ipxe-x86_64.efi` bootloader would fail to "initialize devices" and even though using the `ipxe-snponly-x86_64.efi` bootloader instead would load properly, the PXE client VM would *usually* just hang when downloading on of the WinPE files (i.e. `wimboot`, `boot.sdi`, `bootmgr.exe`, `bcd`, `winpe.wim`)
213
+
- Specifially, the `ipxe-x86_64.efi` bootloader would fail to "initialize devices" and even though using the `ipxe-snponly-x86_64.efi` bootloader would load properly, the PXE client VM would *usually* just hang when downloading one of the WinPE files (i.e. `wimboot`, `boot.sdi`, `bootmgr.exe`, `bcd`, `winpe.wim`)
218
214
219
215
- Tried several troubleshooting steps and could not get a consistent fix:
220
216
@@ -226,11 +222,13 @@ The **PXE Client** VM can now be powered on, and should automatically boot to PX
226
222
227
223
- Tried installing the appropriate VirtualBox Extensions for my version of VB.
228
224
229
-
- Disabled Memory Isolation in Windows Security on VirtualBox Host.
225
+
- Disabled Memory Isolation in Windows Security (and other security options) on VirtualBox Host.
230
226
231
227
- Tried with and without "Virtual Machine Platform" and "Windows Hypervisor Platform" Windows Features installed/enabled.
228
+
229
+
- Tried compiling latest and previous versions of ipxe.efi (snp, intel, realtek, etc...) bootloader from source
232
230
233
-
- Found no relevant entries/errors in VirtualBox VM logs and nothing abnormal in Cobbler server logs (HTTP, TFTP, DHCP).
231
+
- Found no relevant entries/errors in VirtualBox VM logs *(debug logs enabled)* or Windows Event Viewer and nothing abnormal in Cobbler server logs (HTTP, TFTP, DHCP).
234
232
235
233
- A live Windows 10 installation can be easily converted from MBR (legacy-BIOS) to GPT (UEFI) via powershell commands, which can be used as a workaround for compatibility with VirtualBox UEFI firmware
236
234
@@ -243,7 +241,7 @@ The **PXE Client** VM can now be powered on, and should automatically boot to PX
243
241
244
242
- After reading through the manpage (`man smb.conf`) and trying several different configurations the problem persisted
245
243
246
-
- Make the following edit to the `startnet.template` file to account for this occasional unresponsiveness/lag from the SMB server when booting into setup by first probing the SMB share until it responds.
244
+
- Make the following edit to the `startnet.template` file to account for this occasional unresponsiveness/lag from the SMB server by first enumerating the SMB share until it responds.
0 commit comments