Trouble with Windows 8.1 image using Host Reg Bypass
-
Using Fog 1.2.0 on Linux Mint 17.1 everything has been working perfectly up until this point. I know this isn’t an official feature (even though i would love it to be) but I am running into some trouble using the Host Registration Bypass.
All of our Windows 7 images with Single disk resizable images it seem to work fine but I am trying to add a Windows 8.1 image that uses a single disk multi partition non resizable image and i get the error “Unable to locate image file for Windows 7/8 (sys.img.000)” I made what seems like the correct changes and tried a few different configurations to the advanced menu but always with the same result. I can pull this image down if i register a host and image normally however. Any help would be appreciated.
Here is a copy of my advanced PXE menu. The Windows 8 image in question is IMG4 listed below.
:MENU menu item --gap Please Select one of the images below item fog.local Boot from hard disk item img1 <Win7 64 Bit Production 3.2> item img2 <Public Health Win7 64 Bit Production 2.8> item img3 <Win7 64 Bit Laptop 3.2> item img4 <Win8.1 Test> item return Return to main menu choose --default fog.local target && goto ${target} :fog.local sanboot --no-describe --drive 0x80 || goto MENU :img1 kernel bzImage root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=192.168.0.1 web=${fog-ip}/fog/ consoleblank=0 loglevel=4 type=down img=WIN764PRODV3272715 ftp=${fog-ip} imgType=n osid=5 storage=${fog-ip}:/images capone=1 imgFormat=0 imgfetch init.xz boot || goto MENU :img2 kernel bzImage root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=192.168.0.1 web=${fog-ip}/fog/ consoleblank=0 loglevel=4 type=down img=PH64PRODV282415 ftp=${fog-ip} imgType=n osid=5 storage=${fog-ip}:/images capone=1 imgFormat=0 imgfetch init.xz boot || goto MENU :img3 kernel bzImage root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=192.168.0.1 web=${fog-ip}/fog/ consoleblank=0 loglevel=4 type=down img=WIN764MAKV3272715 ftp=${fog-ip} imgType=n osid=5 storage=${fog-ip}:/images capone=1 imgFormat=0 imgfetch init.xz boot || goto MENU :img4 kernel bzImage root=/dev/ram0 rw ramdisk_size=127000 ip=dhcp dns=192.168.0.1 web=${fog-ip}/fog/ consoleblank=0 loglevel=4 type=down img=81Sysprep ftp=${fog-ip} imgType=n osid=7 storage=${fog-ip}:/images capone=1 imgFormat=2 imgfetch init.xz boot || goto MENU :return chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} || goto MENU autoboot```
-
“host registration bypass” ? For what, to image without registering? You can do that with the Capone plugin. it’s available in 1.2.0.
In FOG Trunk (see link below), the Capone plugin is made obsolete by the “quick image” feature. You may choose to “quick image” from the boot menu - if the host is registered or not - and then choose the image you want to use.
-
Thank you for that. I will give this a try on my test setup and report back.
-
Well unfortunately when I loaded Trunk on my test setup it caused the fog DHCP server to stop functioning. I am going to start over on the test machine.
-
@Paul-Freeman said:
Well unfortunately when I loaded Trunk on my test setup it caused the fog DHCP server to stop functioning. I am going to start over on the test machine.
Or you can ask for help?
FOG Trunk will eventually be FOG 1.3.0 and you’ll either move to it when it’s released or be stuck on 1.2.0 forever or just use some other imaging solution - I’m indifferent with what you choose, but your decision to fleet away from trunk was quick and a snap decision - especially when there are people here that are willing to help.
If FOG Trunk doesn’t work for you, the @Developers need to know what happened and why.
When you run the trunk installer, run it like this:
./installfog.sh --help
There are now arguments for the installer, you’ll also notice the DHCP arguments.
-
I am going to take the opportunity to setup the test server on a VM so I can make the rollback process easier. Once i get this setup I will try again and request help.
My production setup does not utilize the FOG DHCP service and i unfortunately do not have the resources to emulate prod so there wont be an issue related to DHCP on my production machine.
-
Ok I now have my test setup on a Virtualbox host with all of the same settings I was using on the physical machine and this time the update to trunk has no problems at all. I am able to PXE boot using my test machine.
It was not my intention to suggest that I will not be using Trunk or attempting to update to the latest and greatest. During this “test” I realized i could improve my methods a little. In the future I will be sure to report problems with my tests and try to work through them with the experts rather than just starting over off the bat.
I am going to test the functionality of my original posted question and I will report back.
-
Looks like i spoke too soon. Immediately after installing trunk everything was working fine. I then shutdown the VM to create a snapshot and rebooted and now the DHCP service will not start (automatically or manually).
This is what i get when trying to start the service.
eud@FOGVM ~/Desktop $ sudo /etc/init.d/isc-dhcp-server start dhcpd self-test failed. Please fix /etc/dhcp/dhcpd.conf. The error was: Internet Systems Consortium DHCP Server 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ /etc/dhcp/dhcpd.conf line 0: expecting a parameter or declaration # Code ^ /etc/dhcp/dhcpd.conf line 17: no option space named PXE. option PXE.mtftp-ip ^ /etc/dhcp/dhcpd.conf line 18: no option space named PXE. option PXE.mtftp-cport ^ /etc/dhcp/dhcpd.conf line 19: no option space named PXE. option PXE.mtftp-sport ^ /etc/dhcp/dhcpd.conf line 20: no option space named PXE. option PXE.mtftp-tmout ^ /etc/dhcp/dhcpd.conf line 21: no option space named PXE. option PXE.mtftp-delay ^ /etc/dhcp/dhcpd.conf line 40: semicolon expected. max-lease-time ^ /etc/dhcp/dhcpd.conf line 40: expecting a parameter or declaration max-lease-time 43200; ^ Configuration file errors encountered -- exiting
FOG 1.2.0 Base install dhcpd.conf before trunk update
# DHCP Server Configuration file. # see /usr/share/doc/dhcp*/dhcpd.conf.sample # This file was created by FOG use-host-decl-names on; ddns-update-style interim; ignore client-updates; next-server 192.168.0.2; subnet 192.168.0.0 netmask 255.255.255.0 { option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.0.10 192.168.0.254; default-lease-time 21600; max-lease-time 43200; # option domain-name-servers x.x.x.x; # option routers x.x.x.x; filename "undionly.kpxe"; }
FOG 1.2.0 dhcpd.conf AFTER trunk update
# DHCP Server Configuration file #see /usr/share/doc/dhcp*/dhcpd.conf.sample # This file was created by FOG #Definition of PXE-specific options # Code 1: Multicast IP Address of bootfile # Code 2: UDP Port that client should monitor for MTFTP Responses # Code 3: UDP Port that MTFTP servers are using to listen for MTFTP requests # Code 4: Number of seconds a client must listen for activity before trying # to start a new MTFTP transfer # Code 5: Number of seconds a client must listen before trying to restart # a MTFTP transfer option space PXE; option PXE.mtftp-ip code 1 = ip-address; option PXE.mtftp-cport code 2 = unsigned integer 16; option PXE.mtftp-sport code 3 = unsigned integer 16; option PXE.mtftp-tmout code 4 = unsigned integer 8; option PXE.mtftp-delay code 5 = unsigned integer 8; option arch code 93 = unsigned integer 16; # RFC4578 use-host-decl-names on; ddns-update-style interim; ignore client-updates; next-server 192.168.0.2; # Specify subnet of ether device you do NOT want service. for systems with # two or more ethernet devices. # subnet 136.165.0.0 netmask 255.255.0.0 {} subnet 192.168.0.0 netmask 255.255.255.0 { option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.0.10 192.168.0.254; default-lease-time 21600 max-lease-time 43200; # option domain-name-servers x.x.x.x; # option routers x.x.x.x; filename ; }
-
Can you try updating to latest and try re-running the installer?
-
During installation I received the following error.
Press [Enter] key when database is updated/installed. * Setting up storage..........................................OK * Setting up and starting DHCP Server.........................../lib/common/functions.sh: line 155: 2600:1010:b021:8a9f:e506:70ec:3154:c398: syntax error in expression (error token is ":1010:b021:8a9f:e506:70ec:3154:c398") * Setting up and starting TFTP and PXE Servers................OK
I then checked the status and sure enough DHCP had not started.
eud@FOGVM ~/fogtrunk/bin $ sudo service isc-dhcp-server status isc-dhcp-server stop/waiting eud@FOGVM ~/fogtrunk/bin $ sudo /etc/init.d/isc-dhcp-server start dhcpd self-test failed. Please fix /etc/dhcp/dhcpd.conf. The error was: Internet Systems Consortium DHCP Server 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ /etc/dhcp/dhcpd.conf line 35: expecting numeric value. subnet netmask ^ Configuration file errors encountered -- exiting eud@FOGVM ~/fogtrunk/bin $
-
I’m going to claim this as solved.
Paul and I Teamviewered and I was able to find a couple bugs in the dhcp config creation.
It should now, properly, create the dhcpd.conf file
Part of the issue with the functions error was the interface fog was setup for was incorrect. It seems the OS decided to flop the nics arrangement. Other issues were the config was missing a semicolon, and the bootfilename argument wasn’t being populated. It is now created properly, stored in the fog settings, and can be set by an installer argument of either -b <filename> or --bootfile <filename>.
Hopefully this helps.