• FOG Docker image

    General
    5
    0 Votes
    5 Posts
    641 Views
    C

    @88fingerslukee

    Well mate, you did a wonderfull job 🙂 The only thing that afraid me is maintenance. By not using the fog install script, you have to write your own installer, which could be hard to maintain in the future, i think.

    But to be clear, this is by far the best/cleanest work i’ve seen since a while (and i’ve seen a lot of them) :). I guess you did spent a lot of time on this. If i had found your work earlier, i would have, for sure, worked on it !

  • FOG Secure Boot with Shim

    Tutorials
    18
    2 Votes
    18 Posts
    9k Views
    K

    @jmeyer Good work. So far looks very similar to what I was doing above but with grub instead. I’m guessing you’re aiming for something along the lines of the archived project you mentioned earlier that did this. Make sure you modify your ipxe scripts to load the shim with the shim command, and then sign whatever you’re booting from ipxe and you should be more or less there.

    It’s worth noting if you want you should be able to skip the grub stage entirely, if you load the shim directly and name your ipxe binary what you’re grub binary currently is you should be able to net boot any shim pretty easily, from there the shim can automatically call mok manager as long as it’s in the same directory as your shim.

    Sorry for responding so late. I’m out on training this week.

  • Windows 11 | 65x HP Z2 Tower G1i | UPDATE -

    Unsolved FOG Problems
    136
    0 Votes
    136 Posts
    22k Views
    K

    @Tom-Elliott
    Hi Tom,
    We’re on school holidays in Austria at the moment – I’m not at school right now. At the end of August, I’ll have to install the new image on all the pupils’ PCs. Once that’s done, I’ll be able to start trying things out again. Have a lovely summer, Alexander

  • 0 Votes
    3 Posts
    347 Views
    E

    Hi @Tom-Elliott – thank you for your help! The client is UEFI.

    I probably should have mentioned that the main symptom I’m trying to figure out is the client giving up with PXE-E16: No valid offer received after a few minutes of trying PXE boot.

    Interestingly, when I tried also listening to port 4011 with my initial config file, there was no additional traffic being picked up.

    When I used the version you suggested (with the server’s IP switched in of course), the tcpdump actually no longer shows any responses to the client’s requests, and the PXE boot errors out faster with PXE-E18: Server response timeout.

    tcpdump: listening on eno1, link-type EN10MB (Ethernet), snapshot length 262144 bytes 16:08:07.096920 IP (tos 0x0, ttl 64, id 29391, offset 0, flags [none], proto UDP (17), length 375) 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from <client’s mac address>(oui Unknown), length 347, xid 0x92c2c13c, Flags [Broadcast] Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Discover MSZ (57), length 2: 1472 Parameter-Request (55), length 35: Subnet-Mask (1), Time-Zone (2), Default-Gateway (3), Time-Server (4) IEN-Name-Server (5), Domain-Name-Server (6), Hostname (12), BS (13) Domain-Name (15), RP (17), EP (18), RSZ (22) TTL (23), BR (28), YD (40), YS (41) NTP (42), Vendor-Option (43), Requested-IP (50), Lease-Time (51) Server-ID (54), RN (58), RB (59), Vendor-Class (60) TFTP (66), BF (67), GUID (97), Unknown (128) Unknown (129), Unknown (130), Unknown (131), Unknown (132) Unknown (133), Unknown (134), Unknown (135) GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0 NDI (94), length 3: 1.3.16 ARCH (93), length 2: 7 Vendor-Class (60), length 32: "PXEClient:Arch:00007:UNDI:003016" 16:08:10.881261 IP (tos 0x0, ttl 64, id 29392, offset 0, flags [none], proto UDP (17), length 375) 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from <client’s mac address>(oui Unknown), length 347, xid 0x92c2c13c, secs 4, Flags [Broadcast] Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Discover MSZ (57), length 2: 1472 Parameter-Request (55), length 35: Subnet-Mask (1), Time-Zone (2), Default-Gateway (3), Time-Server (4) IEN-Name-Server (5), Domain-Name-Server (6), Hostname (12), BS (13) Domain-Name (15), RP (17), EP (18), RSZ (22) TTL (23), BR (28), YD (40), YS (41) NTP (42), Vendor-Option (43), Requested-IP (50), Lease-Time (51) Server-ID (54), RN (58), RB (59), Vendor-Class (60) TFTP (66), BF (67), GUID (97), Unknown (128) Unknown (129), Unknown (130), Unknown (131), Unknown (132) Unknown (133), Unknown (134), Unknown (135) GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0 NDI (94), length 3: 1.3.16 ARCH (93), length 2: 7 Vendor-Class (60), length 32: "PXEClient:Arch:00007:UNDI:003016" 16:08:18.968033 IP (tos 0x0, ttl 64, id 29393, offset 0, flags [none], proto UDP (17), length 375) 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from <client’s mac address>(oui Unknown), length 347, xid 0x92c2c13c, secs 12, Flags [Broadcast] Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Discover MSZ (57), length 2: 1472 Parameter-Request (55), length 35: Subnet-Mask (1), Time-Zone (2), Default-Gateway (3), Time-Server (4) IEN-Name-Server (5), Domain-Name-Server (6), Hostname (12), BS (13) Domain-Name (15), RP (17), EP (18), RSZ (22) TTL (23), BR (28), YD (40), YS (41) NTP (42), Vendor-Option (43), Requested-IP (50), Lease-Time (51) Server-ID (54), RN (58), RB (59), Vendor-Class (60) TFTP (66), BF (67), GUID (97), Unknown (128) Unknown (129), Unknown (130), Unknown (131), Unknown (132) Unknown (133), Unknown (134), Unknown (135) GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0 NDI (94), length 3: 1.3.16 ARCH (93), length 2: 7 Vendor-Class (60), length 32: "PXEClient:Arch:00007:UNDI:003016" 16:08:35.140038 IP (tos 0x0, ttl 64, id 29394, offset 0, flags [none], proto UDP (17), length 375) 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from <client’s mac address>(oui Unknown), length 347, xid 0x92c2c13c, secs 28, Flags [Broadcast] Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Discover MSZ (57), length 2: 1472 Parameter-Request (55), length 35: Subnet-Mask (1), Time-Zone (2), Default-Gateway (3), Time-Server (4) IEN-Name-Server (5), Domain-Name-Server (6), Hostname (12), BS (13) Domain-Name (15), RP (17), EP (18), RSZ (22) TTL (23), BR (28), YD (40), YS (41) NTP (42), Vendor-Option (43), Requested-IP (50), Lease-Time (51) Server-ID (54), RN (58), RB (59), Vendor-Class (60) TFTP (66), BF (67), GUID (97), Unknown (128) Unknown (129), Unknown (130), Unknown (131), Unknown (132) Unknown (133), Unknown (134), Unknown (135) GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0 NDI (94), length 3: 1.3.16 ARCH (93), length 2: 7 Vendor-Class (60), length 32: "PXEClient:Arch:00007:UNDI:003016" ^C 4 packets captured 4 packets received by filter 0 packets dropped by kernel

    In case it is informative, my initial config file yields a few cycles of

    cpdump: listening on eno1, link-type EN10MB (Ethernet), snapshot length 262144 bytes 16:25:14.333731 IP (tos 0x0, ttl 64, id 3165, offset 0, flags [none], proto UDP (17), length 375) 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from <client’s mac address>(oui Unknown), length 347, xid 0xf2335aca, Flags [Broadcast] Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Discover MSZ (57), length 2: 1472 Parameter-Request (55), length 35: Subnet-Mask (1), Time-Zone (2), Default-Gateway (3), Time-Server (4) IEN-Name-Server (5), Domain-Name-Server (6), Hostname (12), BS (13) Domain-Name (15), RP (17), EP (18), RSZ (22) TTL (23), BR (28), YD (40), YS (41) NTP (42), Vendor-Option (43), Requested-IP (50), Lease-Time (51) Server-ID (54), RN (58), RB (59), Vendor-Class (60) TFTP (66), BF (67), GUID (97), Unknown (128) Unknown (129), Unknown (130), Unknown (131), Unknown (132) Unknown (133), Unknown (134), Unknown (135) GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0 NDI (94), length 3: 1.3.16 ARCH (93), length 2: 7 Vendor-Class (60), length 32: "PXEClient:Arch:00007:UNDI:003016" 16:25:14.334222 IP (tos 0xc0, ttl 64, id 43055, offset 0, flags [none], proto UDP (17), length 328) CREEDfog.bootps > 255.255.255.255.bootpc: BOOTP/DHCP, Reply, length 300, xid 0xf2335aca, Flags [Broadcast] Server-IP CREEDfog Client-Ethernet-Address <client’s mac address>(oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message (53), length 1: Offer Server-ID (54), length 4: CREEDfog Vendor-Class (60), length 9: "PXEClient" GUID (97), length 17: 0.128.226.9.231.152.246.237.17.132.7.227.255.61.233.42.0
  • FOG 1.6.0-beta.2644 DHCP

    Unsolved FOG Problems
    6
    0 Votes
    6 Posts
    676 Views
    J

    @Tom-Elliott no, i have bypass dhcp configuration during install.

  • Using a dedicated Kea DHCP server

    General
    2
    1 Votes
    2 Posts
    226 Views
    Tom ElliottT

    @Alun Thank you and added to documentation and within the installer to try to more cleanly account for this.

  • Organizations Using FOG

    Pinned General
    113
    0 Votes
    113 Posts
    141k Views
    A

    Organisation Name: Tshwane University of Technology
    Location: South Africa
    Approximate Number of systems: 5000+
    How long: 2017 (though it may be earlier)

  • FOG 1.6.0-beta.2641 - Instalation on Debian 13

    Unsolved Bug Reports
    2
    1 Votes
    2 Posts
    334 Views
    Tom ElliottT

    @Valer Thanks for the report and the writeup, that’s a good catch. You’re right about the cause. Debian 13 dropped the sysv-rc-conf package since it’s fully on systemd now, so the installer chokes trying to apt-get it. We never actually use that tool on a systemd system anyway, it only ever got called on the old non-systemd paths, so it was just dead weight on Trixie.

    I pushed a fix to working-1.6. It leaves the package off the list on Debian 13 and up, and it also strips it out of a cached .fogsettings so an in-place upgrade doesn’t drag it back in. Older Debian keeps installing it like before so nothing changes there.

    If you want to get moving before you pull the update, you can either grab the latest working-1.6 and rerun the installer, or just open /opt/fog/.fogsettings and delete sysv-rc-conf from the packages line, then run the installer again. Either one gets you past it.

    Let me know if you hit anything else on Trixie.

  • FOG 1.6.0-beta.2644

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    128 Views
    No one has replied
  • FOG Resize Fails on Windows 11 Build 28000.2269

    Unsolved FOG Problems
    3
    0 Votes
    3 Posts
    760 Views
    V

    @Tom-Elliott When searching for a solution I recall seeing a related post on GitHub but that was not me. Today I created a new VM that was 70GB with 2GB EFI partition and after sysprep and it yielded the similar resize error during capture.

    I then tried Windows 11 25H2 June 2026 Build 26200.8655 with 60GB VM and it generated the resize error. 25H2 with 60GB VM and 2GB EFI also generated the resize error after sysprep during capture.

    The AI suggested defrag C : /X

    I ran the defrag before sysprep and capture was succesful.

    The pre optimization total fragmentation was 22% and post defragmentation it was also 22%

    To my understanding the /X flag consolidates free space. How was this the solution to my issue?

    Per the FOG Project wiki I found that defrag is recommended before sysprep:

    "…
    Before Running Sysprep
    Other steps to consider are:

    Run Chkdsk /f /p prior to imaging
    Defrag the drive
    Make sure 2gb of disk space is free or the NTFSresize will fail
    Make sure the FOG service is installed and properly configured
    Update your hostnamechange.dll file
    …
    "
    https://wiki.fogproject.org/wiki/index.php/Client_Setup

  • Ubuntu 24.04 shutdown immediately

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    261 Views
    No one has replied
  • 0 Votes
    4 Posts
    967 Views
    V

    @Tom-Elliott yes, I checked the services, they all running.
    systemctl status nfs-server
    â—Ź nfs-server.service - NFS server and services
    Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; preset: enabled)
    Drop-In: /run/systemd/generator/nfs-server.service.d
    └─order-with-mounts.conf
    Active: active (exited) since Tue 2026-06-30 09:06:50 UTC; 17h ago
    Process: 4995 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
    Process: 4997 ExecStart=/usr/sbin/rpc.nfsd (code=exited, status=0/SUCCESS)
    Main PID: 4997 (code=exited, status=0/SUCCESS)
    CPU: 10ms

    Jun 30 09:06:49 fog-svr.local systemd[1]: Starting nfs-server.service - NFS server and services…
    Jun 30 09:06:50 fog-svr.local systemd[1]: Finished nfs-server.service - NFS server and services.

    rpcinfo -p 192.168.13.99
    192.168.13.99 mountd
    rpcinfo -t 192.168.13.99 nfs
    rpcin program vers proto port service
    100000 4 tcp 111 portmapper
    100000 3 tcp 111 portmapper
    100000 2 tcp 111 portmapper
    100000 4 udp 111 portmapper
    100000 3 udp 111 portmapper
    100000 2 udp 111 portmapper
    100024 1 udp 50174 status
    100024 1 tcp 34667 status
    100005 1 tcp 20048 mountd
    100005 2 tcp 20048 mountd
    100005 3 tcp 20048 mountd
    100003 3 tcp 2049 nfs
    100227 3 tcp 2049 nfs_acl
    100021 1 udp 38178 nlockmgr
    100021 3 udp 38178 nlockmgr
    100021 4 udp 38178 nlockmgr
    100021 1 tcp 37227 nlockmgr
    100021 3 tcp 37227 nlockmgr
    100021 4 tcp 37227 nlockmgr

    I deployed the image using a VM on Proxmox and it worked, but with a phisical PC it gives the error like above. All are on the same VLAN.

  • Error during computer registration

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    361 Views
    No one has replied
  • cannot register host since update

    Solved FOG Problems
    3
    0 Votes
    3 Posts
    809 Views
    P

    @Tom-Elliott awesome, thank you!

  • 1 Votes
    51 Posts
    38k Views
    V

    Hello everyone,

    I am facing an issue with image capturing after performing an upgrade on my FOG server from 1.5.10 to 1.5.10.1886. Before the update, everything worked fine for me. The images were stored directly on the Synology NAS.

    My Setup:

    FOG Server: IP 192.168.10.220 (Debian 13) Storage: External Synology NAS with multiple virtual IPs (192.168.109.220 and 192.168.110.220). Storage Configuration: The Synology NAS is configured in FOG web UI as the Master Node for its storage group. The local Default storage node is NOT the master. Clients: Multiple clients on different subnets (e.g., 192.168.109.23 and 192.168.110.23).

    The Problem:
    The Partclone phase finishes successfully on the client machine. The image files are correctly uploaded via NFS directly to the Synology NAS into the /images/dev/[MAC_ADDRESS] folder.

    However, right after Partclone reaches 100%, the task gets stuck in the FOG Web UI (at around 70%), and the client screen shows the following PHP FTP error:

    Error returned: Type: 2, File: /var/www/html/fog/lib/fog/fogftp.class.php, Line: 709, Message: ftp_put(/images/dev/[MAC]): Failed to open stream: No such file or directory, Host: 192.168.110.220, Username: foguser

    What I have verified:

    I tested the FTP connection manually via CMD/PowerShell from a PC using the same foguser credentials. I am able to log in, mkdir, rename, and rmdir inside the /images and /images/dev directories on the NAS without any permission errors. If I move and rename the MAC folder manually inside Synology File Station from /images/dev/[MAC] to /images/[Image_Name], the image works fine. This setup worked flawlessly before the FOG server upgrade. The /images directory is NOT mounted locally on the FOG server itself (and never had to be). Verified FTP username and password on NAS and FOG. It's same.

    It seems that fogftp.class.php is incorrectly triggering ftp_put (trying to read a local file from the FOG server) instead of doing a remote ftp_rename directly on the NAS storage node.

    Has anyone encountered this bug after a recent upgrade, or is there a specific setting in the new version that I missed?

    Thank you for any help.

    Storage Node for NAS
    Storage Node for NAS.png

    Error on PC
    U10-PC13.jpg

  • Building FOS to include Wi-Fi support?

    Unsolved FOG Problems
    4
    0 Votes
    4 Posts
    2k Views
    T

    @george1421

    I’m interested in creating a working WiFi or USB network solution for device registration in FOG.

    I have approximately 160 laptops to add to FOG that do not have a built-in Ethernet port. I’ve already tried using USB network adapters, but this has introduced extra complexity. In addition, a second laptop I tested is not consistently able to boot from the USB NIC, even though it worked on the first device.

    To clarify, I am not attempting to image over WiFi. I only need network connectivity in the FOG environment so I can register each device and capture the correct MAC address. I will then image via Clonezilla using a USB-C NVME, which takes under three minutes to image each device

    If possible, I would appreciate guidance on modifying the kernel so I can include future WiFi drivers.

    I’ve attached the relevant information I believe you will need.
    WhatsApp Image 2026-06-26 at 12.51.26.jpeg

  • FOG Resize Fails on Windows 11 Build 28000.2269

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    364 Views
    No one has replied
  • Choosing Which Storage Node To Deploy Images From

    General
    3
    0 Votes
    3 Posts
    844 Views
    J

    @Tom-Elliott

    Ah man that’s exactly what I needed. Thanks so much sir!

  • Failure to complete Multi-Cast

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    355 Views
    No one has replied
  • Deploy 512 Image to 4K Drive - Sector Size Issue

    Hardware Compatibility
    4
    0 Votes
    4 Posts
    997 Views
    Tom ElliottT

    @JCS-RVK Understood and apologies there’s not a good method around this.

    Thanks for at least understanding. I wonder if some of the similar types of issues we’ve seen historically have a similar style of problem that I’m only coming to realize now-a-days.