• WS2K25 DHCP_ACK Failure

    Unsolved Windows Problems
    1
    0 Votes
    1 Posts
    81 Views
    No one has replied
  • cron-style scheduled task starts on UTC, not local time

    Solved FOG Problems
    10
    0 Votes
    10 Posts
    628 Views
    Tom ElliottT

    @RAThomas I wont make you do a PR. I already pushed it if you wanted to use the the pushed code. šŸ™‚ thanks for testing and letting us all know!

  • Wrong target device

    Unsolved FOG Problems
    9
    0 Votes
    9 Posts
    686 Views
    F

    Thank you very much for the detailed explanation of the problem and for adjusting the code.
    I’m not on the dev branch yet, but I’ll make sure to switch and use debug mode to trace the function.
    It’s likely that the tip about using the serial number as the Primary Host Disk will need to be incorporated into my process.

    At the moment, I have a large number of Windows 11 reinstallations to handle due to the end of support, so it will probably be a few weeks before I have time for this.
    I’ll post an update in this thread once I get to it.

  • FOG - Label Print....

    Unsolved FOG Problems
    4
    0 Votes
    4 Posts
    418 Views
    E

    @george1421 I would need help with where I can edit and which files to add a script for quick inventory.

  • Capone PXE Menu Item Missing

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    243 Views
    No one has replied
  • 0 Votes
    1 Posts
    346 Views
    No one has replied
  • [Problem] Storage Node connection issues after updating to FOG 1.6

    Unsolved Bug Reports
    5
    0 Votes
    5 Posts
    903 Views
    F

    @Tom-Elliott Thanks, going to switch back to 1.6 very soon.

  • FOG Multicast Manager creating zombie processes. How to fix?

    Unsolved Linux Problems
    1
    0 Votes
    1 Posts
    77 Views
    No one has replied
  • Uploading an image to a host that has a stored Windows 11 Pro key

    Unsolved FOG Problems
    1
    0 Votes
    1 Posts
    228 Views
    No one has replied
  • Proper way to reinstall the FOG Client

    General Problems
    4
    0 Votes
    4 Posts
    311 Views
    jfernandzJ

    @Tom-Elliott oh, sorry, I didn’t notice this big yellow button in the General tab

    48c096ca-5f09-42d1-84dc-647e5bc6e22d-image.png

    And I can see the same button for the group, so I guess I can handle this. Thank you very much @Tom-Elliott ! šŸ˜„

  • Upgrading FOG

    General Problems
    5
    0 Votes
    5 Posts
    373 Views
    jfernandzJ

    @Tom-Elliott

    Well, the errors I can see in the /var/log/apache2/other_vhosts_access.log are:

    172.120.1.253:443 172.120.1.195 - - [09/Oct/2025:18:47:03 +0800] "POST /fog/service/Pre_Stage1.php HTTP/1.1" 500 3891 "-" "curl/8.14.1" 172.120.1.253:443 172.120.1.195 - - [09/Oct/2025:18:47:08 +0800] "POST /fog/service/Pre_Stage1.php HTTP/1.1" 500 3891 "-" "curl/8.14.1" 172.120.1.253:443 172.120.1.195 - - [09/Oct/2025:18:47:13 +0800] "POST /fog/service/Pre_Stage1.php HTTP/1.1" 500 3891 "-" "curl/8.14.1" 172.120.1.253:443 172.120.1.195 - - [09/Oct/2025:18:47:18 +0800] "POST /fog/service/Pre_Stage1.php HTTP/1.1" 500 3891 "-" "curl/8.14.1"

    Regarding the /var/log/apache2/error.log are:

    [Thu Oct 09 18:48:29.019424 2025] [proxy_fcgi:error] [pid 1662:tid 1662] [client 172.120.1.195:59922] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught ValueError: min(): Argument #1 ($value) must contain at least one element in /var/www/html/fog/lib/fog/image.class.php:396\nStack trace:\n#0 /var/www/html/fog/lib/fog/image.class.php(396): min()\n#1 /var/www/html/fog/lib/reg-task/taskqueue.class.php(112): Image->getStorageGroup()\n#2 /var/www/html/fog/service/Pre_Stage1.php(24): TaskQueue->checkIn()\n#3 {main}\n thrown in /var/www/html/fog/lib/fog/image.class.php on line 396' [Thu Oct 09 18:48:34.062774 2025] [proxy_fcgi:error] [pid 790:tid 790] [client 172.120.1.195:52762] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught ValueError: min(): Argument #1 ($value) must contain at least one element in /var/www/html/fog/lib/fog/image.class.php:396\nStack trace:\n#0 /var/www/html/fog/lib/fog/image.class.php(396): min()\n#1 /var/www/html/fog/lib/reg-task/taskqueue.class.php(112): Image->getStorageGroup()\n#2 /var/www/html/fog/service/Pre_Stage1.php(24): TaskQueue->checkIn()\n#3 {main}\n thrown in /var/www/html/fog/lib/fog/image.class.php on line 396' [Thu Oct 09 18:48:39.106621 2025] [proxy_fcgi:error] [pid 1461:tid 1461] [client 172.120.1.195:52776] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught ValueError: min(): Argument #1 ($value) must contain at least one element in /var/www/html/fog/lib/fog/image.class.php:396\nStack trace:\n#0 /var/www/html/fog/lib/fog/image.class.php(396): min()\n#1 /var/www/html/fog/lib/reg-task/taskqueue.class.php(112): Image->getStorageGroup()\n#2 /var/www/html/fog/service/Pre_Stage1.php(24): TaskQueue->checkIn()\n#3 {main}\n thrown in /var/www/html/fog/lib/fog/image.class.php on line 396'

    The php version the server is running is:

    # php --version PHP 8.2.29 (cli) (built: Jul 3 2025 16:16:05) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.29, Copyright (c) Zend Technologies with Zend OPcache v8.2.29, Copyright (c), by Zend Technologies
  • Report Download

    Unsolved FOG Problems
    5
    0 Votes
    5 Posts
    573 Views
    Tom ElliottT

    @ecoele The fact that dev-branch is in 1700’s this informatino seems to indicate your’e still running the latest stable.

    Once you switch to dev-branch you need to pull in the changes:

    cd /your/path/to/fogproject git checkout dev-branch git pull cd bin sudo ./installfog.sh -y

    Should get you installed.

    You may also need to (from the browser) do a ā€œCTRL + SHIFT + Rā€ to do whats called a hard refresh in the browser to get all the latest/new javascript information.

  • Resizable Linux

    General Problems
    5
    0 Votes
    5 Posts
    367 Views
    S

    @Tom-Elliott Hi, I finally made it. Here is a screenshot of the error, installing clone Linux, from 512 gb m2 ssd, to 500 gb m2 ssd. And an error is caused with the sections
    5576202d-a566-4124-9c8f-378d29cac505-image.png
    b64f740c-5e04-48db-b049-5630abcc1e0a-image.png

  • Subnet Groups Plugin | Dynamic Groups Not Working

    General Problems
    3
    0 Votes
    3 Posts
    265 Views
    C

    @Tom-Elliott, disregard this request.

    I edited ā€˜addsubnetgroup.hook.php’ which simplified getting the client IP and adding the host to the respective group. I understand this also removes certain checks that were in place but for my environment it is now working as intended.

    Old ā€˜addSubnetgroupHost’ function:

    public function addSubnetgroupHost($arguments) { if (!in_array($this->node, (array)self::$pluginsinstalled)) { return; } $Host = $arguments['Host']; $mac = $Host->get('mac'); if (!isset($mac)) { return; } // Setup for tests $name = $ipn = $Host->get('name'); $ip = $Host->get('ip'); $ipr = self::resolveHostname($name); // Perform all tests. $ip1t = filter_var($ip, FILTER_VALIDATE_IP); $ip2t = filter_var($ipn, FILTER_VALIDATE_IP); $ip3t = filter_var($ipr, FILTER_VALIDATE_IP); // If resolve hostname returns a valid IP, set IP appropriately. // Otherwise, if the name is valid, use it. // Otherwise, return if base $ip is false. if (false !== $ip3t) { $ip = $ipr; } elseif (false !== $ip2t) { $ip = $ipn; } elseif (false === $ip1t) { return; } // Now list our subnet groups. Route::listem('subnetgroup'); $SNGroups = json_decode(Route::getData()); foreach ($SNGroups->subnetgroups as &$SNGroup) { if (in_array($SNGroup->groupID, $Host->get('groups'))) { $Host->removeGroup($SNGroup->groupID)->save(); } $subnetList = str_replace(' ', '', $SNGroup->subnets); $subnets = explode(',', $subnetList); foreach ($subnets as &$subnet) { if ($this->_ipCIDRCheck($ip, $subnet)) { $Host->addGroup($SNGroup->groupID)->save(); unset($subnet); continue 2; } unset($subnet); } unset($SNGroup); } }

    New code:

    public function addSubnetgroupHost($arguments) { if (!in_array($this->node, (array)self::$pluginsinstalled)) { return; } $Host = $arguments['Host']; $mac = $Host->get('mac'); if (!isset($mac)) { return; } // Use the real source IP from the request $ip = $_SERVER['REMOTE_ADDR']; // Now list our subnet groups. Route::listem('subnetgroup'); $SNGroups = json_decode(Route::getData()); foreach ($SNGroups->subnetgroups as &$SNGroup) { if (in_array($SNGroup->groupID, $Host->get('groups'))) { $Host->removeGroup($SNGroup->groupID)->save(); } $subnetList = str_replace(' ', '', $SNGroup->subnets); $subnets = explode(',', $subnetList); foreach ($subnets as &$subnet) { if ($this->_ipCIDRCheck($ip, $subnet)) { $Host->addGroup($SNGroup->groupID)->save(); unset($subnet); continue 2; } unset($subnet); } unset($SNGroup); } }
  • Fog iPXE Menu no input

    Unsolved FOG Problems
    29
    0 Votes
    29 Posts
    13k Views
    L

    Sorry
    with ipxe 1.21.1+ (gc30b7) it works but not with the latest version

    @Lorenzo said in Fog iPXE Menu no input:

    @Tom-Elliott
    Hi
    using the new version of ipxe build I can confirm that the ipxe menu works with the keyboard.
    The problem is that chainloading grub, the keyboard doesn’t work.
    With ipxe 1.0.0 it works. So by now we keep using the old version.

    Lorenzo

  • Kernel Versions blank

    Unsolved FOG Problems
    12
    0 Votes
    12 Posts
    1k Views
    R

    @rogalskij Yes, I had read it and tried, but FQDN did not solve it for me…

  • IPXE.EFI does not load USB network adapters

    Hardware Compatibility
    3
    0 Votes
    3 Posts
    235 Views
    F

    Just follow these steps:
    Replace the following files (I used the default installation):

    /root/fogproject/utils/FOGiPXE/buildipxe.sh /root/ipxe/src/config/usb.h

    then fire:

    /root/fogproject/utils/FOGiPXE/buildipxe.sh

    and finally copy the files to the target folder:

    cp -r /root/fogproject/packages/ftp/* /tftpboot
  • 2 Votes
    2 Posts
    375 Views
    F

    Thank you so much, that was exactly the solution to my issue!

  • Boot PXE on iMac 14.3 (catalina)

    Unsolved Mac Problems
    1
    0 Votes
    1 Posts
    135 Views
    No one has replied
  • rocky linux 9.6 quirks & php 8

    Unsolved Bug Reports
    4
    0 Votes
    4 Posts
    355 Views
    Tom ElliottT

    @mrowand The whole point of the checkAuthAndCSRF is to prevent unauthorized access. Based on the message I’m seeing, the 403 forbidden is happening because it’s crossing origin to get the data or the CSRF token isn’t passing correctly:

    Here’s the code that validates:

    // Optional defense-in-depth: Origin/Referer check for state-changing requests public static function checkOrigin(array $allowedOrigins): void { $method = strtoupper($_SERVER['REQUEST_METHOD'] ?? 'GET'); if (!in_array($method, ['POST','PUT','PATCH','DELETE'], true)) { return; } $origin = $_SERVER['HTTP_ORIGIN'] ?? null; $referer = $_SERVER['HTTP_REFERER'] ?? null; if ($origin) { foreach ($allowedOrigins as $allowed) { if (stripos($origin, $allowed) === 0) { return; } } http_response_code(403); echo _('Forbidden (disallowed Origin)'); exit; } elseif ($referer) { foreach ($allowedOrigins as $allowed) { if (stripos($referer, $allowed) === 0) { return; } } http_response_code(403); echo _('Forbidden (disallowed Referer)'); exit; } // If neither header is present, you can decide to be strict or lenient. // Often lenient to avoid breaking weird client setups. }

    I suspect your console has more information leading to the specific error that was hit.

    ultimately the code is working as expected and there’s something in your environment causing the issue. Now, to be fair, you said you installed Stable, and Dev-branch has a fix of which I admit I missed.

    If you’re willing/able to install the dev-branch I suspect you’ll see this is working much better.