• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. Popular
    Log in to post
    • All Time
    • Day
    • Week
    • Month
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All categories
    • B

      Fog is indexing only sdb

      Watching Ignoring Scheduled Pinned Locked Moved General Problems
      11
      0 Votes
      11 Posts
      2k Views
      Tom ElliottT

      @Bearr1976 If you use the latest init, the primary drive is supposed to be /dev/sda automatically (technically the first in alphabetical order) so by setting Host Primary Disk, may be forcing it to use that specific drive. In your case, if you’re trying to capture multiple disks, I suspect you would need the Host Primary Disk unset. If there’s something else not working right after unsetting please let me know and I’ll try to see what I can do to replicate the issue.

    • rogalskijR

      Kernel Versions blank

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved FOG Problems
      12
      0 Votes
      12 Posts
      819 Views
      R

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

    • M

      Installing fog on Rocky Linux 9.6

      Watching Ignoring Scheduled Pinned Locked Moved Solved FOG Problems
      8
      0 Votes
      8 Posts
      710 Views
      M

      @ rodluz

      Okay - So I got FOG working on my rocky 9.6 set up with a few caveats.

      I had to do some work to get tftp and pxe to work correctly.

      created a symlink from /var/lib/tftpboot > /tftpboot

      enabled and started the tftp service manually - systemctl enable tftp & systemctl start tftp

      then created a file in /etc/systemd/system/tftp.socket.d/override.conf (after making a director /tftp.socket.d and giving that file permissions) with the following code:

      [Socket]
      ListenDatagram=69

      [Service]
      ExecStart=
      ExecStart=/usr/sbn/in.tftpf --foreground --secure /tftpboot

      reloading the systemd service daemon - “systemctl daemon-reload” & “systemctl restart tftp.socket”

      The server would then pxeboot at least BIOS at this point.

      The Web UI currently seems to have php conflicts. I installed php-8.0.30-3 and the modules connected to this when installing the server. The web UI has a quirk on the FOG configuration page when you have a button for DefaultMember FOG Version: () it is not printing the version of FOG or the versions of bzimage or init.xz files and in checking using curl http://ip-address-of-server/fog/service/getversion.php - i ony see - 1.5.10.1698

      here is a picture of the error

      error.png

    • A

      Using if/then during PXE boot for proper boot loader

      Watching Ignoring Scheduled Pinned Locked Moved General
      7
      0 Votes
      7 Posts
      3k Views
      A

      @george1421 I see now and you’re right as my clients are all legacy boot/BIOS boot non UEFI and would not benefit from the client-arch examination.

      I’ve already declarations set for each host in my dhcpd.conf file in terms if MAC to IP and so adding another field of filename “some boot loader file” won’t be impossible.

      Thanks you for this exercise as I’ve learned some very important things here.

    • C

      Log Viewer not working after update

      Watching Ignoring Scheduled Pinned Locked Moved Solved Bug Reports
      7
      0 Votes
      7 Posts
      2k Views
      C

      @Tom-Elliott Yes this did work. Thank you for your quick action.

    • R

      Group Export

      Watching Ignoring Scheduled Pinned Locked Moved Solved FOG Problems
      7
      0 Votes
      7 Posts
      6k Views
      R

      Yes, was able to confirm it is working. Thank you for your help!

    • F

      [Problem] Storage Node connection issues after updating to FOG 1.6

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved Bug Reports
      5
      0 Votes
      5 Posts
      652 Views
      F

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

    • jfernandzJ

      Upgrading FOG

      Watching Ignoring Scheduled Pinned Locked Moved General Problems
      5
      0 Votes
      5 Posts
      71 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
    • S

      Resizable Linux

      Watching Ignoring Scheduled Pinned Locked Moved General Problems
      5
      0 Votes
      5 Posts
      230 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

    • C

      Help Setting up replication across storage groups

      Watching Ignoring Scheduled Pinned Locked Moved Solved FOG Problems
      5
      0 Votes
      5 Posts
      711 Views
      C

      @Tom-Elliott I figured it out.

      I was getting confused by the similar language between the installation process and storage group setup.

      A normal installation is just a fog storage node that has a web server and UI on it. A FOG network requires atleast one to work. However a Storage node can be set as the master of a storage group no matter the installation type.

      My problem was that because the storage node in the “Bris” storage group did not have a master node setup, the default group could not replicate any images or snapins over. All storage groups must have a master for it to work effectively.

      @Tom-Elliott feel free to clarify any of the above rant.

    • F

      Stuck at resizing after successful capture.

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved FOG Problems
      5
      0 Votes
      5 Posts
      3k Views
      Tom ElliottT

      @Fog_Newb Yep, it’s as I suspected:

      The Line:

      Subsystem sftp /usr/lib/openssh/sftp-server

      should be changed to:

      Subsystem sftp internal-sftp

      Then restart ssh services: systemctl restart sshd

      Then your Storage Node testing should succeed!

    • S

      FOG Multicast on different VLANs

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved FOG Problems
      4
      0 Votes
      4 Posts
      69 Views
      george1421G

      @sega said in FOG Multicast on different VLANs:

      So some people already tried it?

      Yes and so have I. You would need some way to dynamically change the network adapter defined in the global FOG settings to change the network adapter. You might also need to change a file called /tftpboot/default.ipxe to point to different interfaces. You might be able to get around this by setting up multiple tftp servers on the fog server, where each tftp server bound to a different interface and had a different home directory, that would be more of a long term change. And then you need to work out a way to update the imaging network interface in the fog settings depending on what interface you wanted to image using. There may be more crafty ways about doing this, but this is just off the top of my head.

    • jfernandzJ

      Proper way to reinstall the FOG Client

      Watching Ignoring Scheduled Pinned Locked Moved General Problems
      4
      0 Votes
      4 Posts
      55 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 ! 😄

    • E

      Report Download

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved FOG Problems
      5
      0 Votes
      5 Posts
      261 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.

    • F

      Wrong target device

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved FOG Problems
      4
      0 Votes
      4 Posts
      62 Views
      Tom ElliottT

      @Floppyrub The code exists in the FOS system (when you boot a machine for a task, not on your server)

    • M

      rocky linux 9.6 quirks & php 8

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved Bug Reports
      4
      0 Votes
      4 Posts
      129 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.

    • P

      Dell OptiPlex 3000 Thin Client

      Watching Ignoring Scheduled Pinned Locked Moved Unsolved Hardware Compatibility
      5
      0 Votes
      5 Posts
      181 Views
      george1421G

      @phant0mbot said in Dell OptiPlex 3000 Thin Client:

      have tried both SAN and GRUB exit options

      boot loader == snponly.efi

      These are in contradiction with each other. SAN boot and Grub are bios boot methods. snponly.efi is a uefi boot loader. Since you are getting into the fog iPXE menu we can assume the hardware IS uefi based since it is booting snp.efi. Try a uefi exit mode of rEFInd (refind) to see if that will boot from the hard drive. The default value can be set globally in the fog configuration->fog settings page. Don’t force a bios attempted boot from a uefi booted computer, that never works.

    • C

      Multicasting Stuck on Partclone Screen

      Watching Ignoring Scheduled Pinned Locked Moved Solved FOG Problems
      4
      0 Votes
      4 Posts
      2k Views
      C

      My RP address was not pointing to my FOG server 🤦

      Once this was adjusted, multicast is functional. Definitely a good reminder to start small.

    • C

      Subnet Groups Plugin | Dynamic Groups Not Working

      Watching Ignoring Scheduled Pinned Locked Moved General Problems
      3
      0 Votes
      3 Posts
      116 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); } }
    • F

      IPXE.EFI does not load USB network adapters

      Watching Ignoring Scheduled Pinned Locked Moved Hardware Compatibility
      3
      0 Votes
      3 Posts
      67 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
    • 1
    • 2
    • 3
    • 1 / 3